딥러닝 프로세서
Deep learning processor딥러닝 프로세서(DLP) 또는 딥러닝 가속기는 딥러닝 알고리즘을 위해 설계된 전자회로, 보통 별도의 데이터 메모리와 전용 명령 집합 아키텍처를 갖추고 있다.딥러닝 프로세서는 화웨이 휴대폰의 신경처리장치(NPU)[1] 등 모바일 기기부터 구글 클라우드 플랫폼의 텐서처리장치(TPU) 등 클라우드 컴퓨팅 서버에 이르기까지 다양하다.[2]
DLP의 목표는 딥러닝 알고리즘에 대해 일반 중앙처리장치(CPU)와 그래픽처리장치(GPU)보다 높은 효율성과 성능을 제공하는 것이다.대부분의 DLP는 높은 데이터 수준 병렬화, 데이터 재사용 패턴을 활용하기 위해 상대적으로 더 큰 온칩 버퍼/메모리, 그리고 심층 학습의 오류 완화를 위해 데이터 폭의 제한된 연산자를 활용한다.
역사
CPU/GPU 사용
초기에는 딥러닝 알고리즘을 수행하기 위해 일반 CPU를 채택했다.나중에, GPU는 딥러닝의 영역에 도입된다.예를 들어 2012년 알렉스 크리제프스키는 딥러닝 네트워크, 즉 ISLVRC-2012 대회의 챔피언을 차지한 [3]알렉스넷을 훈련시키기 위해 두 개의 GPU를 채택했다.딥러닝 알고리즘과 DLP에 대한 관심이 계속 증가함에 따라 GPU 제조업체들은 하드웨어(예: INT8 사업자)와 소프트웨어(예: DNN Library)에 딥러닝 관련 기능을 추가하기 시작한다.예를 들어, 엔비디아는 딥러닝 프로세싱을 가속화하기 위해 DLP인 튜링 텐서 코어(Turing Tensor Core)를 출시하기도 했다.
첫 번째 DLP
성능과 에너지 효율을 높이기 위해 도메인별 설계가 큰 관심을 끌기 시작한다.첸 외는 2014년 세계 최초의 DLP(DianNao for "전기 뇌"를 위한 중국어)[4]를 제안해 특히 심층 신경망을 가속화했다.DianNao는 3.02mm2와 485mW의 작은 풋프린트에서 452 Gop/s의 피크 성능을 제공한다.이후 후계자(DaDianNao, ShiDianNao[7], PuDianNao)[5][6]가 같은 그룹에 의해 제안되어 다이안나오 패밀리를[8] 형성한다.
꽃피는 DLP들
다이안나오 패밀리의 개척 작업에서 영감을 받아, 고효율화를 위해 심층 신경망의 특징을 활용하도록 최적화된 디자인을 가진 많은 DLP가 학계와 산업계 양쪽에서 제안되고 있다.ISCA 2016에서만 합격 논문의 15%(!)인 3개 세션이 모두 딥러닝에 관한 아키텍처 설계다.이 같은 노력에는 에이어리스[9](MIT), EIE[10](스탠포드), 미네르바[11](하버드), 학계의 스트라이프[12](토론토 대학), 업계에서는 TPU[13](구글), MLU[14](캠브리콘) 등이 포함된다.우리는 표 1에 대표작 몇 가지를 나열했다.
| 표 1.일반적인 DLP | |||||||
|---|---|---|---|---|---|---|---|
| 연도 | DLP | 기관 | 유형 | 연산 | 메모리 계층 | 컨트롤 | 최고 성능 |
| 2014 | 다이안나오[4] | ICT, CAS | 디지털의 | 벡터 MAC | 스크래치패드 | VLIW | 452 Gops(16비트) |
| 다디안나오[5] | ICT, CAS | 디지털의 | 벡터 MAC | 스크래치패드 | VLIW | 5.58 상단(16비트) | |
| 2015 | 시디안나오[6] | ICT, CAS | 디지털의 | 스칼라 MAC | 스크래치패드 | VLIW | 194 Gops(16비트) |
| 푸디안나오[7] | ICT, CAS | 디지털의 | 벡터 MAC | 스크래치패드 | VLIW | 1,056 Gops(16비트) | |
| 2016 | DnnWeaver | 조지아 테크 | 디지털의 | 벡터 MAC | 스크래치패드 | - | - |
| EIE[10] | 스탠퍼드 | 디지털의 | 스칼라 MAC | 스크래치패드 | - | 102 Gops(16비트) | |
| 아이리스[9] | MIT | 디지털의 | 스칼라 MAC | 스크래치패드 | - | 67.2 Gops(16비트) | |
| 프라임[15] | UCSB | 잡종의 | 프로세스 인메모리 | 레람 | - | - | |
| 2017 | TPU[13] | 구글 | 디지털의 | 스칼라 MAC | 스크래치패드 | CIC | 92 탑(8비트) |
| 파이프레이어[16] | 피츠버그의 U | 잡종의 | 프로세스 인메모리 | 레람 | - | ||
| FlexFlow | ICT, CAS | 디지털의 | 스칼라 MAC | 스크래치패드 | - | 420 홉() | |
| 2018 | 매리 | 조지아 테크 | 디지털의 | 스칼라 MAC | 스크래치패드 | - | |
| 퍼머DNN | 뉴욕 시립 대학교 | 디지털의 | 벡터 MAC | 스크래치패드 | - | 614.4 Gops(16비트) | |
| 2019 | FPSA | 칭화 시 | 잡종의 | 프로세스 인메모리 | 레람 | - | |
| 캄브리콘-F | ICT, CAS | 디지털의 | 벡터 MAC | 스크래치패드 | FISA | 14.9 상단(F1, 16비트) 956 탑(F100, 16비트) | |
DLP 아키텍처
딥러닝 알고리즘과 DLP의 급속한 진화와 함께, 많은 아키텍처가 탐험되었다.대략 DLP는 구현에 따라 디지털 회로, 아날로그 회로, 하이브리드 회로의 세 가지 범주로 분류할 수 있다.순수 아날로그 DLP는 거의 보이지 않기 때문에 디지털 DLP와 하이브리드 DLP를 소개한다.
디지털 DLP
DLP 아키텍처의 주요 구성요소는 대개 연산 구성요소, 온칩 메모리 계층 및 데이터 통신과 컴퓨팅 흐름을 관리하는 제어 로직을 포함한다.
연산 구성요소의 경우, 딥러닝에서 대부분의 연산을 벡터 연산으로 통합할 수 있기 때문에, 디지털 DLP에서 연산 구성요소를 구축하는 가장 일반적인 방법은 벡터 MAC[4][5][7] 또는 스칼라 MAC를 사용하는 MAC 기반(복수-축적) 조직이다.[13][6][9]일반 처리 장치의 SIMD나 SIMT보다는 이러한 MAC 기반 조직에서 딥러닝 도메인별 병렬화를 더 잘 탐구한다.메모리 계층과 관련하여, 딥러닝 알고리즘은 계산 구성요소에 충분한 데이터를 제공하기 위해 높은 대역폭을 필요로 하기 때문에, DLP는 대개 비교적 큰 크기(킬로바이트 또는 수 메가바이트)의 온칩 버퍼와 전용 온칩 데이터 재사용 전략 및 데이터 교환 전략을 채택하여 메모리에 대한 부담을 완화한다.ry 대역폭예를 들어 16인 벡터 MAC인 DianNao에는 16 × 16 × 2 = 512 16비트 데이터, 즉 계산 구성 요소와 버퍼 사이의 대역폭 요구사항이 거의 1024GB/s가 필요하다.온칩 재사용을 통해, 그러한 대역폭 요구사항은 대폭 감소한다.[4]일반 처리 장치에서 널리 사용되는 캐시 대신, DLP는 딥러닝 알고리즘에서 비교적 규칙적인 데이터 액세스 패턴을 활용함으로써 더 높은 데이터 재사용 기회를 제공할 수 있기 때문에 항상 스크래치패드 메모리를 사용한다.제어 논리와 관련해서는 딥러닝 알고리즘이 극적인 속도로 계속 진화함에 따라 DLP는 전용 ISA(Instruction set architecture)를 활용해 딥러닝 도메인을 유연하게 지원하기 시작한다.처음에 DianNao는 각 명령이 DNN에서 레이어를 마칠 수 있는 VLIW 스타일의 명령 세트를 사용했다. Cambricon은[17] 10개 이상의 딥러닝 알고리즘을 지원할 수 있는 최초의 딥러닝 도메인별 ISA를 소개한다.TPU는 또한 CICS 스타일 ISA의 5가지 주요 지시사항을 공개한다.
하이브리드 DLP
하이브리드 DLP는 높은 효율성으로 인해 DNN 추론과 교육 가속화를 위해 등장하고 있다.PIM(Processing-In-Memory) 아키텍처는 하이브리드 DLP의 가장 중요한 유형 중 하나이다.PIM의 핵심 설계 개념은 컴퓨팅과 메모리의 간격을 메우는 것으로, 1) 연산 구성요소를 메모리 셀, 컨트롤러 또는 메모리 칩으로 이동하여 메모리 벽 문제를 완화한다.[16][18][19]그러한 아키텍처는 데이터 경로를 크게 단축하고 훨씬 높은 내부 대역폭을 활용하므로 매력적인 성능 향상을 초래한다.2) 컴퓨팅 장치를 채택하여 고효율 DNN 엔진을 구축한다.2013년에 HP Lab은 컴퓨팅에 ReRAM 크로스바 구조를 채택하는 놀라운 능력을 입증했다.[20]이 작업에 영감을 받아 ReRAM,[15][21][22][16] 위상변화 메모리 [18][23][24]등을 기반으로 한 새로운 아키텍처와 시스템 설계를 탐구하는 엄청난 작업이 제안된다.
GPU 및 FPGA
DLP에도 불구하고 GPU와 FPGA는 딥러닝 알고리즘의 실행 속도를 높이기 위한 가속기로도 활용되고 있다.예를 들어 오크리지 국립연구소용 IBM의 슈퍼컴퓨터 서밋에는 27,648장의 엔비디아 테슬라 V100 카드가 들어 있어 딥러닝 알고리즘을 가속화하는 데 사용할 수 있다.[25]마이크로소프트(MS)는 아즈레어에 수 톤의 FPGA를 활용한 딥러닝 플랫폼을 구축해 실시간 딥러닝 서비스를 지원한다.[26]표 2에서는 목표, 성능, 에너지 효율성 및 유연성 측면에서 DLP를 GPU 및 FPGA와 비교한다.
| 대상 | 퍼포먼스 | 에너지 효율 | 유연성 | |
|---|---|---|---|---|
| DLP | 심오한 학문 | 높은 | 높은 | 도메인별 |
| FPGA | 전부 | 낮은 | 온건한 | 일반적 |
| GPUs | 행렬 연산 | 온건한 | 낮은 | 매트릭스 응용 프로그램 |
딥러닝을 위한 원자성 얇은 반도체
원자적으로 얇은 반도체는 로직 운영과 데이터 저장 모두에 동일한 기본 장치 구조를 사용하는 에너지 효율적인 딥러닝 하드웨어에 유망한 것으로 간주된다.마레가 등은 2020년 플로팅게이트 현장효과 트랜지스터(FGFET)를 기반으로 로직인메모리 소자와 회로를 개발하기 위한 대면적 활성채널 재료로 실험을 발표했다.[27]반도체 몰리브덴 이설화 등 2차원 소재를 사용해 FGFET를 메모리 요소로 논리 연산을 수행할 수 있는 빌딩 블록으로 정밀하게 튜닝한다.[27]
통합 광자 텐서 코어
2021년, J. Feldmann 외.는 병렬 경련 처리를 위한 통합 광 하드웨어 가속기를 제안했다.[28]저자는 전자적 광자에 비해 통합광자의 두 가지 주요 장점인 (1) 주파수 빗과 함께 파장분할 멀티플렉싱을 통한 대규모 병렬 데이터 전송과 (2) 극도로 높은 데이터 변조 속도를 파악한다.[28]이들의 시스템은 초당 수조 번의 다중 누적 작동을 실행할 수 있으며, 이는 데이터 집약적인 AI 애플리케이션에서 통합 광자의 가능성을 나타낸다.[28]
벤치마크
벤치마킹은 설계자와 실무자 모두가 다양한 아키텍처를 비교하고, 이들의 병목현상을 파악하며, 그에 상응하는 시스템/건축 최적화를 수행할 수 있는 새로운 하드웨어 아키텍처 설계의 기초로서 오랫동안 제공되어 왔다.표 3은 2012년부터 날짜 순으로 DLP에 대한 몇 가지 일반적인 벤치마크를 나열한다.
| 연도 | NN 벤치마크 | 소속 | 마이크로벤치마크 수 | 구성요소 벤치마크 수 | 애플리케이션 벤치마크 수 |
|---|---|---|---|---|---|
| 2012 | 벤치NN | ICT, CAS | 해당 없음 | 12 | 해당 없음 |
| 2016 | 패텀 | 하버드 | 해당 없음 | 8 | 해당 없음 |
| 2017 | 벤치IP | ICT, CAS | 12 | 11 | 해당 없음 |
| 2017 | 여명벤치 | 스탠퍼드 | 8 | 해당 없음 | 해당 없음 |
| 2017 | 딥벤치 | 바이두 | 4 | 해당 없음 | 해당 없음 |
| 2018 | MLPerf | 하버드, 인텔, 구글 등 | 해당 없음 | 7 | 해당 없음 |
| 2019 | 아이벤치 | ICT, CAS, 알리바바 등 | 12 | 16 | 2 |
| 2019 | NNBench-X | UCSB | 해당 없음 | 10 | 해당 없음 |
참고 항목
참조
- ^ "HUAWEI Reveals the Future of Mobile AI at IFA".
- ^ P, JouppiNorman; YoungCliff; PatilNishant; PattersonDavid; AgrawalGaurav; BajwaRaminder; BatesSarah; BhatiaSuresh; BodenNan; BorchersAl; BoyleRick (2017-06-24). "In-Datacenter Performance Analysis of a Tensor Processing Unit". ACM SIGARCH Computer Architecture News. 45 (2): 1–12. doi:10.1145/3140659.3080246.
- ^ Krizhevsky, Alex; Sutskever, Ilya; Hinton, Geoffrey E (2017-05-24). "ImageNet classification with deep convolutional neural networks". Communications of the ACM. 60 (6): 84–90. doi:10.1145/3065386.
- ^ a b c d Chen, Tianshi; Du, Zidong; Sun, Ninghui; Wang, Jia; Wu, Chengyong; Chen, Yunji; Temam, Olivier (2014-04-05). "DianNao". ACM SIGARCH Computer Architecture News. 42 (1): 269–284. doi:10.1145/2654822.2541967. ISSN 0163-5964.
- ^ a b c Chen, Yunji; Luo, Tao; Liu, Shaoli; Zhang, Shijin; He, Liqiang; Wang, Jia; Li, Ling; Chen, Tianshi; Xu, Zhiwei; Sun, Ninghui; Temam, Olivier (December 2014). "DaDianNao: A Machine-Learning Supercomputer". 2014 47th Annual IEEE/ACM International Symposium on Microarchitecture. IEEE: 609–622. doi:10.1109/micro.2014.58. ISBN 978-1-4799-6998-2. S2CID 6838992.
- ^ a b c Du, Zidong; Fasthuber, Robert; Chen, Tianshi; Ienne, Paolo; Li, Ling; Luo, Tao; Feng, Xiaobing; Chen, Yunji; Temam, Olivier (2016-01-04). "ShiDianNao". ACM SIGARCH Computer Architecture News. 43 (3S): 92–104. doi:10.1145/2872887.2750389. ISSN 0163-5964.
- ^ 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". ACM SIGARCH Computer Architecture News. 43 (1): 369–381. doi:10.1145/2786763.2694358. ISSN 0163-5964.
- ^ Chen, Yunji; Chen, Tianshi; Xu, Zhiwei; Sun, Ninghui; Temam, Olivier (2016-10-28). "DianNao family". Communications of the ACM. 59 (11): 105–112. doi:10.1145/2996864. ISSN 0001-0782. S2CID 207243998.
- ^ a b c Chen, Yu-Hsin; Emer, Joel; Sze, Vivienne (2017). "Eyeriss: A Spatial Architecture for Energy-Efficient Dataflow for Convolutional Neural Networks". IEEE Micro: 1. doi:10.1109/mm.2017.265085944. hdl:1721.1/102369. ISSN 0272-1732.
- ^ a b Han, Song; Liu, Xingyu; Mao, Huizi; Pu, Jing; Pedram, Ardavan; Horowitz, Mark A.; Dally, William J. (2016-02-03). EIE: Efficient Inference Engine on Compressed Deep Neural Network. OCLC 1106232247.
- ^ Reagen, Brandon; Whatmough, Paul; Adolf, Robert; Rama, Saketh; Lee, Hyunkwang; Lee, Sae Kyu; Hernandez-Lobato, Jose Miguel; Wei, Gu-Yeon; Brooks, David (June 2016). "Minerva: Enabling Low-Power, Highly-Accurate Deep Neural Network Accelerators". 2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA). Seoul: IEEE: 267–278. doi:10.1109/ISCA.2016.32. ISBN 978-1-4673-8947-1.
- ^ Judd, Patrick; Albericio, Jorge; Moshovos, Andreas (2017-01-01). "Stripes: Bit-Serial Deep Neural Network Computing". IEEE Computer Architecture Letters. 16 (1): 80–83. doi:10.1109/lca.2016.2597140. ISSN 1556-6056. S2CID 3784424.
- ^ a b c "In-Datacenter Performance Analysis of a Tensor Processing Unit Proceedings of the 44th Annual International Symposium on Computer Architecture". doi:10.1145/3079856.3080246. S2CID 4202768.
{{cite journal}}:Cite 저널은 필요로 한다.journal=(도움말) - ^ "MLU 100 intelligence accelerator card".
- ^ a b Chi, Ping; Li, Shuangchen; Xu, Cong; Zhang, Tao; Zhao, Jishen; Liu, Yongpan; Wang, Yu; Xie, Yuan (June 2016). "PRIME: A Novel Processing-in-Memory Architecture for Neural Network Computation in ReRAM-Based Main Memory". 2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA). IEEE: 27–39. doi:10.1109/isca.2016.13. ISBN 978-1-4673-8947-1.
- ^ a b c Song, Linghao; Qian, Xuehai; Li, Hai; Chen, Yiran (February 2017). "PipeLayer: A 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.
- ^ Liu, Shaoli; Du, Zidong; Tao, Jinhua; Han, Dong; Luo, Tao; Xie, Yuan; Chen, Yunji; Chen, Tianshi (June 2016). "Cambricon: An Instruction Set Architecture for Neural Networks". 2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA). IEEE: 393–405. doi:10.1109/isca.2016.42. ISBN 978-1-4673-8947-1.
- ^ 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 (June 2018). "Equivalent-accuracy accelerated neural-network training using analogue memory". Nature. 558 (7708): 60–67. doi:10.1038/s41586-018-0180-5. ISSN 0028-0836. PMID 29875487. S2CID 46956938.
- ^ 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 (December 2017). "A 16Mb dual-mode ReRAM macro with sub-14ns computing-in-memory and memory functions enabled by self-write termination scheme". 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.
- ^ Yang, J. Joshua; Strukov, Dmitri B.; Stewart, Duncan R. (January 2013). "Memristive devices for computing". Nature Nanotechnology. 8 (1): 13–24. doi:10.1038/nnano.2012.240. ISSN 1748-3395. PMID 23269430.
- ^ Shafiee, Ali; Nag, Anirban; Muralimanohar, Naveen; Balasubramonian, Rajeev; Strachan, John Paul; Hu, Miao; Williams, R. Stanley; Srikumar, Vivek (2016-10-12). "ISAAC". ACM SIGARCH Computer Architecture News. 44 (3): 14–26. doi:10.1145/3007787.3001139. ISSN 0163-5964. S2CID 6329628.
- ^ Ji, Yu Zhang, Youyang Xie, Xinfeng Li, Shuangchen Wang, Peiqi Hu, Xing Zhang, Youhui Xie, Yuan (2019-01-27). FPSA: A Full System Stack Solution for Reconfigurable ReRAM-based NN Accelerator Architecture. OCLC 1106329050.
{{cite book}}: CS1 maint : 복수이름 : 작성자 목록(링크) - ^ Nandakumar, S. R.; Boybat, Irem; Joshi, Vinay; Piveteau, Christophe; Le Gallo, Manuel; Rajendran, Bipin; Sebastian, Abu; Eleftheriou, Evangelos (November 2019). "Phase-Change Memory Models for Deep Learning Training and Inference". 2019 26th IEEE International Conference on Electronics, Circuits and Systems (ICECS). IEEE: 727–730. doi:10.1109/icecs46596.2019.8964852. ISBN 978-1-7281-0996-1. S2CID 210930121.
- ^ 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). "Accurate deep neural network inference using computational phase-change memory". Nature Communications. 11 (1): 2473. arXiv:1906.03138. doi:10.1038/s41467-020-16108-9. ISSN 2041-1723. PMC 7235046. PMID 32424184.
- ^ "Summit: Oak Ridge National Laboratory's 200 petaflop supercomputer".
- ^ "Microsoft unveils Project Brainwave for real-time AI".
- ^ a b Marega, Guilherme Migliato; Zhao, Yanfei; Avsar, Ahmet; Wang, Zhenyu; Tripati, Mukesh; Radenovic, Aleksandra; Kis, Anras (2020). "Logic-in-memory based on an atomically thin semiconductor". Nature. 587 (2): 72–77. doi:10.1038/s41586-020-2861-0. PMC 7116757. PMID 33149289.
- ^ a b c Feldmann, J.; Youngblood, N.; Karpov, M.; et al. (2021). "Parallel convolutional processing using an integrated photonic tensor". Nature. 589 (2): 52–58. arXiv:2002.00281. doi:10.1038/s41586-020-03070-1.