The past decade has seen massive growth in centralized computing, with data processing flowing to the cloud to take advantage of low-cost dedicated data centres. However, the volume of data that will be needed to drive the next wave of applications is beginning to force a change in direction.
Currently, just 10% of enterprise-generated data is created and processed outside centralized data centres this figure is predicted to reach 50% by 2022 (Gartner). This necessary reversal is driven by the shift towards hyper-connected cyber-physical systems, enabled by the arrival of technologies such as 5G wireless communications and a new wave of application-focused computing hardware.
The automotive industry provides a microcosm of the coming sectoral change. Car manufacturers have realized that maintaining data in centralized servers will reach a limit. Today, the intelligence in automated driver assistance systems (ADAS) is largely self-contained, with scenes captured by the built-in cameras and radar systems processed purely within the vehicle. Only a tiny proportion of this data is relayed to the carmaker’s servers where it may be used to update databases to help with predictive maintenance and collect statistics on the performance of the ADAS software.
Every mile an ADAS-equipped car travels generates gigabytes of data, but bandwidth and processing limitations hinder usage. This information is processed once and then discarded, being too dense to send to centralized cloud servers. Systems much closer to the vehicle could make use of high-speed, cost-effective wireless networks, to capture the data and use it to make informed decisions.
In a simple case, transmissions from passing vehicles could use V2X to relay data to roadside beacons about road surface conditions. These beacons themselves may be isolated with only a low-speed connection to the cloud. Rather than discard much of the data before delivery and processing in the cloud, the beacons could use their own local compute capability to learn about road conditions and send that information to vehicles passing in the other direction.
Other sectors that are likely to need edge computing are battery powered robots, autonomous factory machines, land surveyor drones and Augmented Reality/Virtual Reality systems.
The Necessity of Edge Computing
As the level of autonomy in products increases the need for low-latency, real-time response becomes more vital, milliseconds matter when vehicles pass at speed. Today’s wireless networks can impose round-trip latencies on the order of hundreds of milliseconds. 5G has been re-architected to respond to messages in as little as a single millisecond but this speed is made redundant by a need to interact with the cloud.
The cloud-centric computing model is fundamentally limited by the laws of physics. The transmission of data by photons through fiber-optic cables is restricted to 70% of the speed of light in a vacuum. A distance of 1,000 km adds 10 ms of round-trip delay. To support the millisecond-scale response times, the compute resource needs to be brought much closer to the point of delivery to cloudlets at the network’s edge.
Cloudlets and other edge computers can help extend the delivery of services to users who would otherwise be beyond the reach of cloud-based high-performance computing. Micro data centres can use their own compute capacity to process, filter and compress data for upload to cloud servers overnight over slow connections such as satellite uplinks.
The processing that cloudlets perform will include extensive data analytics, often based on machine-learning (ML) techniques. Training of these ML algorithms will initially take place in the core cloud where energy is less constrained it is however likely to move to the edge, to be closer to the data production.
Edge-computing will go hand-in-hand with the rollout of 5G, while the architecture needed for the efficient delivery of 5G services will also rely on a cloudlet-based approach. The promise of millisecond-level response latency and data rates of up to 10Gb/s allow for much more intelligence to be deployed within the network.
Underpinning Edge Computing
To properly serve the varied, highly responsive applications, a cloudlet cannot simply be a scaled-down cloud server. High performance is necessary, but it has to be delivered in a form that is compact, reliable, and energy efficient. These systems are likely to sit alongside communications equipment that may be as small as a roadside cabinet.
Hardware-acceleration technologies will play a key role in maximising edge computing efficiency. Multicore processors are too slow and power hungry for real-time ML so can be augmented with a general-purpose graphics processing unit (GPGPU) or a vision processing unit (VPU).
GPGPUs and VPUs are being used in some embedded systems to run ML and data-analytics algorithms because of their highly parallelized floating-point arithmetic units. However GPGPU’S emphasis on peak floating-point performance tends to make the architecture unsuitable for energy-constrained systems. GPGPUs lend themselves to the convolutional layers of deep neural networks, but other types of operations can prove troublesome in terms of memory access. Finally their emphasis on floating-point and matrix arithmetic makes GPGPUs and VPUs a poor fit for other applications that will need acceleration in edge computers.
Solutions based around programmable hardware rather than processors provide the freedom to optimize data transfers between virtual neurons. Programmable hardware also provides the freedom to accommodate the wider range of tasks that edge computers will be called on to perform.
With eFPGA technology, it is possible to take commonly used functions that would otherwise be deployed in standalone ASICs and implement them in custom hardware for higher performance and density. For ML applications those functions may be dedicated processor arrays for convolution kernels or max-pooling calculations. By combining programmable logic and custom logic on the same IC, large power savings can be made by avoiding the need to transfer data off chip.
eFPGA technology has one other key advantage in the cloudlet/edge-computing environment, containers and virtualization provide effective support for secure operation in the core cloud because these systems can take advantage of good physical security. Devices on the edge of the network require greater levels of hardware protection as it is far easier for attackers to break into the enclosure and tamper with systems sitting in roadside cabinets or service rooms. The edge-computing systems will also have less support from administrators who can monitor server behaviour and look for evidence of network-based intrusion, such as the uploading of malicious workloads that try to perform side-channel attacks.
Having both security and programmable logic integrated on-chip makes it extremely difficult if not impossible for an attacker with physical access to the system to eavesdrop on communications. With integrated CPUs, the compute functionality of entire services can be isolated to the eFPGA limiting the amount of information sent off chip. Communications with other services can be performed using strong encryption facilities baked into the hardwired logic. As a result, the embedded FPGA concept supports a strong security architecture suitable for the needs of edge computing.
Hardware flexibility with the security and performance guarantees of hardwired custom circuits makes the eFPGA a vital technology for edge computing and cloudlets. The journey towards edge computing is just beginning. The pull of data towards the growing base of real-time applications on the edge makes outflow from the cloud inevitable.