Khi nào tôi nên triển khai Dispatch API?
Bạn cần có LiteRT Dispatch API khi cần tích hợp một thời gian chạy trình tăng tốc phần cứng cụ thể vào khung LiteRT. Nó hoạt động với Trình bổ trợ trình biên dịch để thực thi các đồ thị con đã biên dịch do trình bổ trợ trình biên dịch phát ra.
API điều phối là một tập hợp các hàm do nhà cung cấp triển khai mà LiteRT sẽ dùng để quản lý một phiên với thời gian chạy của trình tăng tốc. Các hàm này bao gồm các phiên thiết bị, việc thực thi đồ thị con và việc di chuyển vùng đệm giữa máy chủ lưu trữ và thiết bị. Việc triển khai API điều phối, cùng với một trình bổ trợ trình biên dịch, cho phép LiteRT tận dụng tối đa các chức năng của một bộ tăng tốc để suy luận hiệu quả.
Bạn có thể xem thêm thông tin chi tiết về "thời điểm" triển khai API gửi (và trình bổ trợ trình biên dịch) trên trang Trình bổ trợ trình biên dịch LiteRT.
Dispatch API hoạt động như thế nào?
CompiledModel sử dụng Dispatch API bằng NpuAccelerator. Thao tác này sẽ tạo ra một DispatchDelegate theo nội bộ và chính DispatchDelegate này sẽ sử dụng Dispatch API để tương tác với NPU được nhúng trong phần cứng đang chạy.
Kiểu dữ liệu Dispatch API
Trong Dispatch API, các loại dữ liệu sau đây được dùng để thực thi một mô hình trên NPU.
DispatchDeviceContextThư viện này được dùng để quản lý các vùng đệm mà suy luận NPU sử dụng.
DispatchInvocationContextĐây là cấu trúc dữ liệu dùng để thực thi mô hình. Cách này hoạt động bằng cách liên kết bộ nhớ đầu vào và đầu ra thực tế đã đăng ký trong
DispatchDeviceContextvớiDispatchGraphđã tạo.
Dispatch APIs
Để biết định nghĩa đầy đủ về Dispatch API, vui lòng tham khảo tệp vendors/c/litert_dispatch.h.