ELECTRONIC DESIGN AUTOMATION - EDA
Extending the Open-source TVM Compiler to Deploy Deep Neural Networks on the GreenWaves' GAP9 Platform
Tesi esterna in azienda
Parole chiave ARTIFICIAL INTELLIGENCE, C, COMPILERS, CONVOLUTIONAL NEURAL NETWORKS, DEEP LEARNING, DEEP NEURAL NETWORKS, EMBEDDED SYSTEMS, ENERGY EFFICIENCY, FIRMWARE, LOW POWER, MICROCONTROLLERS, MULTI-CORE, PARALLEL COMPUTING, SOFTWARE, SOFTWARE ACCELERATION, TRANSFORMERS, TVM
Riferimenti DANIELE JAHIER PAGLIARI
Riferimenti esterni Marco Fariselli (Greenwaves Technologies)
Alessio Burrello (Politecnico di Torino)
Gruppi di ricerca DAUIN - GR-06 - ELECTRONIC DESIGN AUTOMATION - EDA, ELECTRONIC DESIGN AUTOMATION - EDA, GR-06 - ELECTRONIC DESIGN AUTOMATION - EDA
Tipo tesi EXPERIMENTAL, SOFTWARE DEVELOPMENT
Descrizione Apache TVM is an open-source compiler for deep learning, which automates the conversion of high-level Python models (e.g. in Tensorflow or Pytorch) to optimzied code that runs on GPUs, CPUs, or accelerators. Recently uTVM has also brought support for embedded systems and low-power microcontrollers. In particular, many devices based on ARM microcontrollers are currently supported and achieve performances equal to the state of the art deep learning libraries, but with a code developed automatically by uTVM, thus reducing the programmer's effort.
The aim of this thesis is to extend TVM support to a multi-core and heterogeneous platforms based on RISC-V microcontrollers.
The platform is GreenWaves' GAP9, which currently (Dec. 2022) achieves a record energy efficiency on the most popular set of benchmarks for efficient Deep Learning inference: https://greenwaves-technologies.com/lowest-energy-consumption-on-all-mlperf-tiny-v1-0-benchmarks/
The goal of this thesis is the integration between TVM and NN-tool, a proprietary tool for deployment on GAP9. The outcome of the thesis should be a tool that exploits the TVM framework to read the deep neural network high-level model, parses it, and uses NN-tool to produce code specific for GAP9. The goal is to produce a general tool that match the performance of existing, platform-specific tools.
Interested candidates must send an email to email@example.com attaching their CV and exams' transcript with scores.
Conoscenze richieste Required skills include C and python programming. Further, a basic knowledge of computer architectures and embedded systems is necessary. Desired (but not required) skills include some familiarity with basic machine/deep learning concepts and corresponding models.
Note Thesis in collaboration with the company GreenWaves technologies, and the research group of Prof. Luca Benini at the University of Bologna and ETH Zurich, and Greenwaves Technologies.
Scadenza validita proposta 14/12/2023 PROPONI LA TUA CANDIDATURA