---
# System prepended metadata

title: EPSRC Proposal

---

# EPSRC Proposal

## Reasoning and Formalising Large-Scale Cross-Platform Machine Learning

### Introduction
* Machine learning is popular
* Large-scale machine learning requires cross-platform
* Inference is still single-platform
* People try to fit software into a fixed hardware architecture (?)

### Background
* Hardware Platform for Inference
    * Paul Chow's Alveo Cluster
    * EVEREST
    * RIKEN

* Machine Learning Compiler
    * FPGAConvNet from ONNX
    * HeteroCL from TensorFlow
    * CIRCT from PyTorch
 
* Cross-Platform Compiler
    * Paul Chow's tool flow
    * ...

### Research Objectives/Challenges
We aim to answer the following questions from this project:

* How to define both software program and hardware architecture in the same software model?
* How to model multiple platform instances in a unified system?
    * Efforts made for formalisations of individual instances
    * But these formalisations cannot be directly adapted into a unified system
    * => Build a unified abstraction for cross-platform computing
* How to formalise the problem of mapping ML models onto the system?
    * Hardware mapping has been formalised dedicated for single instances locally
    * No global performance model for across platform
    * => Build reasoning enginee for the hardware efficiency from the abstraction
* How to reason the hardware efficiency based on the formulation?
    * Can we evaluate the hardware efficiency using the limits given by our model?
    * Can we identify the system bottleneck and optimise the solution with the help of our model?
    * => Demonstrate a few ML applications adapted by the model

### National Importantce
* Providing theoretical limits for industrial engineers and guiding them to improve their implementation by automated reasoning

### Contribution to Knowledge
* Help us to understand the theoretical limits of cross-platform ML and guides designers/tools to optimise the hardware efficiency.

### Possible Collaboration
* We will focus on the formalisation of abstraction and reasoning
* VAST group at UCLA will help on mapping a series of applications onto the hardware through the abstraction