https://github.com/tensor-compiler/taco-bench
Repository to reproduce the results from paper "The Tensor Algebra Compiler".
https://github.com/tensor-compiler/taco-bench
Last synced: 4 months ago
JSON representation
Repository to reproduce the results from paper "The Tensor Algebra Compiler".
- Host: GitHub
- URL: https://github.com/tensor-compiler/taco-bench
- Owner: tensor-compiler
- Created: 2017-07-03T14:13:03.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-09-01T18:12:18.000Z (almost 9 years ago)
- Last Synced: 2025-07-07T17:46:49.285Z (12 months ago)
- Language: C++
- Size: 61.5 KB
- Stars: 5
- Watchers: 3
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This repository contains benchmarks for taco and scripts to reproduce the results from the paper *The Tensor Algebra Compiler*.
# Build taco-bench
Tell taco-bench where taco is located:
export TACO_INCLUDE_DIR=/include
export TACO_LIBRARY_DIR=/lib
Build taco-bench with CMake 2.8.3 or greater:
cd
mkdir build
cd build
cmake ..
make
# Installing and building with other products
Do the following steps before you build taco-bench with cmake to benchmark against several libraries.
## EIGEN
1. Download and extract Eigen's source code from https://eigen.tuxfamily.org/dox/GettingStarted.html.
2. Specify the variable `EIGEN_DIR`.
## GMM++
1. Use the installation guide http://getfem.org/gmm/install.html.
2. Specify the variable `GMM_INCLUDE_DIR`.
## UBLAS
1. Follow the documentation to install ublas: http://www.boost.org/doc/libs/1_45_0/libs/numeric/ublas/doc/index.htm.
2. Specify the variable `UBLAS_INCLUDE_DIR`.
## OSKI
1. Follow the user guide to install and tune OSKI: http://bebop.cs.berkeley.edu/oski/downloads.html.
3. Specify `OSKI_INCLUDE_DIR` and `OSKI_LIBRARY_DIR`.
## POSKI
1. Follow the user guide to install and tune pOSKI: http://bebop.cs.berkeley.edu/poski/.
2. Specify `POSKI_INCLUDE_DIR` and `POSKI_LIBRARY_DIR`.
Note: Install first OSKI and then use this installation to install POSKI.
## MKL
1. Commercial licensed product from Intel: https://software.intel.com/en-us/mkl.
2. Specify `MKL_ROOT`.
Note: use the `mklvars.sh` script of Intel to set properly your environment.
# Benchmarking taco against your product
1. Modify CMakeList.txt: add an environment variable `YOUR`, compilation options, `YOUR_INCLUDE`, and `YOUR_LIBRARY` directories to your project.
2. Implement the expression using *your* project. Modify `your4taco.h` file.
3. Use the `TACO_BENCH` macro to benchmark and `validate` method to compare against expected results.