Don’t Fear the GPU. ADLINK and NVIDIA are here to help you!
Maximizing the operational efficiency of a system is a normal goal for most developers. However, in some instances, we face the task of developing these systems around newer GPUs, like those offered by NVIDIA. While the task might look daunting the first time you look at it, a deeper dive reveals that there’s a fair amount of information available to ease any concerns.
The first step in easing design pain is to use a software development kit (SDK), which is one of many tools that’s typically provided by a GPU supplier. But what do you do if your requirements include features not included within the SDK? For example, helping with the artificial intelligence (AI) side of a hardware design is right within NVIDIA’s wheelhouse with ample information available. But what happens if you need to adapt the hardware for a specific application?
Say, for example, an application requires systems that are connected to a large number of cameras all feeding into an AI platform for image detection within airports or train stations. When multiple cameras are connected, there is a vast amount of data that requires fast processing and each camera itself is a potential vulnerability (security) point that must be locked down.
Know Your End Goal
So, what do you do? Focus on the end goal. I know it seems obvious but I have worked with many customers where this gets lost in the process. The key question you need to ask is, “what is the desired outcome?” or, “what is the desired action we want as a result?” And continue to revisit it. Once this question is answered, then you can work backwards in design to produce the data that will result in the specific outcome or action desired. Without a consistent answer or revisit to this question throughout, you run the risk of re-design(s) later on, and we all know that means extra effort and cost.
So, if you want to do object detection for instance and the end goal is for personnel to be alerted when something is positioned improperly, an efficient way to do this is to use machine vision to alert an administrator versus cramming monitors into a video room that are watched manually be a security team.
Here at ADLINK, we handle this type of complex data-capture process with tools like NVIDIA’s DeepStream SDK. DeepStream SDK can take the video and write it to a disk which assists with the data collection needed for deep learning.
You can also find help through NVIDIA’s Transfer Learning Toolkit. This toolkit allows you to create a deployable process much faster than if you were to start from the very beginning. The result could/should be a higher return on investment.
To help developers, we’ve compiled a set of uses cases that create a starting point with optimized domain-specific models. In some instances, models come from NVIDIA that include public safety and smart cities. If a model is not readily available, the developer can start with existing models similar to the use case and make changes as necessary.
To achieve a specific action or outcome, the unstructured data is filtered through a processing model like DeepStream, which in turn, produces more structured data. Later, the information that has been secured will travel to other applications to perform its function.
This was an intentional teaser- join my on-demand session at #GTC21 for more! I’ll be going in-depth on NVIDIA’s DeepStream SDK and Transfer Learning Tooklit, register here.