By Ingo Deppner and Henning Soller
Early in the computer age, programming was done on hardware and was a slow, manual process that few programmers could implement. The groundbreaking invention of software made it possible for anyone with the requisite technical skills to program a computer to complete tasks and commands and, eventually, to process and analyze data. Software thus became the preferred platform for programming and processing large amounts of data.
However, recent developments call this thinking into question. Large-scale experiments at CERN, the European Organization for Nuclear Research, for instance, encountered scenarios where the volume of data was so high that storing and analyzing it, even in memory, was insufficient. Thus, these teams implemented field-programmable gate arrays (FPGAs)—programmable hardware circuits that can outperform software by processing data and executing programmed tasks much more quickly and efficiently.
While FPGAs are not the right solution for all data-processing and -streaming challenges, the technology can be incredibly valuable when integrated in the right place within the existing IT landscape, such as in finance for real-time trading, for continuous monitoring of industrial machinery, or with IoT providers, where increased real-time data-processing efficiency is a competitive advantage. However, many organizations don’t know where or how to start integrating FPGAs into their tech infrastructure, nor do they have the right talent in place. Organizations can take full advantage of this powerful hardware circuit by taking three actions: identify relevant use cases, develop the talent to support FPGA technology, and acquire the right tech solutions.
A complex technical solution
FPGAs were introduced in the mid-1980s and were primarily used in the engineering industry. Over time, industries such as auto and aerospace and defense discovered the value of these circuits and adopted them to meet their computing and processing needs. For instance, companies in the auto industry program FPGAs to help with vehicle networking and connectivity. So how exactly does FPGA technology work?
The circuits are made up of an array of logic elements called configurable logic blocks (CLBs), which contain elements such as lookup tables and multiplexers that allow FPGAs to complete complex (or basic) logic or memory functions and even process code. These CLBs and the general-purpose input/output pins (I/O pins), which connect the hardware to external systems, are connected through configurable lines or communication pathways (Exhibit 1). Modern FPGAs have millions of CLBs and thousands of I/O pins that enable the hardware to process thousands of incoming data streams simultaneously without referring to a memory bus. The modular reprogrammable nature of FPGAs enables users to optimize the circuit to meet specific computing needs. CERN, for instance, is exploring the use of FPGAs to help autonomous vehicles process huge quantities of data to make faster and more accurate decisions to avoid potential traffic incidents.1
Although FPGAs are not the solution to all industry challenges, in many cases they can provide several benefits, especially to organizations that rely on synthesizing and processing significant volumes of data for real-time analysis (Exhibit 2).
Emerging use cases
As more industries become familiar with the technology and see it as a viable solution, more use cases will emerge. The cost savings due to fast processing or massive parallelization can be immense (up to tenfold). But it is crucial to identify which use cases are truly suitable for FPGAs.
Based on our experience, these are four of the most promising emerging use cases for this technology in the finance and IoT industries:
- Real-time trading at stock exchanges where individual bidders benefit from minimal variances between share prices
- Real-time management of liquidity risk; this application is especially relevant for banks that practice large-scale trading and in the analysis of corresponding implications of risk exposure
- Quick real-time proactive error identification enabled by continuous monitoring and controlling of industrial equipment in, for example, motors or complex machines
- Real-time optimization of large-scale IoT platforms where all drones or vehicles are connected to a common smart-city platform and traffic needs to be optimized continuously
In each of these scenarios, FGPAs are preferable to and can outperform software-based solutions.
The path to real-time application
To take full advantage of existing use cases and uncover new ones, leaders in the finance and IoT industries must take three actions.
Identify the key use cases where FPGA technology might be relevant
Any or all of the following three situations might indicate the viability of using FPGAs:
- There is a massive influx of data.
- Rules need to be applied to downsize the data flow or to select specific events to be processed further.
- Substantial requirements for real-time analysis must be handled at a factor of about 1,000 above the technical limits in software.
Industries such as aerospace and defense or auto might use FPGAs in drones to help with real-time analysis and decision making. For example, drones used to monitor traffic and provide real-time data updates for moving targets could use embedded FPGAs to help process data quickly. In cases where there are multiple drones operating in one area, they can avoid crashes by reacting in microseconds and optimizing their routes to avoid one another.
Insource available talent and build small expert teams
To support use-case development and react quickly to new market developments, companies need to bring new talent into their IT departments. Traditionally, organizations have hired people with computer science and electrical engineering backgrounds, but FPGAs are primarily a physics application. Companies can still look for electrical engineers, but they should also target universities or organizations that conduct FPGA research (and have strong physics departments) to find new talent and build out small internal expert teams.
Acquire technology solutions to address the technical challenges of first use cases
As with any first attempt, there are likely to be some bumps with initial use cases, especially in the technical execution. Thus, companies need to decide whether they will rely on their small team of experts to troubleshoot or use an external vendor or partner that can offer tech solutions, which can alleviate some of the burden for companies that have yet to cultivate internal expertise or that may not want to burden themselves with technical challenges.
Although FPGAs have been around for decades, many industries are experiencing their benefits for the first time. To explore the full range of possibilities and make the most of their investment, organizations will need to find the right use cases and build a team of experts who can help guide them through the early stages of implementing this promising technology.
Ingo Deppner is a researcher at the Institute of Physics at the University of Heidelberg, and Henning Soller is a partner in McKinsey’s Frankfurt office.
1 Kate Kahle, “From capturing collisions to avoiding them: How CERN machine-learning techniques could improve autonomous vehicles,” CERN, August 29, 2019, home.cern.