Specialised Hardware to Extend Moore's Law
As Moore’s Law continues to become less accurate, computer scientists have had to become more clever to satisfy the economy’s need for speed. One way this has happened is with the increased number of specialised hardware components.
Why Use Specialised Hardware Components?
These components can allow certain types of computation to occur very quickly, in a way that traditional, bare-bones, Von Neumann architecture computers could not. Here are some examples of these additions from the past:
- GPUs - Graphics processing and GPGPU applications
- FPUs - Floating point operations
- AES-NI - AES encryption in x86
- AI accelerators - Artificial intelligence and machine learning applications
- O(1) deadlock detection - Detecting deadlocks, mainly in parallel, real-time, embedded systems
Some Newer Additions
A significant change in modern the hardware landscape, the M1 chip and later iterations, have added a number of specialised hardware components, such as:
- Media engine - Hardware-accelerated encoding and decoding of H.264, HEVC, ProRes, and ProRes RAW (in M1 Ultra)
- Neural Engine - Neural network training and use
- Image processor - Quickly processing image data in parallel
Into the future
I believe it is likely that the number of specialised components will increase. Some possible additions to computer systems may include DNA computing applications, true random number generators, and perhaps one day, quantum computing.
Computation Comparisons
Changes such as these make comparing computers harder and harder, since the specific task and the way it is computed will depend even more on what specialised components it has, and so it becomes like comparing apples and oranges. Benchmarking software will need to decide how to take this into account, and how to weight each of these different kinds of computation tasks.