Edge computing and cloud computing are data processing strategies aimed to distribute your computation load and data transfer across different systems in a network.
In cloud computing, computing resources and data storage are requested on demand to allow a less powerful device to perform computationally intensive tasks or manage large amounts of data that it normally would not be able to store. For example, this makes it possible to use multiple powerful but expensive GPUs for training a deep learning network instead of having them physically installed in your system. Cloud computing is also heavily scalable: more computing power or data storage can be requested easily from the cloud service provider and the cost is relative to the usage of the cloud service. Obviously, when lots of data processing or computing is needed, this cost can become significant. In addition, the time needed for the data transfer and processing in the cloud may be too long to be useful for real-time applications.
Edge computing removes these issues by offloading a part of the computation and data processing to many smaller devices at the forefront (edge) of the network. This reduces the amount of data that needs to be sent to the cloud: most part of the data can be processed on the edge device and only the resulting data needs to be uploaded. Since the main processing happens on the edge device, less or no computing power needs to be requested from the cloud, which drastically reduces costs and makes it possible to respond in a very fast manner. Smartphones provide an example for this with face detection: instead of having to send video data to the cloud to be processed, the phone can now perform face detection itself. This means that the user can see face detection live on their smartphone without requiring video data transfer. This approach also has limitations. Since many edge devices are needed in the network, there is price pressure which limits the computing capabilities of the individual edge devices. These generally work fine for relatively straightforward applications, but tougher challenges partially or fully rely on cloud for processing.
Combined use of edge and cloud computing
A combination of edge and cloud computing provides the ideal balance for most real-world applications: you get the fast response times and data saving capabilities of edge, combined with the power and data storage of the cloud. The following diagram illustrates how cloud and edge computing blend together.
The automotive industry sets a clear example of the combined use of edge and cloud computing, in particular with the innovation of self-driving cars. In the scenario of cars driving around autonomously, it would be undesirable to send live video feeds to the cloud to be processed, as the car needs to be able to respond rapidly to changes in its surroundings. This means that every car needs to have its own AI chip to instantly process the video feeds being recorded on the car’s cameras. Companies like Tesla have engineered their own edge AI chip for their self-driving cars to achieve maximum accuracy at very high camera framerates. The result is a “smart car”, a car that has everything necessary to be able to navigate by itself without relying on network or cloud based processing.
The data being recorded and processed by these self-driving cars can also be used to make the AI smarter. A single car is unable to handle this efficiently, as it cannot possibly store the entire datasets from all the cars and perform training on these. Instead, all the data generated by the cars can be uploaded to the cloud and processed there, which nicely ties the edge and cloud computing paradigms together as shown below.
The rise of cloud and edge computing
The concepts of edge and cloud computing didn't just fell out of the sky. In the early computer days, the use of a personal computer as we know it today was rare. For their computer work, employees typically had access to a so-called terminal, which was connected to a mainframe computer. The terminal itself, without computing capabilities, could only tell the mainframe computer what it needed to do and receive a response from it. The employees had to schedule their tasks on the mainframe and wait until it had finished processing it. This was very slow and inefficient. When the computer became more compact and affordable, the personal computer became a possibility, offloading the computation from the mainframe to the personal computer. This can be considered as edge computing 'avant la lettre'.
Later on, as network operating speeds increased steadily, personal computers offloaded more intensive computations to more powerful computers on the network. The amount of data being stored online became increasingly larger as well. This way, personal computers became less computationally powerful as they gradually moved more towards an on-demand model, like we see now with video streaming (Netflix, Disney+, etc.) or gaming (Xbox Cloud, GeForce Now, etc.), for example. This marked the advent of cloud computing, which resembles the original mainframe-terminal model discussed earlier.
However, every year more and more data are produced and consumed. In 2025, IDC forecasts worldwide data to grow to 175 zettabytes, which indicates a significant data growth of 61% per year. As it is very intensive (and expensive) to handle this all on the cloud, the demand for moving the computation and data processing back to the edge had risen significantly. Combined with the demand for very responsive edge functionality and more widespread availability of affordable edge devices, it shows that edge computing is vital to cover the gaps that cloud computing cannot fill. This brings us to the current situation; a combination of powerful mainframe-like cloud computing systems and less powerful but affordable sets of personal computer-like edge devices.
Cloud computing applications
There is a multitude of services that are offered under the umbrella of cloud computing, typically labeled under the 'as a service' moniker:
- Software as a service offers the ability to get a subscription for a software application which is centrally hosted, compared to paying for a license to install and run software on your own computer. An example of this is Microsoft Office 365, which you can now run from multiple computers on a single license instead of having to install it on a single computer.
- Platform as a service offers a computing platform as well as some applications on top of this to be able to develop your own application without needing the hardware and software. This is especially convenient for training Deep Learning models, as you can use powerful computing hardware like GPU's and TPU's combined with a training application, without actually having to buy and install this hardware and software.
- Infrastructure as a service offers a network and storage infrastructure combined with a simple API to access them, providing all the benefits of a large infrastructure without the efforts of managing it.
Cloud service providers include Amazon AWS, Google Cloud and Microsoft Azure.
Edge computing applications
There is a broad spectrum of devices that can be considered edge computing devices. A very straightforward example is a smartphone. Since it contains more and more powerful chips, it is able to execute more and more complex computations by itself. Another example is a self-driving car, as mentioned above. A leading example of an edge device used for computer vision is the Nvidia Jetson.
The Jetson is a compact and affordable device with low power requirements. It is capable of running performant deep learning networks, relaxing the need for a computer with an expensive dedicated GPU to perform computer vision tasks. This also makes computer vision a lot more scalable: instead of requiring every camera to be connected to a powerful computer, each camera can be connected to a Jetson to become a 'smart camera', which can then send all its data to the cloud.