TY - GEN
T1 - Hardware-Software Co-Design for an Analog-Digital Accelerator for Machine Learning
AU - Ambrosi, Joao
AU - Ankit, Aayush
AU - Antunes, Rodrigo
AU - Chalamalasetti, Sai Rahul
AU - Chatterjee, Soumitra
AU - El Hajj, Izzat
AU - Fachini, Guilherme
AU - Faraboschi, Paolo
AU - Foltin, Martin
AU - Huang, Sitao
AU - Hwu, Wen Mei
AU - Knuppe, Gustavo
AU - Lakshminarasimha, Sunil Vishwanathpur
AU - Milojicic, Dejan
AU - Parthasarathy, Mohan
AU - Ribeiro, Filipe
AU - Rosa, Lucas
AU - Roy, Kaushik
AU - Silveira, Plinio
AU - Strachan, John Paul
N1 - Publisher Copyright:
© 2018 IEEE.
PY - 2018/7/2
Y1 - 2018/7/2
N2 - The increasing deployment of machine learning at the core and at the edge for applications such as video and image recognition has resulted in a number of special purpose accelerators in this domain. However, these accelerators do not have full end-to-end software stacks for application development, resulting in hard-to-develop, proprietary, and suboptimal application programming and executables. In this paper, we describe software stack for a memristor-based hybrid (analog-digital)accelerator. The software stack consists of an ONNX converter, an application optimizer, a compiler, a driver, and emulators. The ONNX converter helps leveraging interoperable neural network models developed on frameworks that support ONNX, such as CNTK, Caffe2, Tensorflow, etc. The application optimization layer adapts these interoperable models to the underlying hardware. The compiler generates executable ISA code that the underlying accelerator can run. Finally, the emulator enables software execution without actual hardware which enables hardware design space exploration and testing. By building a software stack, we have made hybrid memristor-based ML accelerators more accessible to software developers, enabled a generation of better-performing executables, and created an environment that can be leveraged by a multitude of existing neural network models developed using other frameworks to target these accelerators.
AB - The increasing deployment of machine learning at the core and at the edge for applications such as video and image recognition has resulted in a number of special purpose accelerators in this domain. However, these accelerators do not have full end-to-end software stacks for application development, resulting in hard-to-develop, proprietary, and suboptimal application programming and executables. In this paper, we describe software stack for a memristor-based hybrid (analog-digital)accelerator. The software stack consists of an ONNX converter, an application optimizer, a compiler, a driver, and emulators. The ONNX converter helps leveraging interoperable neural network models developed on frameworks that support ONNX, such as CNTK, Caffe2, Tensorflow, etc. The application optimization layer adapts these interoperable models to the underlying hardware. The compiler generates executable ISA code that the underlying accelerator can run. Finally, the emulator enables software execution without actual hardware which enables hardware design space exploration and testing. By building a software stack, we have made hybrid memristor-based ML accelerators more accessible to software developers, enabled a generation of better-performing executables, and created an environment that can be leveraged by a multitude of existing neural network models developed using other frameworks to target these accelerators.
UR - http://www.scopus.com/inward/record.url?scp=85063143566&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85063143566&partnerID=8YFLogxK
U2 - 10.1109/ICRC.2018.8638612
DO - 10.1109/ICRC.2018.8638612
M3 - Conference contribution
AN - SCOPUS:85063143566
T3 - 2018 IEEE International Conference on Rebooting Computing, ICRC 2018
BT - 2018 IEEE International Conference on Rebooting Computing, ICRC 2018
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 2018 IEEE International Conference on Rebooting Computing, ICRC 2018
Y2 - 7 November 2018 through 9 November 2018
ER -