Edge Computing: Know Your xPUs
Understanding the Differences Between Edge-Based Processors
When you discuss the Edge of the IoT, or the Industrial IoT (IIoT), some elements need to be defined. One of those elements is, where exactly is the Edge? In some cases, the Edge refers to the outer-most elements, the devices that actually touch the outside world. For example, it could refer to a temperature or humidity sensor, camera or other imaging device.
Others believe that the Edge refers to the processing element that connects to the Cloud, usually a system that has server-like characteristics. This Edge computer generally has some serious processing power, and a few different communications media, which could be wired or wireless, often depending on how far the data must travel and whether it has to leave the building or campus.
As performance requirements for Edge computers used in AI, vision, and autonomous-vehicle applications increase, they require multiple processing elements to handle the data and decision-making processes. Some of the most common processing elements include CPUs (central processing units), GPUs (graphical processing units), TPUs (Tensor processing units), and VPUs (vision processing units). While these terms are sometimes used interchangeably, that would be a mistake as they are quite different.
A CPU, the most common processor type, often falls into one of two categories — Intel (or X86) or Arm. The CPU typically resides in any mainstream computing platform and is often augmented by (or offloaded by) one of the other types of processors. As a general-purpose component, the CPU handles the general computing tasks, which includes the I/O and the parsing out of tasks to other processors. The floating-point processor or FPU that would sit alongside the CPU on many designs has since been rolled into the same piece of silicon, eliminating a device and increasing performance.
The GPU, with its highly parallelized structure, is designed specifically for accelerating image data, typically moving the data in and out of a frame buffer and eventually moving that data out to a display. Such devices are quite common in embedded systems, mobile handsets, servers, and game consoles. It’s that parallelism that suits it for image data as compared to a CPU.
The GPU has become quite popular thanks to NVIDIA, which has been able to maximize the part’s abilities to handle hardware acceleration, programmable shading, and stream processing. AMD has since joined the GPU party with its Radeon series of devices. High-end GPUs are required for AI training and often utilize powerful Cloud-computing solutions and Edge platforms.
VPUs, like Intel’s Movidius, enable high-end computer vision and Edge AI workloads. Such processors have the ability to couple highly parallel programmable computations with workload-specific hardware acceleration with minimal data movement. They’ve been designed to minimize power consumption while maximizing performance for such video applications as intelligent cameras and AI appliances.
With the recent push toward artificial intelligence (AI) and machine learning (ML), the TPU is now in the spotlight. Like the X86 processor that started as an Intel design, the TPU is an AI accelerator ASIC that was developed by Google specifically for its own TensorFlow software for neural-net ML applications. The instruction set is now available for third-party use, meaning that independent CPU vendors can develop and deploy devices for the Google cloud infrastructure. Small TPU’s can be added to Edge computers such as WINSYSTEMS’ ITX-P-C444 through the Mini-PCIe slot to enhance the AI inference engine.
The ITX-P-C444 is an industrial SBC designed to the Pico-ITX form factor. The heart of the SBC is an NXP i.MX8M applications processor, which combines with dual Ethernet, industrial I/O, and other expansion options. The i.MX8M is designed to maximize video processing, while its M4 MCU handles the real-time and housekeeping functions. Hence, it’s a great fit for IIoT applications potentially operating in harsh conditions, such as digital signage, industrial automation, energy, and building automation.
Finally, the XPU, or Server GPU, is a recent entrant by Intel onto the processor scene, initially aimed at the data center. One of Intel’s goals in the XPU was to simplify the software design process for developers, who can now access a common, open, and standards-based programming model across the company’s XPU product family.
There you have it. Simple as mud, right? Thankfully, our engineers at WINSYSTEMS are well versed in all these products and technologies, and we can help you determine which is best for your specific application.