-
-
Notifications
You must be signed in to change notification settings - Fork 132
GSoC 2021 Ideas Page
Hameer Abbasi edited this page Mar 14, 2021
·
2 revisions
- LLVM Back-end for the Tensor Algebra Compiler (TACO)
-
Description: The TACO project does some JIT compilation in an ad-hoc manner by writing out
*.cfiles, compiling them and dynamically linking them into the executable. We would like to have a back-end for TACO that produces LLVM bytecode using the LLVM C++ API, and also compiles it in-memory. - Skills: LLVM bytecode, LLVM C++ API
- Difficulty Level: Hard
-
Related Readings/Links:
- The research paper that moved to the current method of code generation.
- Some partial work on the back-end so far.
- A pull request with an old LLVM version.
- Potential mentors: Guilherme Leobas (@guilhermeleobas), Hameer Abbasi (@hameerabbasi)
-
Description: The TACO project does some JIT compilation in an ad-hoc manner by writing out
- Completion of Python Bindings for the TACO compiler
- Description: The TACO project has partial Python bindings, but these are missing tests and API coverage. We'd like to add some tests and more API coverage to the Python bindings.
-
Skills: C++/
pybind11knowledge - Difficulty Level: Medium
-
Related Readings/Links:
- The documentation for TACO.
- The documentation for
pybind11. - The source you'll have to change.
- Potential mentors: Dale Tovar (@daletovar), Hameer Abbasi (@hameerabbasi)
- Creating a
conda-forgepackage for TACO-
Description: The TACO project has no
conda-forgepackage. We'd like to have one so we can depend on it in PyData/Sparse -
Skills: CMake/
condapackaging knowledge - Difficulty Level: Medium
-
Related Readings/Links:
- The relevant documentation for
conda-forge. - The main
CMakeLists.txtfor the project.
- The relevant documentation for
- Potential mentors: John Lee (@leej3), Hameer Abbasi (@hameerabbasi)
-
Description: The TACO project has no
- CSR/CSC format support and performance
-
Description: The
sparseproject has theGCXSformat, which is a generalization ofCSR/CSC. Ideally, we'd like to special case it forCSR/CSCas well as have better performance for certain operations. - Skills: Python knowledge, data structures and algorithms
- Difficulty Level: Easy
-
Related Readings/Links:
- The documentation for
GCXS. - The source tree for
GCXS.
- The documentation for
- Potential mentors: Dale Tovar (@daletovar), Hameer Abbasi (@hameerabbasi)
-
Description: The