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
- ./lib/tensor_runtime.ll
-
./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