# Accelerador d'IA

Un accelerador d'IA és una classe d'acceleració per maquinari especialitzat dissenyat a fi d'accelerar aplicacions d'intel·ligència artificial i d'aprenentatge automàtic, incloent-hi xarxes neuronals artificials i visió artificial. Les aplicacions típiques inclouen algorismes per robòtica, la internet de coses, i altres tasques amb és intensiu de dades o sensors. Són sovint dissenys multi-processadors i generalment se centren en aritmètica de baixa precisió, noves arquitectures de flux de dades o bases de dades en memòria primària (in-memory computing). AL 2018, un xip d'IA típic conté mil milions de transistors MOSFET. Diversos venedors usen termes particulars pels dispositius existents en aquesta categoria, per tal com és una tecnologia emergent sense un disseny dominant.
Els ordinadors han complementat sovint la CPU amb acceleradors de propòsit especial per tasques específiques, coneguts com coprocessadors. Destaquen unitats de maquinari tals com targetes de vídeo per gràfics, targetes de so, unitats de computació gràfica i processadors de senyals digitals. Les càrrega de les tasques d'aprenentatge profund i intel·ligència artificial van augmentar de gran manera durant els 2010s, de manera que es van desenvolupar noves unitats de maquinari especialitzades per tal que productes existents poguessin accelerar aquestes tasques.

## Primers intents

Els primers intents, com el ETANN 80170NX d'Intel, van incorporar circuits analògics per calcular funcions neuronals. Un altre exemple dels xips d'aquesta categoria és ANNA, un accelerador CMOS de xarxes neuronals artificials desenvolupat per Yann LeCun. Més tard van venir tots els xips digitals com el Nestor/Intel Ni1000. Aviat, el 1993, processadors de senyal digital van ser utilitzats com acceleradors per xarxa neuronals, p. ex. per accelerar programes de reconeixement òptic de caràcters. En el 1990s, hi va haver també intets de crear sistemes paral·lels d'altes prestacions per estacions de treball, drigita a diverses aplicacions com simulacions de xarxes neuronals. Acceleradors basats en FPGA van ser també explorats durant els 1990s per les fases d'inferència i d'entrenament en xarxes neuronals.

## Ús de GPUs

Una unitat de procés gràfic o GPU és una unitat de especialitzada en la manipulació d'imatges i el càlcul de propietats locals d'imatges. La base matemàtica del flux de processament d'imatges i de les xarxes neuronals és similar, són tasques perfectament paral·lelitzables que requereixen l'ús de matrius, cosa que va portar a l'usatge cada cop més gran de GPUs per tasques d'aprenentatge automàtic. El 2016, l'usatge de GPUs és popular per fer tasques d'IA, i continuen evolucionant en la direcció de millorar el suport a l'aprenentatge profund, tant per l'entrenar cpm per la inferència, en dispositius com vehicles autònoms. Desenvolupadors de GPU com Nvidia té en desenvolupament noves capacitat de connectivitat addicionals per aquesta classe de tasques de flux de dades que pot beneficiar l'IA. Per tal com GPUs es dediquen cada cop més a accelerar tasques d'IA, fabricants de GPU han incorporat maquinari específic per xarxes neuronals que va més enllà d'accelerar aquestes tasques. Els nuclis de tensors es dissenyen amb l'objectiu d'accelerar l'entrenament de xarxes neuronals.

## Referències

* ↑ «Google Designing AI Processors». Google using its own AI accelerators.
* ↑ «13 Sextillion & Counting: The Long & Winding Road to the Most Frequently Manufactured Human Artifact in History». Computer History Museum, 02-04-2018. [Consulta: 28 juliol 2019].
* ↑ John C. Dvorak: Intel’s 80170 chip has the theoretical intelligence of a cockroach in PC Magazine Volume 9 Number 10 (May 1990), p. 77,, retrieved May 16, 2021
* ↑ «Application of the ANNA Neural Network Chip to High-Speed Character Recognition».
* ↑ «convolutional neural network demo from 1993 featuring DSP32 accelerator».
* ↑ «design of a connectionist network supercomputer».
* ↑ «The end of general purpose computers (not)».This presentation covers a past attempt at neural net accelerators, notes the similarity to the modern SLI GPGPU processor setup, and argues that general purpose vector accelerators are the way forward (in relation to RISC-V hwacha project. Argues that NN's are just dense and sparse matrices, one of several recurring algorithms)
* ↑ Ramacher, U. Proceedings of 9th International Parallel Processing Symposium, 1995, p. 774–781. DOI 10.1109/IPPS.1995.395862. ISBN 978-0-8186-7074-9.
* ↑ «Space Efficient Neural Net Implementation».
* ↑ Gschwind, M. «A Generic Building Block for Hopfield Neural Networks with On-Chip Learning». A: 1996 IEEE International Symposium on Circuits and Systems. Circuits and Systems Connecting the World. ISCAS 96, 1996, p. 49–52. DOI 10.1109/ISCAS.1996.598474. ISBN 0-7803-3073-0.
* ↑ «microsoft research/pixel shaders/MNIST».
* ↑ «How GPU came to be used for general computation».
* ↑ «ImageNet Classification with Deep Convolutional Neural Networks».
* ↑ «nvidia driving the development of deep learning», 17-05-2016.
* ↑ «Nvidia introduces supercomputer for self driving cars», 06-01-2016.
* ↑ «how nvlink will enable faster easier multi GPU computing», 14-11-2014.
* ↑ "A Survey on Optimized Implementation of Deep Learning Models on the NVIDIA Jetson Platform", 2019
* 1 2 Harris, Mark. «CUDA 9 Features Revealed: Volta, Cooperative Groups and More», 11-05-2017. [Consulta: 12 agost 2017].