Skip to content
Snippets Groups Projects
user avatar
Akash Kothari authored
008c7b69
History

AppproxHPVM Tensor Runtime

Dependencies

  • CUDNN-7.0 or above
  • CUDA-9.1 or above
  • CUBLAS-9.1 or above - included with cuda-toolkit

Dependent Library Builds

cd ../gpu_profiler
mkdir lib
cmake ../
make

cd ../soc_simulator
mkdir lib
cmake ../
make

BUILD

source bin/setup_cuda_paths.sh
mkdir build
cd build
cmake ../
make

Directory Structure

  • ./tensor_runtime:

    • ./tensor_runtime/include/: Include files for Tensor Runtime
    • ./tensor_runtime/include/tensor_signatures.cc: Include file with Tensor RT signatures
      • NOTE: UPDATE this with updated API
    • ./tensor_runtime/src/: HPVM TensorRT sources
  • ./dnn_sources:

    • ./dnn_sources/src/${BENCH}.cc: Per Bench FULL-precision source
    • ./dnn_sources/src/half/${BENCH}.cc: Per Bench HALF-precision source
    • ./dnn_sources/src/promise/${BENCH}.cc: Per Bench Layer-API source
  • ./lib:

    • ./lib/tensor_runtime.ll
      • NOTE: generated from ./tensor_runtime/include/tensor_signatures.cc
    • ./lib/libtensor_runtime.a
      • NOTE: Linked against HPVM benchmarks
    • ./lib/libtensor_autotuner.a
      • NOTE: error-injection library linked with benchmarks
  • ./bin:

    • ./bin/install_runtime.sh: Script for moving Tensor RT files to ./lib
    • ./bin/run_autotuner.py: Python script for running Autotuner experiments
    • ./bin/setup_tyler_paths.sh: Tyler-specific path setup for Tensor RT
    • ./bin/setup_jetson.sh: Jetson board specific path setup for Tensor RT
    • ./bin/setup_cuda_paths.sh: Place-holder script for setting CUDA paths
    • ./bin/swing_selection.py: Script for hardware mapping
      • NOTE: Includes the L2,L1 norm mapping to hardware knobs
  • ./opentuner:

    • ./opentuner/autotuner/: Autotuner scripts
    • ./opentuner/autotuner/approxhpvm_tuner.py: Tuner script for ApproxHPVM binaries
    • ./opentuner/autotuner/promise_tuner.py: Tuner script for tuning PROMISE voltage levels