Commit Graph

80 Commits

Author SHA1 Message Date
Philippe Tillet
8c35bd775f [PYTHON] Added missing files for nn submodule 2020-02-24 17:58:24 -05:00
Philippe Tillet
67c633aa2d [PYTHON] Better packaging 2020-02-24 17:46:20 -05:00
Philippe Tillet
f2daff85d2 [GENERAL] Improved caching mechanism:
* Now computing hash in libtriton
* Now only compiling a single pytorch hook per function signature
2020-02-24 16:36:50 -05:00
Philippe Tillet
29c38b38e5 [PYTHON][OPS][EINSUM] Now throwing error for automatic differentiation
of extended einsum
2020-02-20 17:29:01 -05:00
Philippe Tillet
9693fe1441 [PYTHON][OP][EINSUM] simplified API 2020-02-19 23:42:22 -05:00
Philippe Tillet
c30c4861be [PYTHON][OPS][EINSUM] Added support for inner tensor strides 2020-02-19 11:50:17 -05:00
Philippe Tillet
7621aeda3f [CODEGEN][TRANSFORM][PEEPHOLE] Fixed bug in *1 multiplication 2020-02-19 00:18:55 -05:00
Philippe Tillet
304b003969 [PYTHON][EXAMPLES] Removed obsolete files 2020-02-18 12:26:06 -05:00
Philippe Tillet
d11d2db6ee [PYTHON][EINSUM] Now handling reduction sizes that are not a multiple of
TK
2020-02-17 13:52:58 -05:00
Philippe Tillet
fcdc65ffb0 [PYTHON][OPS][EINSUM] Added support for masked accumulator 2020-02-13 18:11:12 -05:00
Philippe Tillet
6a4d42c1b8 [PYTHON][CORE] Deprecating Tensorflow support 2020-02-10 04:20:33 -05:00
Philippe Tillet
5a3c30148e [PYTHON][EXAMPLES] Changed shape of einsum examples 2020-02-06 13:57:30 -05:00
Philippe Tillet
3e92901bd5 [TRITON][PYTHON] Cleaned up API 2020-02-05 19:44:19 -05:00
Philippe Tillet
2fcf5cec5b [TRITON][CODEGEN] Fixed flawed assert() 2020-01-24 15:25:00 -05:00
Philippe Tillet
db941161ed [PYTHON][EXAMPLES] Cleaned self-attention benchmarks 2020-01-22 18:09:00 -05:00
Philippe Tillet
ce7a00674a [PYTHON][EXAMPLES] Added self-attention example using triton.ops.einsum 2020-01-21 16:45:04 -05:00
Philippe Tillet
78b98fb7cf [GENERAL] Cleaned polymorphic structure of layouts analysis pass 2020-01-21 11:38:39 -05:00
Philippe Tillet
fbf2a3f56f [CODEGEN][TRANSFORM] some bug-fixes for FP32 einsum 2020-01-20 12:42:53 -05:00
Philippe Tillet
f278d9741a [GENERAL] Merged einsum feature branch. Various feature, performance
improvements and bugfixes:

