Qualcomm Zeroth NPU (Image source: Qualcomm)
Qualcomm has been talking about their Zeroth machine learning platform for quite some time. It has morphed from a hardware NPU (neural processing unit) into a software design kit (SDK) that uses Qualcomm’s Snapdragon processors and their heterogeneous processing capabilities. With the Snapdragon 820, Qualcomm is introducing the Symphony system scheduler which helps the processor find and use the right core on the SoC to accomplish the task as quickly as possible with as little power as possible. This ties into Zeroth, because it enables a lot of very intelligent and continuous processing without draining too much power. Obviously, there’s value in having a dedicated neural processor for machine learning tasks, but I believe there aren’t enough applications or die space to allow for that just yet.
Qualcomm wants Snapdragon to be in more than phones
Qualcomm’s approach to the Snapdragon 820 is to position it for more than just smartphone use. Sure, the majority of Snapdragon 820s shipped today are going to be in phones, but Qualcomm is pivoting away from only being a smartphone vendor. They want to use their Snapdragon processors for things like automotive, drones, security, virtual reality (VR) and augmented reality (AR) headsets and almost any other visual application that requires efficient, high performance processing. The Snapdragon 820 is positioned as one of the most powerful processors in the mobile space and should be capable of artificial intelligence (AI) based on machine learning and deep neural networks. In fact, Qualcomm is already using Zeroth intelligence in their Smart Protect platform with antivirus partners Avast, AVG and Lookout.
Zeroth SDK enables fast machine learning online and offline
The big announcement that Qualcomm made this week was around the Zeroth SDK which enables developers to use Qualcomm’s hardware capabilities for machine learning. More specifically, they are enabling a multitude of Snapdragon-based devices to perform cognitive computing functions that are learned based on pre-trained datasets. To enable real time offline cognitive computing that uses machine learning you need a lot of computing power and low latency. Qualcomm’s Zeroth SDK allows for different device makers or application developers to use the machine learning capabilities of processors like the Snapdragon 820 to accomplish whichever tasks they need.
Zeroth SDK expands Snapdragon’s reach beyond phones
Because Qualcomm is trying to branch out the capabilities of their Snapdragon processors, the Zeroth SDK couldn’t have come at a better time. Having an SDK that enables the company’s processors to do machine learning enables their product portfolio to expand and capabilities to broaden. They no longer have to play in the traditional spaces where smartphone chips currently exist, and they add a programmable element to their processors that wasn’t necessarily there before. I suspect that we will see this being most aggressively used in imaging, be it in smartphones, cameras or even drones. There will also be similar applications in automotive that use computer vision and machine intelligence to deliver a smarter self-driving vehicle. Qualcomm has even established a relationship with NAUTO an autonomous driving startup to use Zeroth in their technology.
However, the Zeroth platform is not limited to only offline functionalities. By being on a Snapdragon 820, the Zeroth platform enables continual updates and improvements to the training provided to the different machine intelligence applications. We could see smart security cameras that can instantly identify suspicious behavior without a human eye ever seeing the footage; this includes things like theft or more serious crime like terrorism. The applications of the Zeroth SDK are pretty broad and will only be limited to where you can squeeze a Snapdragon processor and enough memory to store the data needed to perform machine intelligence tasks.
Zeroth SDK supports existing frameworks, even from competitors
Currently, Qualcomm’s Snapdragon Neural Processing Engine supports two major deep learning model frameworks, Caffe and CudaConvNet, which are the two most popular frameworks being used right now. It will be interesting to see what other deep learning frameworks they will support in the future, but right now one of those frameworks is made by NVIDIA, one of Qualcomm’s competitors in the embedded computing space. NVIDIA no longer competes with Qualcomm in the smartphone or tablet space, but they are still a competitor in technologies like drones, automotive and other embedded platforms that require lots of visual processing at fairly low power. Qualcomm’s support for CudaConvNet indicates that their goal is not to compete with NVIDIA in the deep learning model framework business, but rather in their efficiency and performance at the endpoint.
Zeroth SDK gives Snapdragon more adaptability
Because the Zeroth platform is so new, it still remains to be seen whether or not we will see significant uptake of machine learning in the aforementioned categories any time soon. There are a lot of very promising applications for machine learning in a lot of different verticals, but until we start to see some seriously strong applications of the technology, it will continue to be a mostly theoretical application. I believe that machine intelligence is something that will be confined to minor augmented functions in smartphones in the short term until someone creates devices that are purposely designed to use machine intelligence.