Commit Graph

91 Commits

Author SHA1 Message Date
Philippe Tillet
4114351c7c [PYTHON][KERNEL] Added thread-safety when caching custom torch op 2020-04-07 20:21:50 -04:00
Philippe Tillet
0b35c5ff3f [PYTHON][KERNEL] Better handling of case where cache directory already
exists
2020-04-07 13:18:11 -04:00
Philippe Tillet
e04efc1c85 [GENERAL] Error messages now no longer make terminal color green 2020-04-03 23:25:29 -04:00
Philippe Tillet
7c09ff80eb [CORE] Fixed several issues that arose in the development of the
torch-blocksparse package:

* Now using warp shuffle in reductions when possible
* Various bugfixes in layout inference
* Added INFINITY, exponential and select
* Better error messages for unimplemented constructs
2020-03-31 18:57:28 -04:00
Jack Turner
53b9e4790e [PYTHON] Add empty string to llvm-config versions in setup.py 2020-03-13 18:03:25 +00:00
Philippe Tillet
b7895c653f [PYTHON][EXAMPLES] Removed BlockSparse examples; see
https://github.com/ptillet/torch-blocksparse.git
2020-03-05 13:32:42 -05:00
Philippe Tillet
1f1e4ee9ec [PYTHON] Merged blocksparse branch:
* Example for blocksparse matrix multiplication
* Simplified Triton kernel API
* Revived auto-tuning in einsum
2020-03-05 13:08:07 -05:00
Philippe Tillet
51bc244b2c [PYTHON][OPS] Fixed typo in einsum 2020-02-25 16:39:04 -05:00
Philippe Tillet
3ee342d056 [TRITON][NN][CONV] Renamed input -> x to not modify built-in functions 2020-02-25 10:56:39 -05:00
Philippe Tillet
1e76bb4145 [PYTHON][NN][CONV] Fixed typo in dx computation 2020-02-24 22:45:49 -05:00
Philippe Tillet
cc094936d0 [PYTHON][SETUP] Removed obsolete debug print() 2020-02-24 21:35:45 -05:00
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