In the past few weeks we had the opportunity to test the Neural Compute Stick by Intel Movidius, a very compact inference device, particularly attracting for inference of DNNs (Deep Neural Network) in the embedded world. The device looks like a USB 3.0 dongle and integrates a Movidius Myriad 2 VPU (Visual Processing Unit) processor. The stick is declared to reach 100 GFLOPs, while maintaining consumption lower than 1W.
At Deep Vision Consulting we often receive requests for compact and efficient solutions that take full advantage of the novelties of deep learning. For this reason we decided to test the Movidius stick in a task of detecting objects on an image, using a YOLOv2 style network.
Our YOLO network was trained with Keras, and our first step was to convert it to Caffe to make it compatible with the stick SDK. Check out our highlight on this task. Second step was to compile the Caffe model for the target device, by using the SDK mvNCCompile. To succeed in this task we had to name layers equal to the top blobs. This is all what it took to run our network on the computing stick with the mvNCProfile tool provided by the SDK, which performs the network inference providing insight on memory transfer and execution times over each layer of the network. The report accurately shows the complexity in terms of GFLOPs and the execution time as imgs/s.
Of course, performance cannot be compared to GPUs of embedded devices such as TK1/TX1/TX2 by Nvidia, but this Myriad 2 and its USB stick version is a different thing, for price, power consumption and form factor. Just consider that you can use the stick on a Raspberry Pi 3, building a complete inference device with approximately 100$. And you can run multiple sticks on a single raspi too. Quite cool is also the AI Core by AAEON, a Myriad 2 extension board for the Intel UP board.
Thumb up. Cannot wait to test the bigger brother, the Myriad X.