Skip to content

The codebase for "A Case for Generalizable DNN Cost Models for Mobile Devices" published at IISWC 2020

License

Notifications You must be signed in to change notification settings

iitm-sysdl/Generalizable-DNN-cost-models

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A Case for Generalizable DNN Cost Models for Mobile Devices [Paper][Slides][Videos]

@inproceedings{ganesan2020case,
  title={A Case for Generalizable DNN Cost Models for Mobile Devices},
  author={Ganesan, Vinod and Selvam, Surya and Sen, Sanchari and Kumar, Pratyush and Raghunathan, Anand},
  booktitle={2020 IEEE International Symposium on Workload Characterization (IISWC)},
  pages={169--180},
  year={2020},
  organization={IEEE}
}

Desigining generalizable cost model for many devices

Characterisation Framework

Use case: Collaborative Workload Characterization

Results

Android App

The android app is derived from the basic pytorch-demo-app, with custom enhancements and the integration of tflite-runtime. You can follow the steps provided by PyTorch to build the app. Stay tuned for more details on tweaking the app to generate inference time.

How to use our generalizable cost model?

Generate random efficient networks and generate tflite models.

cd char_framework/net_generator/mobileOptGen
python MobileGen.py

Learning a Cost Model

cd cost_model
python gen_cost_models.py --sampling_type SAMPLE --learning_type LEARN  --name NAME  --numSamples SAMPLE --model MODEL 
  • Command line options

--sampling_type (required): The sampling type required for choosing the Signature Set. "random", "mutual_info", "spearmanCorr", and "statistical" are valid choices.

--learning_type (required): The way in which the cost model is trained. "individual", "combined", and "collaborative" are valid choices.

--name (required): Name of the run.

--numSamples (required): Number of samples used to form the Signature Set.

--model (required): The cost model used. "xgb" and "lstm" are valid choices.

Requirements

  • Python 3+
  • XGBoost
  • Tensorflow 2+
  • PyTorch
  • ONNX
  • torchprofile
  • Android Studio (For measuring inference latency)

Slides

slides

Short Video

short video

Full Video

full video

About

The codebase for "A Case for Generalizable DNN Cost Models for Mobile Devices" published at IISWC 2020

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published