Các bước nhanh chóng để giảm thời gian tải mô hình trên Bộ xử lý thị giác (VPU)
- Thời gian tải mô hình lên Bộ xử lý thị giác (VPU) lâu hơn tải mô hình trên CPU.
- Mã sử dụng Python API: net = ie.read_network(model=path_to_xml, weights=path_to_bin) exec_net = ie.load_network(network=net, device_name="CPU") res = exec_net.infer(inputs=data)
Để giảm thời gian tải, hãy tải mô hình từ Blob, là một biểu đồ phân tích cú pháp, để bỏ qua giai đoạn phân tích cú pháp mô hình.
- Tạo trước tệp Blob trước khi tải bằng một phương pháp sau:
- Tạo Blob bằng công cụ myriad_compile trong dòng lệnh:
- Công cụ biên dịch sẵn có sẵn trong Bản phân phối Intel® của bộ dụng cụ OpenVINO™. Bạn cũng có thể sao chép repo bộ công cụ OpenVINO mã nguồn mở và xây dựng nó.
- Tạo ra Blob.
Trong path inference-engine/bin/intel64/Release, thực hiện lệnh như sau: ./myriad_compile -m <model_name>.xml -o <output filename>
- Tạo Blob bằng công cụ myriad_compile trong dòng lệnh:
- Nhập Blob trong mã của bạn bằng API Inference Engine Core: executable_network = ie.ImportNetwork(“model_name.blob”, device, config)
Có hai quy trình nội bộ khi tải một mô hình trên VPU:
- Biểu đồ phân tích cú pháp
- Phân bổ đồ thị
Trong quá trình tải, các biểu đồ VPU được phân tích cú pháp được gửi đến phần cứng, từng giai đoạn, bằng xlink từ máy chủ.
Tải mô hình từ blob có thể giảm rất nhiều thời gian cho một số mô hình, nhưng nó có thể không hoạt động cho tất cả các mô hình.
Bên cạnh kích thước mô hình, thời gian tải phụ thuộc vào loại lớp, kích thước dữ liệu đầu vào, v.v.
Plugin HDDL hiệu quả hơn plugin MYRIAD khi tải mô hình từ Blob.
Thực hiện theo các bước sau để bật plugin HDDL thay vì plugin MYRIAD trên Thanh Tính toán Nơ-ron Intel® 2:
- Đặt autoboot_settings:abort_if_hw_reset_failed to false in $HDDL_INSTALL_DIR/config/hddl_autoboot.config.
- Đặt autoboot_settings:total_device_num to 1.
- Bắt đầu hddldaemon.