* Added preliminary support for extended Einstein summation in PyTriton
* Significant performance improvement on FP32 kernels containing matrix
multiplication
* Added re-coalescing pass for FP16 kernels containing matrix
multiplication
* Various bugfixes
2020-01-20 12:42:48 -05:00
Philippe Tillet
50a52df489 [PYTHON][OPS] Convolution: Some cleaning of Triton-C kernel 2019-11-01 11:21:30 -04:00
Philippe Tillet
f4bbbbe5e4 [PYTHON][OPS] Bugfix in conv fprop 2019-11-01 00:43:02 -04:00
Philippe Tillet
739a8d9061 some work on conv 2019-10-31 18:08:27 -04:00
Philippe Tillet
91a2fd463b [PYTHON][TENSORFLOW] More bugfixes for forward/backward signatures 2019-10-31 01:49:30 -04:00
Philippe Tillet
93a86d4fc6 [PYTHON][TENSORFLOW] Signature of function.forward() does not have to
match signature of kernel anymore
2019-10-30 20:29:23 -04:00
Philippe Tillet
e0fe8d9058 [PYTHON][TENSORFLOW] More work 2019-10-30 18:39:58 -04:00
Philippe Tillet
fd09f9c99d fixup 2019-10-30 13:48:55 -04:00
Philippe Tillet
9b0f1a0807 more stuff 2019-10-30 13:44:31 -04:00
Philippe Tillet
bf3dc63858 [PYTHON] Removed dead code for alloc_empty and register_scalar 2019-10-30 10:37:30 -04:00
Philippe Tillet
f4fcaf84df [PYTHON][EXAMPLES] Added example for batchnorm 2019-10-30 01:49:42 -04:00
Philippe Tillet
2b9355c9e4 [PYTHON][TENSORFLOW] Got rid of alloc_empty entirely; now doing
generating allocation code inside the tensorflow op
2019-10-30 01:38:30 -04:00
Philippe Tillet
d65a94c768 [PYTHON][OPS] Added batch normalization op 2019-10-29 17:29:11 -04:00
Philippe Tillet
d9eacf937c [PYTHON][FUNCTION] Now using common grad output format for both
tensorflow and pytorch
2019-10-29 14:09:40 -04:00
Philippe Tillet
76651a065f [PYTHON][EXAMPLES] Better einsum example 2019-10-29 12:56:58 -04:00
Philippe Tillet
448f4433d9 [PYTHON][KERNEL] Enforcing shapes to be known at compile-time for
TensorFlow Graph Execution
2019-10-29 00:48:53 -04:00
Philippe Tillet
e9c787ef05 [PYTHON][EINSUM] Added support for FP16 2019-10-28 14:07:17 -04:00
Philippe Tillet
0ec213547c [PYTHON][KERNEL] Added benchmarking functionalities for kernels 2019-10-28 00:30:04 -04:00
Philippe Tillet
e11557855f [PYTHON] [OPS] Added einsum implementation 2019-10-26 22:14:50 -04:00
Philippe Tillet
655f43fb5b more work 2019-10-26 15:10:19 -04:00
Philippe Tillet
76adcb755a [PYTHON][EXAMPLES] Tentative support for einsum with transpositions 2019-10-25 19:01:21 -04:00
Philippe Tillet
b615af2e7e [codegen] [generator] fixed issue when tile size is 1 along one or more
dimensions
2019-10-25 14:22:28 -04:00
Philippe Tillet
943bf41b5c [python] [op] added Triton NT einsum 2019-10-21 23:37:39 -04:00
Philippe Tillet
099918b3c0 [python] [ops] added skeleton for einsum op 2019-10-21 18:58:02 -04:00
Philippe Tillet
4b0c43bb7b [python][example] added test for einsum 2019-10-21 17:13:12 -04:00
Philippe Tillet
e827d4f467 [python] [bindings] removed obsolete #include 2019-10-20 20:37:37 -04:00
Philippe Tillet
96bdae25d5 [python][example] now executing tensorflow and/or pytorch example
automatically
2019-09-05 21:35:23 -04:00
Philippe Tillet
1f8fd525b5 [python] fixed warnings for pybind11 and pytorch 2019-09-05 20:28:00 -04:00
Philippe Tillet
0405509190 [python] setup.py now finds LLVM version if available 2019-09-05 17:47:53 -04:00
Philippe Tillet
0a6329ea7d [python] more robust way to add triton includes to python package 2019-09-05 16:01:56 -04:00
Philippe Tillet
945593e847 [python] using generic path for triton include directories 2019-09-05 15:42:43 -04:00
Philippe Tillet
7bfbb89612 [python] now packaging include and libtriton in triton._C submodule 2019-09-05 15:37:00 -04:00