* Update md files. Add cpp in docs/examples * Normalize all the line endings * Fix block_id in snippets * Fix utf-8 encoding * Add new folder for snippets * Fix issues with compiling code from snippets * Added conteiner iterator fix
2.5 KiB
Intel® Movidius™ VPUs Programming Guide for Use with Intel® Distribution of OpenVINO™ toolkit
See Also
- Intel® Movidius™ VPUs Setup Guide for use with the Intel® Distribution of OpenVINO™
- Intel® Vision Accelerator Design with Intel® Movidius™ VPUs HAL Configuration Guide
- Intel® Vision Accelerator Design with Intel® Movidius™ VPUs Workload Distribution User Guide
- Intel® Vision Accelerator Design with Intel® Movidius™ VPUs Scheduler User Guide
- Intel® Vision Accelerator Design with Intel® Movidius™ VPUs Errata
The following section provides information on how to distribute a model across all 8 VPUs to maximize performance.
Programming a C++ Application for the Accelerator
Declare a Structure to Track Requests
The structure should hold:
- A pointer to an inference request.
- An ID to keep track of the request.
@snippet openvino/docs/snippets/movidius-programming-guide.cpp part0
Declare a Vector of Requests
@snippet openvino/docs/snippets/movidius-programming-guide.cpp part1
Declare and initialize 2 mutex variables:
- For each request
- For when all 8 requests are done
Declare a Conditional Variable
Conditional variable indicates when at most 8 requests are done at a time.
For inference requests, use the asynchronous IE API calls:
@snippet openvino/docs/snippets/movidius-programming-guide.cpp part2
@snippet openvino/docs/snippets/movidius-programming-guide.cpp part3
Create a Lambda Function
Lambda Function enables the parsing and display of results.
Inside the Lambda body use the completion callback function:
@snippet openvino/docs/snippets/movidius-programming-guide.cpp part4