Hello. Welcome to the IoT Developer Show. I'm Martin Kronberg. In this series, we take a deep dive into the OpenVINO Toolkit. This time, we discuss got hardware for running your computer vision applications, the IEI Tank AIoT Developer Kit, and the UP Squared AI Vision Development Kit. Both of these kits have the ability to run the OpenVINO Toolkit right out of the box.
This is Intel's professional grade IEI Tank AIoT Developer Kit. Let's take a look at both the hardware and software that's included. The first thing that you might notice are these massive heat sinks at the front of the unit. This is due to the fact that the system is designed to run completely fanless.
A fanless design, when paired with a ruggedized case, means that the system is perfect for industrial deployments where dust can wreak havoc on fan-cooled systems. Industrial deployments can also have somewhat extreme ambient temperatures, and this kit is rated to operate between negative 20 to 60 degrees Celsius, or negative 4 to 140 degrees Fahrenheit, provided there's enough airflow. The heat sink can also be used as a great backup instrument for your future synth band.
Around the other side is another interesting feature of the Kit-- the I/O interfaces. In addition to the standard USB, VGA, and HTMI outputs, we have a bank of serial ports. So that's a lot of connectivity to additional protocols right out of the box. We have 2 gigabit ethernet ports with a power over ethernet card behind them. And this means that you can drive a pair of ethernet cameras from just these two ports.
Now let's take a look at what's inside. The kit comes with either a 6th Generation Intel Core i5 Processor, or an Intel Core i7 Processor, 8 gigabytes of DDR4 RAM, and a one terabyte hard drive-- more than enough power to handle multiple video streams if you want to run this kit as an AI Vision processing hub.
Overall, this is a great piece of hardware to develop and deploy professional industrial grade AI Vision applications. In addition to the hardware itself, the kit also comes preloaded with all the software that you need. The kit has the latest version of the OpenVINO Toolkit at the time of manufacture, so you should check for software updates before beginning development. This developer kit also comes with Intel System Studio 2018, which is prepacked with VTune, so you can optimize your applications.
Let's take a quick look at how you can use these tools to find hotspots in your application and understand the process load of each neural network layer. Here is Intel VTune Amplifier. I have just run an analysis on an object detection application of a 30-second video using the MobileNet SSD model. I chose the advanced hotspots analysis type in order to identify which parts of my code are taking up the most processing time. Let's take a look at what we found.
Here we see three main categories-- OpenCV, the Inference Engine, and Unknown, along with the CPU time of each. We can expand each of these to get more info. Under Unknown, we see that there are a lot of various functions. This one, for instance, deals with accessing the video encoder FFMpeg Library. In OpenCV, we can see CPU time broken down by various functions, like resize and video capture.
And under Inference Engine is the most interesting feature to me of this tool. Here you can see the CPU time of each layer of your neural network, as well as the details about the subprocesses of that layer. Finally, down here, we see a timeline of CPU load across all threads-- really useful to spot bottlenecks. With such an in-depth analysis of CPU utilization, you can really begin to optimize your applications.
Intel has also partnered with UP to release the UP Squared AI Vision Development Kit. As you can see, it's much smaller than the IEI Tank AIoT Developer Kit and really meant for a smaller workload. It has all the same software stack installed on it, but with somewhat lower specs.
The kit is powered by an Intel Atom x7 processor CPU with an onboard HD505 GPU. This combination gives you a lot of performance in a low power envelope. The kit also has 4 gigabytes of DDR4 RAM and 64 gigabytes of eMMC storage on board. It also comes with an HD USB camera.
And finally, on top, you can see a PCIe expansion slot that has a card installed. This is the Intel Movidius Myriad 2 VPU, or Visual Processing Unit. This is an accelerator specifically designed to run vision inference models in a power constrained environment. So this kit has three different processing units-- a CPU, a GPU, and a VPU.
Leveraging multiple types of processing units in a single application is called heterogeneous computing. It's a key method in creating the most efficient runtime environment, and it's all about finding a balance between flexibility and performance per watt of your processing units. Using this kit and the OpenVINO Toolkit, you can easily develop at heterogeneous workflow for your AI vision applications. Let me show you a quick example of how easy it is to set up a basic heterogeneous execution.
Here I am running the interactive face detection sample. I'm loading multiple models, and I'm specifying what processor to run each on with a -d flag. Here I am using an onboard GPU for three of the models and a CPU for one. It's really simple to hand off various workloads to different processing units, and can lead to increased overall performance of your application.
So there you have it. Two kits that offer a great solution for both entry level and industrial IoT application development. Thank you so much for watching. Follow the links to learn more about the kits, and I'll see you next time, when I'm going to talk about inference.