Procesor hlubokého učení - Deep learning processor

A procesor hlubokého učení (DLP) nebo a akcelerátor hlubokého učení, je speciálně navržen obvody optimalizováno pro hluboké učení algoritmy, obvykle se samostatnými datová paměť a oddaný architektura sady instrukcí. Procesory hlubokého učení tvoří součást široké škály dnešní komerční infrastruktury, od mobilních zařízení (neurální procesorová jednotka, tj. NPU, v Huawei mobily.[1]) na cloudové servery (např. jednotka zpracování tenzoru, tj. TPU,[2] v Google Cloud ).

Cílem DLP je poskytnout vyšší účinnost a výkon než stávající procesní zařízení, tj. Obecně CPU (centrální procesorové jednotky) a GPU (jednotky grafického zpracování) při zpracování algoritmů hlubokého učení. Stejně jako GPU pro grafické zpracování využívají DLP znalosti specifické pro danou doménu (deep learning) při navrhování architektur pro zpracování deep learning. Většina DLP běžně využívá velké množství výpočetních komponent k využití vysokého paralelismu na úrovni dat, relativně větší vyrovnávací paměti / paměti na čipu k využití vzorů opětovného použití dat a omezené operátory šířky dat k využití odolnosti proti chybám učení se.

Dějiny

Využití CPU / GPU

Na samém začátku jsou obecné CPU přijaty k provádění algoritmů hlubokého učení. Později jsou GPU zavedeny do oblasti deeplearningu. Například v roce 2012 přijal Alex Krizhevsky dva GPU k trénování sítě hlubokého učení, tj. AlexNet,[3] který vyhrál šampióna soutěže ISLVRC-2012. Vzhledem k tomu, že se zájem o algoritmy hlubokého učení a DLP neustále zvyšuje, začínají výrobci GPU přidávat funkce související s hlubokým učením jak v hardwaru (např. Operátoři INT8), tak v softwaru (např. CuDNN Library). Například Nvidia dokonce vydala Turing Tensor Core - DLP - pro urychlení zpracování hlubokého učení.

První DLP

Pro zajištění vyšší efektivity výkonu a energie začíná návrh zaměřený na konkrétní doménu přitahovat velkou pozornost. V roce 2014 Chen et al. navrhla první DLP na světě, DianNao (čínština pro „elektrický mozek“),[4] zejména k urychlení hlubokých neuronových sítí. DianNao poskytuje špičkový výkon 452 Gop / s (klíčových operací v hlubokých neuronových sítích) pouze v malém půdorysu 3,02 mm2 a 485 mW. Později následníci (DaDianNao,[5] ShiDianNao,[6] PuDianNao[7]) jsou navrženy stejnou skupinou, tvořící rodinu DianNao[8]

Kvetoucí DLP

Inspirován průkopnickou prací rodiny DianNao, je mnoho DLP navrženo jak v akademické sféře, tak v průmyslu s designem optimalizovaným pro využití funkcí hlubokých neuronových sítí pro vysokou účinnost. Pouze na ISCA 2016 jsou tři sezení, 15% (!) Z přijatých prací, všechny návrhy architektury o hlubokém učení. Mezi takové snahy patří Eyeriss[9] (MIT), EIE[10] (Stanford), Minerva[11] (Harvard), pruhy[12] (University of Toronto) na akademické půdě a TPU[13] (Google), MLU[14] (Cambricon) v průmyslu. V tabulce 1 jsme uvedli několik reprezentativních prací.

Tabulka 1. Typické DLP
RokDLPInstituceTypVýpočetHierarchie pamětiŘízeníŠpičkový výkon
2014DianNao[4]ICT, CASdigitálnívektorové MACzápisníkVLIW452 Gops (16 bitů)
DaDianNao[5]ICT, CASdigitálnívektorové MACzápisníkVLIW5,58 vrcholů (16 bitů)
2015ShiDianNao[6]ICT, CASdigitálnískalární MACzápisníkVLIW194 Gops (16 bitů)
PuDianNao[7]ICT, CASdigitálnívektorové MACzápisníkVLIW1056 Gops (16 bitů)
2016EIE[10]Stanforddigitálnískalární MACzápisník-102 Gops (16-bit)
Eyeriss[9]MITdigitálnískalární MACzápisník-67,2 mezer (16 bitů)
primární[15]UCSBhybridníProces v pamětiReRAM--
2017TPU[13]Googledigitálnískalární MACzápisníkCISC92 topů (8 bitů)
FlexFlowICT, CASdigitálnískalární MACzápisník-420 Gops ()
2018MAERIGeorgia Techdigitálnískalární MACzápisník-
PermDNNCity University of New Yorkdigitálnívektorové MACzápisník-614,4 mezer (16 bitů)
2019FPSATsinghuahybridníProces v pamětiReRAM-
Cambricon-FICT, CASdigitálnívektorové MACzápisníkFISA14.9 Tops (F1, 16-bit)

