Commit Graph

20 Commits

Author SHA1 Message Date
Philippe Tillet
2f80a98776 [BUILD] Added automatic nightly build releases to pip in CI; removed build-time dependence on LLVM and PyTorch (#77)
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.
2021-07-27 12:38:49 -07:00
Philippe Tillet
3ad0a4d7be [DOCS] Uncommented sphinx gallery 2021-07-27 12:38:49 -07:00
Philippe Tillet
a74919fa46 [DOCS] Improved index 2021-07-27 12:38:49 -07:00
Philippe Tillet
997e54e3bf [DOCS] Added non-tutorial documentation pages 2021-07-27 12:38:49 -07:00
Philippe Tillet
f4fb209dad [DOCS] Removed pip installation instruction as version on Pip is not
up-to-date
2021-07-27 12:38:49 -07:00
Philippe Tillet
92242ace2c [DOCS] Re-structured documentation hierarchy 2021-07-27 12:38:49 -07:00
Philippe Tillet
ca04da3575 [DOCS] Switched tutorials to Python and use Sphinx Gallery 2021-07-27 12:38:49 -07:00
Philippe Tillet
5172792543 [DOCS] Added .ipynb tutorials in docs 2021-07-27 12:38:49 -07:00
Philippe Tillet
0c13b8ff0e [DOCS] Updated and improved docs (#73) 2021-07-27 12:38:49 -07:00
Philippe Tillet
269ebc12e5 [PYTHON][TESTS][DOC] Various improvement of the API and code quality:
* Simplified `triton.kernel` API to achieve lower latency:
  > .data_ptr() must now be passed as kernel argument. No more implicit
conversion from torch.tensor
  > compilation options are now constant attributes, i.e., opt.d('VAR')
becomes opt.VAR
  > torch.device must now be passed explicitly to triton.kernel (no
longer inferred from torch.tensor arguments)
* C++ tests moved to `python/tests/`
* C++ tutorial created in `tutorials/`
* Python tutorial created in python/tutorials/
* Version changed to 1.0alpha
* No longer copying C++ headers into the Python package
* added python/triton/ops/ package for pre-written Triton ops
2021-07-27 12:38:48 -07:00
Philippe Tillet
32d615f8f8 [DOCS] Now specifying pip command in installation.rst 2021-07-27 12:38:48 -07:00
jack-willturner
180ed26b61 [DOCS] Transposition fix 2021-07-27 12:38:48 -07:00
jack-willturner
32819dea51 [DOCS] Matmul and vecadd working examples 2021-07-27 12:38:48 -07:00
Philippe Tillet
55c800e632 [DOCS] Fixed typo: triton.function -> torch.autograd.Function 2021-07-27 12:38:48 -07:00
Philippe Tillet
a5e3397e6e [DOCS] Made documentation consistent with the new kernel API 2021-07-27 12:38:48 -07:00
Philippe Tillet
69326ae6de [DOCS][TUTORIALS] Fixed typo 2021-07-27 12:38:48 -07:00
Philippe Tillet
97293440fc [DOC] Fixed formatting issues in tutorial 2021-07-27 12:38:48 -07:00
Philippe Tillet
5778eea546 [DOC] Added more tutorials 2021-07-27 12:38:48 -07:00
Philippe Tillet
12a621bb2f [DOC] Basic Sphynx skeleton 2021-07-27 12:38:48 -07:00
Philippe Tillet
6d7cf35123 History prior to this date belonged to the now deprecated ISAAC project, and was deleted to save space 2021-07-27 12:38:38 -07:00