GPUDirect: Next-Level Data Processing and Transfer for GigE Machine Vision Cameras
NVIDIA GPUDirect is a collection of technologies that enables high-speed, low-latency transfer of data from peripherals such as network interface cards (NICs) and storage devices to NVIDIA GPUs for processing. In the case of a NIC, the technology uses remote direct memory access (RDMA) to facilitate data transfer directly from the NIC into GPU memory, effectively bypassing the central processing unit (CPU) and system memory in the process. The result is an extremely low-latency, low-jitter path from a data source such as a GigE Vision camera to a processing node that is significantly more powerful and less burdened than the CPU.
With data volumes continuously increasing, so too are the requirements to efficiently move, process and store data. In imaging, sensor resolutions continue to increase, but perhaps more significantly, frame rates of sensors are increasing as well. This creates mountains of data that must be transmitted and processed in real-time, particularly when applications are mission critical. CPUs simply do not have the means to consume data at the same rate as GPUs. Data traditionally has been offloaded to GPUs through system memory which essentially bottlenecks the system and prevents the full performance advantages of GPU processing. GPUDirect solves that problem.
Leveraging GPUDirect in Industrial Imaging
As the benefits of industrial imaging continue to proliferate into new applications, the demands for higher resolutions and frame rates don’t go unnoticed. Industry has come up with several ways to transmit multi-Gigabit data rates from source (camera) to host (PC), but this only solves part of the challenge. What to do with the data once it arrives on the host presents a whole new set of obstacles for users.
With GPUDirect’s support for network adapters, a clear path for end-to-end performance becomes visible. Leveraging Ethernet-based transfer protocols such as GigE Vision, machine vision cameras such as those from Emergent Vision Technologies can supply image data at 10GigE, 25GigE, and 100GigE rates with both low-latency and low, predictable jitter — two variables that are essential to success in mission-critical and high-value applications.
Key Applications for GPUDirect
In many applications, conventional processing using system CPU and memory will suffice. That said, some industries demand more — a lot more, and readily justify the additional time, effort, and cost that go into building an optimized data acquisition and processing solution.
- Surgical navigation, image-guided intervention, and medical robotics — Real-time awareness and responsivity are vital in applications where technology is used invasively on humans. Where cameras are used to guide a surgeon or a diagnostic imaging procedure, feedback to the operator must be instantaneous. The higher the image resolution, the better the operator can see, navigate, and make decisions. High-definition (HD) cameras are often required and must run at high frame rates to ensure smooth motion. All of this must be delivered to the operator’s screen with no perceived latency. GPUDirect makes this possible.
- Sports and Live Entertainment — HD and ultra-high-definition (UHD) video is increasingly popular, coupled with fast frame rates of 120 fps and beyond to provide the viewer with an immersive, richly detailed experience. Add to this the need for many cameras to capture different angles and perspectives and to support after-play review, and the amount of data being transmitted grows substantially. GPUDirect offers an excellent solution to support video compression, processing, and archival of multiple streams simultaneously.
- Virtual/Augmented Reality — Advances in virtual reality (VR) and augmented reality (AR) are making it possible to work and collaborate at scale. Much of this ability relies on powerful GPU performance to enable virtual walkthroughs, rehearse complex medical procedures, train for military and policing operations, or collaborate with others. Multiple HD video streams must be processed in real-time to create a virtual 360-degree space and the resulting imagery is often overlayed with other environmental variables. These demands would overwhelm most CPUs and are ideally suited to GPU processing.
- Automated Optical Inspection – Large, complex circuit cards or UHD flat-panel displays rely on rapid, high-resolution inspection to ensure manufacturing quality. Image sensors used for this are large — Tens of megapixels and frame rates are high to keep pace with the productivity demands of the inspection system. This results in large data sets being generated that must be analyzed in near real time. GPU processing excels here, and GPUDirect ensures that data arrives in GPU memory without impacting the CPU or system memory, which is often busy with other tasks.
Adopting NVIDIA GPUDirect is a little more involved than a conventional image-processing application, but as technology evolves and applications become more demanding, we’re often seeing situations that simply cannot be solved by conventional methods alone. In addition to offering support for GPUDirect through compatible NICs, Emergent Vision Technologies has also developed its own line of high-performance NICs optimized specifically to meet the needs of industrial high-speed, high-data imaging. Paired with its camera offerings and utilizing an optimized GigE Vision implementation, the company lowers the barriers to adoption and unlocks access to leading-edge performance and image processing.