956 vrcholů (F100, 16 bitů)

DLP architektura

Díky rychlému vývoji algoritmů hlubokého učení a DLP bylo prozkoumáno mnoho architektur. Zhruba lze DLP rozdělit do tří kategorií na základě jejich implementace: digitální obvody, analogové obvody a hybridní obvody. Protože čistě analogové DLP jsou zřídka vidět, představujeme digitální DLP a hybridní DLP.

Digitální DLP

Mezi hlavní součásti architektury DLP obvykle patří výpočetní komponenta, hierarchie paměti na čipu a řídicí logika, která spravuje datovou komunikaci a výpočetní toky.

Pokud jde o výpočetní komponentu, protože většinu operací v hlubokém učení lze agregovat do vektorových operací, nejběžnější způsoby vytváření výpočetních komponent v digitálních DLP jsou organizace založená na MAC (multiplikátor-akumulace), buď s vektorovými MAC[4][5][7] nebo skalární MAC.[13][6][9] Spíše než SIMD nebo SIMT v obecných procesorových zařízeních je v těchto organizacích založených na MAC lépe prozkoumáno paralelismus specifické pro doménu. Pokud jde o hierarchii paměti, protože algoritmy hlubokého učení vyžadují velkou šířku pásma, aby poskytly výpočetní komponentě dostatečné množství dat, DLP obvykle používají relativně větší velikost (desítky kilobajtů nebo několik megabajtů) vyrovnávací paměti na čipu, ale s vyhrazenou strategií opětovného použití dat na čipu a strategie výměny dat ke zmírnění zatížení šířky pásma paměti. Například DianNao, 16 16-ti vektorových MAC, vyžaduje 16 × 16 × 2 = 512 16bitových dat, tj. Téměř 1024 GB / s požadavky na šířku pásma mezi výpočetními komponentami a vyrovnávací pamětí. Díky opětovnému použití na čipu se takové požadavky na šířku pásma drasticky sníží.[4] Namísto široce používané mezipaměti v obecných procesorových zařízeních DLP vždy používají paměť scratchpad, protože by mohla poskytnout vyšší příležitosti opětovného použití dat využitím relativně pravidelného vzoru přístupu k datům v algoritmech hlubokého učení. Pokud jde o logiku řízení, protože algoritmy hlubokého učení se neustále vyvíjejí dramatickou rychlostí, DLP začínají využívat dedikovaný ISA (architektura sady instrukcí) k flexibilní podpoře domény hlubokého učení. Nejprve DianNao použila sadu instrukcí ve stylu VLIW, kde každá instrukce mohla dokončit vrstvu v DNN. Cambricon[16] zavádí první ISA pro specifické doménové vzdělávání, který by mohl podporovat více než deset různých algoritmů hlubokého učení. TPU také odhaluje pět klíčových pokynů z ISA ve stylu CISC.

Hybridní DLP

Hybridní DLP se objevují kvůli odvození DNN a zrychlení tréninku kvůli jejich vysoké účinnosti. Architektury zpracování v paměti (PIM) jsou jedním z nejdůležitějších typů hybridních DLP. Klíčovým konceptem PIM je překlenutí propasti mezi výpočtem a pamětí s následujícími způsoby: 1) Přesunutí výpočetních komponent do paměťových buněk, řadičů nebo paměťových čipů ke zmírnění problému s paměťovou stěnou.[17][18][19] Takové architektury výrazně zkracují datové cesty a využívají mnohem vyšší vnitřní šířku pásma, což má za následek atraktivní zlepšení výkonu. 2) Vytvořte vysoce efektivní DNN enginy přijetím výpočetních zařízení. V roce 2013 společnost HP Lab prokázala úžasnou schopnost převzetí struktury příčníku ReRAM pro výpočetní techniku.[20] Inspirován touto prací je navržena obrovská práce na prozkoumání nové architektury a designu systému založeného na ReRAM,[15][21][22][17] paměť fázové změny,[18][23][24] atd.

GPU a FPGA

