An emulator for the hierarchical fibertree abstraction for tensors. For a description of the concepts and some some designs rendered in a simplified version of this system see sections 8.2 and 8.3 of the book "Efficient Processing of Deep Neural Networks" [1].
To install an editable copy in your home directory run the following in the root directory of a clone of this repository:
% python3 -m pip install --user -e .
To install from the remote git repository, run the following:
% python3 -m pip install git+https://github.com/Fibertree-Project/fibertree
To install with Cython (fibertree.core
in Cython, remaining files in Python):
python setup.py build_ext --inplace
Clone fibertree notebooks for some example fibertree-based algorithms in Jupypter notebooks.
You can also run the included examples from the command line. For example::
% cd ./examples/scripts/basic
% python3 dot-product.py
Other examples are in ./examples/scripts/...
% cd ./test
% python3 -m unittest discover [-v]
[1] "Efficient Processing of Deep Neural Networks", Vivienne Sze, Yu-Hsin Chen, Tien-Ju Yang, and Joel S. Emer, Synthesis Lectures on Computer Architecture, June 2020, 15:2, 1-341.