Jump to content
Facebook Twitter Youtube

[Hardware] Hardware focused on a task, is specialization the future?


Recommended Posts

Posted

Domain Specific Accelerators or Domain Specific Accelerators are a type of unit that is lower than a CPU due to its complexity, but has the ability to perform certain tasks while consuming less power and being faster. But how do they work, what defines them, and why are they the future of hardware?

Código Fuente

As time goes by, programs need to go faster and faster, but at the same time CPUs and GPUs have become behemoths of complexity where it is very difficult to increase performance in a traditional way. The future solution for this problem? Domain Specific Accelerators

First of all, the throttle concept
ARM RISC system

Since the dawn of computing, support chips have been necessary to speed up certain techniques, originally these chips freed the CPU to perform a repetitive and recursive task. The clearest example was the graphics systems that made the CPU not have to waste most of the time drawing on the screen.

An accelerator is a support chip that goes further, because it not only frees the CPU from doing that task, but also speeds it up. That is, it is done by the task in a portion of the time of what the CPU would take. Which means that it is accelerated and has an impact on everything going faster. Hence the name accelerator.

Coste Energético Relativo

Accelerators come in many types and designs, any type of hardware can be an accelerator: a microcontroller, an FPGA, a combinational or sequential circuit, etc. In recent years, a type of accelerator has appeared that will dominate the hardware in the following years, the Domain Specific Accelerators.

Domain Specific Accelerators, general definition
CPU-clock

In hardware, we have been using accelerators for a long time for different types of jobs and specific applications and therefore for a specific domain in particular. Today these domains can be graphics, Deep Learning, bioinformatics, voice and image processing in real time. There are many specific domains in which a Domain Specific Accelerator can solve the problem in a better way than a CPU, that is, in less time and consuming less.

The first thing that will come to mind is the question: is a GPU a Domain Specific Accelerator? No, it is not. DSAs take care of very specific tasks in particular, so a GPU is going to have several of these units. To make it more understandable, it must be taken into account that every task can be divided into several smaller ones that can be accelerated independently with this type of processors.

However, Domain Specific Accelerators are different from other options that exist in the market, since they exploit in their design a series of characteristics that place them between general-purpose processors and conventional accelerators. In other words, they do not reach the complexity of a CPU, but they are much more complex than the classic solutions, especially those based on a fixed function.

Specific domain, specific ISA
Source code

The first thing we have to bear in mind is that a Domain Specific Accelerator is not a CPU, although it also executes a program, its design is optimized for a specific solution and not a general one, for this a totally ISA is created around the DSA unit exclusive whose instructions, registers and types of data used are thought to solve in a short time certain instructions that a CPU would take many cycles to do.

Diseño Circuitos Papel

The CPUs in their ISAs build instructions today from microinstructions that share a common data path through the instruction cycle. This means that due to the complexity of the instruction set, a complex instruction takes many cycles to complete. In a DSA we can create instruction loops and specific data paths for certain instructions that run faster. We can even create units in parallel that execute just that instruction recursively.

But the biggest advantage of this is that it allows us for certain applications to get rid of instructions that a general purpose unit that for our specific application is useless. And in recent years they have ended up transforming the sets of registers and instructions of CPUs and GPUs into mastodons that occupy a large space.

Domain Specific Accelerators and memory access
Relative Energy Cost

Another improvement of the DSA has to do with memory, since like a microcontroller they use memory within the accelerator itself. Which is important, since the physical distance in which the memory is located influences the energy cost of the instructions.

Guest
This topic is now closed to further replies.

WHO WE ARE?

CsBlackDevil Community [www.csblackdevil.com], a virtual world from May 1, 2012, which continues to grow in the gaming world. CSBD has over 70k members in continuous expansion, coming from different parts of the world.

 

 

Important Links