Navzdory DLP se GPU a FPGA také používají jako akcelerátory pro urychlení provádění algoritmů hlubokého učení. Například Summit, superpočítač od IBM pro Oak Ridge National Laboratory,[25] obsahuje 27 648 karet Nvidia Tesla V100, které lze použít k urychlení algoritmů hlubokého učení. Společnost Microsoft staví svou platformu hlubokého učení pomocí tun FPGA ve své Azure na podporu služeb hlubokého učení v reálném čase.[26] V tabulce 2 porovnáváme DLP proti GPU a FPGA z hlediska cíle, výkonu, energetické účinnosti a flexibility.

Tabulka 2. DLP vs. GPU vs. FPGA
cílováVýkonEnergetická účinnostFlexibilita
DLPhluboké učenívysokývysokýspecifické pro doménu
FPGAVšechnonízkýmírnýVšeobecné
GPUmaticový výpočetmírnýnízkýmaticové aplikace

Atomicky tenké polovodiče pro hluboké učení

Atomicky tenký polovodiče jsou považovány za slibné z hlediska energetické účinnosti hluboké učení hardware, kde se pro logické operace i ukládání dat používá stejná základní struktura zařízení. v roce 2020 Marega et al. publikované experimenty s velkoplošným materiálem aktivního kanálu pro vývoj zařízení a obvodů logické paměti založených na plovoucí brána tranzistory s efektem pole (FGFET).[27] Používají dvourozměrné materiály, jako jsou polovodiče sirník molybdeničitý přesně vyladit FGFET jako stavební bloky, ve kterých lze s paměťovými prvky provádět logické operace. [27]

Srovnávací hodnoty

Benchmarking sloužil dlouho jako základ při navrhování nových hardwarových architektur, kde architekti i odborníci mohou porovnávat různé architektury, identifikovat jejich úzká místa a provádět odpovídající optimalizaci systému / architektury. Tabulka 3 uvádí několik typických referenčních hodnot pro DLP, které pocházejí z roku 2012 v časovém pořadí.

Tabulka 3. Srovnávací hodnoty.
RokNN BenchmarkPřidružení# mikro benchmarků# benchmarků komponent# benchmarky aplikace
2012BenchNNICT, CASN / A12N / A
2016SáhHarvardN / A8N / A
2017BenchIPICT, CAS1211N / A
2017DAWNBenchStanford8N / AN / A
2017DeepBenchBaidu4N / AN / A
2018MLPerfHarvard, Intel a Google atd.N / A7N / A
2019AIBenchICT, CAS a Alibaba atd.12162
2019NNBench-XUCSBN / A10N / A

Viz také

