Recently there has been more and more report about installation issues: - Installing Triton before upgrading pytorch can create some issues because Triton uses some torch headers - llvm-10-dev not available on some platform; llvm-11-dev not available on e.g. Ubuntu. absence of nightly builds This PR should fix all these issues. Some CMake tricks are used to download and install llvm at build time. Triton Python bindings were modified to remove dependence on pytorch ops. Midnight CI job added to generate binary wheels for all Triton version and update them on pypi's new triton-nightly project. This PR will also make it very easy to use LLVM forks in the future for whatever needs we have.
16 lines
390 B
C++
16 lines
390 B
C++
#include <pybind11/pybind11.h>
|
|
|
|
void init_superblocking(pybind11::module &m);
|
|
void init_torch_utils(pybind11::module &m);
|
|
void init_triton(pybind11::module &m);
|
|
void init_cutlass(pybind11::module &m);
|
|
|
|
PYBIND11_MODULE(libtriton, m) {
|
|
m.doc() = "Python bindings to the C++ Triton API";
|
|
init_triton(m);
|
|
init_superblocking(m);
|
|
#ifdef WITH_CUTLASS_BINDINGS
|
|
init_cutlass(m);
|
|
#endif
|
|
}
|