Commit Graph

68 Commits

Author SHA1 Message Date
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
Philippe Tillet
9ab2880fba [python][examples] cleaned up dot example 2019-09-05 12:54:35 -04:00
Philippe Tillet
2d6c8311e8 [python] upgraded pybind11 ; forcing torch tensors to be contiguous() 2019-09-05 12:30:51 -04:00
Philippe Tillet
58544d0523 [python] renamed src/tensorflow.cc -> src/bindings.cc 2019-09-05 09:39:58 -04:00
Philippe Tillet
b2629da1fe [python] more cleaning of frameworks logic 2019-09-05 02:21:07 -04:00
Philippe Tillet
44896ee777 [pytorch] clean-up of dynamic framework load 2019-09-05 02:16:27 -04:00
Philippe Tillet
65133cdf33 [python] basic support for pytorch seems to be working 2019-09-05 01:32:21 -04:00
Philippe Tillet
ed0f706005 [python] fixed various issues in pytorch supoport 2019-09-05 00:19:42 -04:00
Philippe Tillet
945b5d0de9 [python] modularized triton package 2019-09-04 21:55:47 -04:00
Philippe Tillet
f6e9c24fe8 [python] more progress towards tensorflow/pytorch unification 2019-09-04 19:45:50 -04:00
Philippe Tillet
cdbc9d4ecd [python] more generic gradient registration 2019-09-04 03:12:23 -04:00
Philippe Tillet
b747959a57 trying to work around tensorflow limitations 2019-09-04 01:54:43 -04:00
Philippe Tillet
2ccc915011 [python][examples] added template for blocksparse 2019-09-03 20:44:27 -04:00