Reference

  1. ^ „HUAWEI odhaluje budoucnost mobilní AI na IFA“.
  2. ^ P, Jouppi Norman; YoungCliff; PatilNishant; PattersonDavid; AgrawalGaurav; BajwaRaminder; BatesSarah; BhatiaSuresh; BodenNan; Borchers Al; BoyleRick (2017-06-24). „Analýza výkonu datového centra jednotky pro zpracování tenzoru“. Zprávy počítačové architektury ACM SIGARCH. 45 (2): 1–12. doi:10.1145/3140659.3080246.
  3. ^ Krizhevsky, Alex; Sutskever, Ilya; Hinton, Geoffrey E (2017-05-24). „Klasifikace ImageNet s hlubokými konvolučními neuronovými sítěmi“. Komunikace ACM. 60 (6): 84–90. doi:10.1145/3065386.
  4. ^ A b C d Chen, Tianshi; Du, Zidong; Sun, Ninghui; Wang, Jia; Wu, Chengyong; Chen, Yunji; Temam, Olivier (04.04.2014). „DianNao“. Zprávy počítačové architektury ACM SIGARCH. 42 (1): 269–284. doi:10.1145/2654822.2541967. ISSN  0163-5964.
  5. ^ A b C Chen, Yunji; Luo, Tao; Liu, Shaoli; Zhang, Shijin; On, Liqiang; Wang, Jia; Li, Ling; Chen, Tianshi; Xu, Zhiwei; Sun, Ninghui; Temam, Olivier (prosinec 2014). „DaDianNao: Superpočítač strojového učení“. 47. výroční mezinárodní sympozium o mikroarchitektuře IEEE / ACM 2014. IEEE: 609–622. doi:10.1109 / micro.2014.58. ISBN  978-1-4799-6998-2. S2CID  6838992.
  6. ^ A b C Du, Zidong; Fasthuber, Robert; Chen, Tianshi; Ienne, Paolo; Li, Ling; Luo, Tao; Feng, Xiaobing; Chen, Yunji; Temam, Olivier (01.01.2016). „ShiDianNao“. Zprávy počítačové architektury ACM SIGARCH. 43 (3S): 92–104. doi:10.1145/2872887.2750389. ISSN  0163-5964.
  7. ^ A b C Liu, Daofu; Chen, Tianshi; Liu, Shaoli; Zhou, Jinhong; Zhou, Shengyuan; Teman, Olivier; Feng, Xiaobing; Zhou, Xuehai; Chen, Yunji (2015-05-29). „PuDianNao“. Zprávy počítačové architektury ACM SIGARCH. 43 (1): 369–381. doi:10.1145/2786763.2694358. ISSN  0163-5964.
  8. ^ Chen, Yunji; Chen, Tianshi; Xu, Zhiwei; Sun, Ninghui; Temam, Olivier (2016-10-28). „Rodina DianNao“. Komunikace ACM. 59 (11): 105–112. doi:10.1145/2996864. ISSN  0001-0782. S2CID  207243998.
  9. ^ A b C Chen, Yu-Hsin; Emer, Joel; Sze, Vivienne (2017). „Eyeriss: Prostorová architektura pro energeticky efektivní tok dat pro konvoluční neuronové sítě“. IEEE Micro: 1. doi:10.1109 / mm.2017.265085944. hdl:1721.1/102369. ISSN  0272-1732.
  10. ^ A b Han, Song; Liu, Xingyu; Mao, Huizi; Pu, Jing; Pedram, Ardavan; Horowitz, Mark A .; Dally, William J. (03.02.2016). EIE: Efficient Inference Engine on Compressed Deep Neural Network. OCLC  1106232247.
  11. ^ Reagen, Brandon; Whatmough, Paul; Adolf, Robert; Rama, Saketh; Lee, Hyunkwang; Lee, Sae Kyu; Hernandez-Lobato, Jose Miguel; Wei, Gu-Yeon; Brooks, David (červen 2016). „Minerva: Povolení nízkoenergetických, vysoce přesných akcelerátorů hluboké neurální sítě“. 43. výroční mezinárodní symposium o počítačové architektuře (ISCA) ACM / IEEE 2016. Soul: IEEE: 267–278. doi:10.1109 / ISCA.2016.32. ISBN  978-1-4673-8947-1.
  12. ^ Judd, Patrick; Albericio, Jorge; Moshovos, Andreas (01.01.2017). "Pruhy: Bit-Serial Deep Neural Network Computing". Dopisy počítačové architektury IEEE. 16 (1): 80–83. doi:10.1109 / lca.2016.2597140. ISSN  1556-6056. S2CID  3784424.
  13. ^ A b C "Analýza výkonu datového centra jednotky tenzoru | Sborník 44. výročního mezinárodního symposia o počítačové architektuře". doi:10.1145/3079856.3080246. S2CID  4202768. Citovat deník vyžaduje | deník = (Pomoc)
  14. ^ „Karta akcelerátoru inteligence MLU 100“.
  15. ^ A b Chi, Ping; Li, Shuangchen; Xu, Cong; Zhang, Tao; Zhao, Jishen; Liu, Yongpan; Wang, Yu; Xie, Yuan (červen 2016). „PRIME: Nová architektura zpracování v paměti pro výpočet neuronových sítí v hlavní paměti založené na ReRAM“. 43. výroční mezinárodní sympozium o počítačové architektuře (ISCA) ACM / IEEE 2016. IEEE: 27–39. doi:10.1109 / isca.2016.13. ISBN  978-1-4673-8947-1.
  16. ^ Liu, Shaoli; Du, Zidong; Tao, Jinhua; Han, Dong; Luo, Tao; Xie, Yuan; Chen, Yunji; Chen, Tianshi (červen 2016). „Cambricon: Architektura instrukční sady pro neuronové sítě“. 43. výroční mezinárodní symposium o počítačové architektuře (ISCA) ACM / IEEE 2016. IEEE: 393–405. doi:10.1109 / isca.2016.42. ISBN  978-1-4673-8947-1.
  17. ^ A b Song, Linghao; Qian, Xuehai; Li, Hai; Chen, Yiran (únor 2017). „PipeLayer: Pipelined ReRAM-Based Accelerator for Deep Learning“. 2017 IEEE International Symposium on High Performance Computer Architecture (HPCA). IEEE: 541–552. doi:10.1109 / hpca.2017.55. ISBN  978-1-5090-4985-1. S2CID  15281419.
  18. ^ A b Ambrogio, Stefano; Narayanan, Pritish; Tsai, Hsinyu; Shelby, Robert M .; Boybat, Irem; di Nolfo, Carmelo; Sidler, Severin; Giordano, Massimo; Bodini, Martina; Farinha, Nathan C. P .; Killeen, Benjamin (červen 2018). "Výcvik neuronové sítě s ekvivalentní přesností s využitím analogové paměti". Příroda. 558 (7708): 60–67. doi:10.1038 / s41586-018-0180-5. ISSN  0028-0836. PMID  29875487. S2CID  46956938.
  19. ^ Chen, Wei-Hao; Lin, Wen-Jang; Lai, Li-Ya; Li, Shuangchen; Hsu, Chien-Hua; Lin, Huan-Ting; Lee, Heng-Yuan; Su, Jian-Wei; Xie, Yuan; Sheu, Shyh-Shyuan; Chang, Meng-Fan (prosinec 2017). "Makro ReRAM s duálním režimem 16 MB s funkcemi výpočetní paměti v paměti a paměťovými funkcemi sub-14ns povolenými schématem ukončení automatického zápisu". 2017 IEEE International Electron Devices Meeting (IEDM). IEEE: 28.2.1–28.2.4. doi:10.1109 / iedm.2017.8268468. ISBN  978-1-5386-3559-9. S2CID  19556846.
  20. ^ Yang, J. Joshua; Strukov, Dmitri B .; Stewart, Duncan R. (leden 2013). „Memristivní zařízení pro výpočet“. Přírodní nanotechnologie. 8 (1): 13–24. doi:10.1038 / nnano.2012.240. ISSN  1748-3395. PMID  23269430.
  21. ^ Shafiee, Ali; Nag, Anirban; Muralimanohar, Naveen; Balasubramonian, Rajeev; Strachan, John Paul; Hu, Miao; Williams, R. Stanley; Srikumar, Vivek (2016-10-12). „ISAAC“. Zprávy počítačové architektury ACM SIGARCH. 44 (3): 14–26. doi:10.1145/3007787.3001139. ISSN  0163-5964. S2CID  6329628.
  22. ^ Ji, Yu Zhang, Youyang Xie, Xinfeng Li, Shuangchen Wang, Peiqi Hu, Xing Zhang, Youhui Xie, Yuan (2019-01-27). FPSA: Kompletní systémové řešení pro rekonfigurovatelnou architekturu NN Accelerator založenou na ReRAM. OCLC  1106329050.CS1 maint: více jmen: seznam autorů (odkaz)
  23. ^ Nandakumar, S. R .; Boybat, Irem; Joshi, Vinay; Piveteau, Christophe; Le Gallo, Manuel; Rajendran, Bipin; Sebastian, Abu; Eleftheriou, Evangelos (listopad 2019). "Paměťové modely s fázovou změnou pro hluboké učení a odvozování". 26. mezinárodní konference IEEE o elektronice, obvodech a systémech (ICECS). IEEE: 727–730. doi:10.1109 / icecs46596.2019.8964852. ISBN  978-1-7281-0996-1. S2CID  210930121.
  24. ^ Joshi, Vinay; Le Gallo, Manuel; Haefeli, Simon; Boybat, Irem; Nandakumar, S. R .; Piveteau, Christophe; Dazzi, Martino; Rajendran, Bipin; Sebastian, Abu; Eleftheriou, Evangelos (2020-05-18). „Přesné odvození hluboké neurální sítě pomocí výpočetní paměti fázové změny“. Příroda komunikace. 11 (1): 2473. doi:10.1038 / s41467-020-16108-9. ISSN  2041-1723. PMC  7235046. PMID  32424184.
  25. ^ „Summit: 200 petaflopový superpočítač Oak Ridge National Laboratory“.
  26. ^ „Microsoft představuje Project Brainwave pro AI v reálném čase“.
  27. ^ A b Marega, Guilherme Migliato; Zhao, Yanfei; Avsar, Ahmet; Wang, Zhenyu; Tripati, Mukesh; Radenovic, Aleksandra; Kis, Anras (2020). "Logika v paměti založená na atomově tenkém polovodiči". Příroda. 587 (2): 72–77. doi:10.1038 / s41586-020-2861-0.