Tăng tốc phần cứng bằng LiteRT

Các thiết bị di động và thiết bị biên hiện đại có Bộ xử lý đồ hoạ (GPU) và Bộ xử lý thần kinh (NPU) chuyên dụng có khả năng tăng tốc các mô hình AI lên đến 25 lần so với CPU, đồng thời giảm mức tiêu thụ điện năng lên đến 5 lần.

LiteRT đơn giản hoá quyền truy cập vào những silicon chuyên dụng này thông qua một ngăn xếp tăng tốc phần cứng hợp nhất. Thay vì quản lý các SDK phân mảnh, dành riêng cho nhà cung cấp hoặc các API phần cứng phức tạp, LiteRT cung cấp một CompiledModel API tinh giản giúp trừu tượng hoá sự phức tạp của việc tối ưu hoá mô hình, quản lý bộ nhớ và điều phối phần cứng.

Các loại bộ tăng tốc

LiteRT cung cấp một giao diện hợp nhất để thực thi các mô hình trên nhiều phần phụ trợ phần cứng. Bằng cách tận dụng API CompiledModel, bạn có thể chuyển đổi liền mạch giữa các bộ tăng tốc này bằng cách sử dụng tính năng biên dịch trên thiết bị hoặc biên dịch Trước thời gian (AOT), với khả năng tự động dự phòng cho CPU đối với các hoạt động không được hỗ trợ.

  • CPU: đường dẫn thực thi mặc định bằng XNNPACK và luôn có sẵn. Phù hợp với các tác vụ chung và dự phòng cho các toán tử không được hỗ trợ.
  • GPU: được hỗ trợ bởi ML Drift, mang lại hiệu suất SOTA trên các nền tảng biên tận dụng OpenCL, WebGPU, Metal, v.v. Để biết thêm thông tin, hãy xem bài viết Tăng tốc GPU bằng LiteRT
  • NPU: hiệu suất và hiệu quả cao nhất cho các tải công việc AI. LiteRT cung cấp một quy trình phát triển hợp nhất để truy cập vào các chipset NPU chuyên dụng, bao gồm cả Google Tensor, Qualcomm và MediaTek, mà không yêu cầu tích hợp SDK dành riêng cho nhà cung cấp. Để biết thêm thông tin, hãy xem phần Tăng tốc NPU bằng LiteRT

Bạn có thể kết hợp các bộ tăng tốc này để đạt được hiệu suất cao nhất có thể khi một số thao tác phức tạp không có trên một phần cứng nhất định. Khi các trình tăng tốc cạnh tranh trong một hoạt động, LiteRT sẽ sử dụng thứ tự ưu tiên sau: NPU, GPU, CPU.