Coder Social home page Coder Social logo

ebugger / optimus Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sheacai/optimus

0.0 0.0 0.0 51 KB

This is the implementation of the paper [Optimus: Towards Optimal Layer-Fusion on Deep Learning Processors].

License: MIT License

Shell 0.07% Python 99.88% Dockerfile 0.05%

optimus's Introduction

Optimus

DOI

This is the implementation of the paper [Optimus: Towards Optimal Layer-Fusion on Deep Learning Processors], which has accepted by LCTES2021.

Getting Started Guide

Start from Source Code

  1. Create virtual env
conda create --name optimusEnv python=3.6
conda activate optimusEnv
  1. Install requirement
pip install -r requirements.txt
  1. Run a test
./test.sh
  1. To find out all the options
python ./fusion/tools/optimal_schedule_search.py --help

Experiments

  1. Run overall experiment to get the memory access and energy over multiple models The result will be stored in result/overall_experiment/. It will take more than ten minutes to complete this experiment.
python ./fusion/experiment/overall_experiment.py
  1. Run memory access analysis over multiple models The result will be stored in result/analysis/. It will take more than ten minutes to complete this experiment.
python ./fusion/experiment/analysis.py
  1. Evaluate the Impact of Batch Size The result will be stored in result/batch_size/.
python ./fusion/experiment/batch_size.py
  1. Evaluate the impact of on-chip memory space The result will be stored in result/buffer_size/.
python ./fusion/experiment/buffer_size.py
  1. Evaluate the impact of Dataflow This experiment supports the experiment results of section 4.2.5 in our paper, and the result will be stored in result/dataflow/.
python ./fusion/experiment/dataflow.py
  1. Evaluate the impact of PE-array and buffer The result will be stored in result/pe_array/.
python ./fusion/experiment/pe_array.py
  1. Evaluate the performance on different processors The result will be stored in result/processor/.
python ./fusion/experiment/processor.py

optimus's People

Contributors

sheacai avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.