Nvidia has been in the machine learning and AI game for a number of years now. The company launched the Jetson TX1 “Supercomputer-on-Module” back in 2015 as an embedded solution for robots, drones, and self-driving vehicles that need to do a lot of visual computing. It was the start of a whole range of “AI” products from Nvidia that has proved to be successful. Nvidia says there are hundreds of thousands of Jetson developers today. While it was a workable solution for commercial enterprises, its $599 price tag meant it was often too costly for makers, hobbyists, and amateur enthusiasts.
Today that has all changed with the launch of the Jetson Nano, a $99 AI computing development kit that opens the way to a Raspberry Pi-like revolution — this time for machine learning.
The secret sauce in Nvidia’s AI products is, of course, its GPUs. The Jetson TX1 used a 1024-GFLOP Maxwell GPU with 256 CUDA cores. The TX2 offers 1.3 TFLOPs using a 256-core Pascal GPU, and the top-of-the-range Jetson AGX Xavier breaks 10 TFLOPs with its 512-core Nvidia Volta GPU. But the Jetson AGX Xavier also breaks the $1,000 barrier as well! For the $99 Jetson Nano, Nvidia has opted for a 128 CUDA core GPU, based on the Maxwell architecture. It offers 472 GFLOPs.
Supporting the GPU is a 64-bit quad-core Arm Cortex-A57-based CPU, 4GB of RAM, a video processor — which can handle up to 4K 30fps encode or 4K 60fps decode — and support for PCIE and USB 3.0.
The video capabilities of the Jetson Nano are impressive. The idea isn’t that you can watch 4K video, but rather that the unit can process multiple video streams (think about drones with multiple cameras) for object detection, tracking, and obstacle avoidance. While 4K 60fps sounds nice, the Jetson Nano is capable of decoding eight video/camera feeds at Full HD at 30 frames per second! Once decoded the streams can be processed simultaneously by the machine learning algorithms for object tracking etc.
The Jetson Nano comes in two forms. A module — which measures just 70 x 45mm — for use in final production ready designs, and a development kit that resembles a Raspberry Pi and offers a turnkey solution for developers and enthusiasts. The former comes with 16GB of eMMC on-board storage while the latter uses a microSD card.
Unlike previous iterations of the Jetson platform, Nvidia foresees two distinct (but related) uses of the Jetson Nano. On one hand, the development kit will be useful for commercial organizations that want to build products with machine learning capabilities. The product can be designed using the development kit and then for the final product the modules is used. This is how the other Jetson boards and modules are used. The second use case is for enthusiasts and hobbyists who may never use the module version but are happy to create projects based around the development kit, much like the Raspberry Pi.
To that end, Nvidia is ready to sell both the modules and the development kits, not just via wholesale distributors, but to a wider market via more conventional outlets.
Raspberry Pi killer?
The Raspberry Pi uses a quad-core Cortex-A53 based processor and comes with a maximum of 1GB of RAM. While it can be fun for running simple Python scripts and other basic tasks, it can be painful to use as a desktop environment. The Jetson Nano has a quad-core Cortex-A57 based CPU and 4GB of RAM. That should mean it should be at least twice as fast a the Raspberry Pi for non-machine learning tasks. Plus, the extra RAM should allow it to run a desktop environment more smoothly.
On top of that, the Jetson Nano comes with 40 GPIO pins, just like the Raspberry Pi. While Nvidia doesn’t specifically specify Raspberry Pi compatibility, it does say that the Jetson Nano is “compatible out of the box with many peripherals and other add-ons.” There is also support for the Adafruit Blinka library and the Raspberry Pi Camera V2. The board boots to a full Linux desktop environment via Linux4Tegra, which is derived from Ubuntu 18.04
In other words, the Jetson Nano is just like a Raspberry Pi, but better, stronger, faster! Add all the ML goodness on top and you have a potential game changer.
To demonstrate the board’s capabilities Nvidia is launching the JetBot, an open-source AI project based on Jetson Nano. It comes complete with a bill of materials, hardware setup guide, and tutorials. The idea is that anyone with some basic Python skills should be able to build the small robot and learn all about motor control, camera image acquisition, and AI training by teaching JetBot to follow objects, avoid collisions, etc.
Multiple devices, same software
One reason why the Raspberry Pi has been so successful, compared to other Arm based Single Board Computers, is that the software is always been updated. There are way too many boards which offer initial support for a version of Linux and then the distribution is never updated or upgraded. No security fixes, no new packages, and certainly no new versions of the kernel.
Nvidia understands this and is doing a good job of keeping it software current and relevant. The Jetson TX1 supported Linux 3.10 and used Ubuntu 14.04. Over time, support for kernel 4.4 was added followed by kernel 4.9. Likewise, the base Ubuntu distribution has been upgraded from 14.04 to 16.04 and now 18.04.
This means Nvidia is offering a unified development environment across all of its Jetson boards. You could start developing a project on the Jetson Nano, but then if you need more GPU power then an upgrade to a more advanced Jetson board will incur little or no penalty from a software perspective.
It looks like the Jetson Nano could be a fantastic board. The price is good, the general computing performance is significantly better than Raspberry Pi, the machine learning features (both software and hardware) are excellent, and the potential compatibility with existing hats and sensors means hobbyists can use (and improve) existing projects. I should be getting my hands on a board very soon, so watch out for a full review here and on the Gary Explains YouTube channel.