Enumerating Hardware-Software Splits with Program Rewriting

02/29/2020
by   Gus Smith, et al.
0

A core problem in hardware-software codesign is in the sheer size of the design space. Without a set ISA to constrain the hardware-software interface, the design space explodes. This work presents a strategy for managing the massive hardware-software design space within the domain of machine learning inference workloads and accelerators. We first propose EngineIR, a new language for representing machine learning hardware and software in a single program. Then, using equality graphs – a data structure from the compilers literature – we suggest a method for efficiently enumerating the design space by performing rewrites over our representation.

READ FULL TEXT

page 1

page 2

page 3

research
11/12/2016

Can Broken Multicore Hardware be Mended?

A suggestion is made for mending multicore hardware, which has been diag...
research
08/24/2021

METRO: A Software-Hardware Co-Design of Interconnections for Spatial DNN Accelerators

Tiled spatial architectures have proved to be an effective solution to b...
research
07/07/2017

Skin Temperature Measurement

This report represents the design and implementation of a skin temperatu...
research
04/08/2021

Enabling Cross-Domain Communication: How to Bridge the Gap between AI and HW Engineers

A key issue in system design is the lack of communication between hardwa...
research
10/05/2020

Learned Hardware/Software Co-Design of Neural Accelerators

The use of deep learning has grown at an exponential rate, giving rise t...
research
05/04/2021

HASCO: Towards Agile HArdware and Software CO-design for Tensor Computation

Tensor computations overwhelm traditional general-purpose computing devi...
research
06/23/2022

EmuNoC: Hybrid Emulation for Fast and Flexible Network-on-Chip Prototyping on FPGAs

Networks-on-Chips (NoCs) recently became widely used, from multi-core CP...

Please sign up or login with your details

Forgot password? Click here to reset