Commit Graph

55 Commits

Author SHA1 Message Date
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
Philippe Tillet
a099c6f7f3 [TRITON][LANG] Added support for bitcast 2020-02-09 20:11:13 -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
d65a94c768 [PYTHON][OPS] Added batch normalization op 2019-10-29 17:29:11 -04:00
Philippe Tillet
76651a065f [PYTHON][EXAMPLES] Better einsum example 2019-10-29 12:56:58 -04:00
Philippe Tillet
76adcb755a [PYTHON][EXAMPLES] Tentative support for einsum with transpositions 2019-10-25 19:01:21 -04:00
Philippe Tillet
b81734553b [lang] added support for batched matrix multiplication 2019-10-21 15:41:50 -04:00
Philippe Tillet
abe3fbb480 [test] [reduce] added test for 1D reduction 2019-10-20 01:01:53 -04:00
Philippe Tillet
d76c6bc3c7 Merge branch 'master' into auto-coalesce 2019-10-18 16:21:28 -04:00
Philippe Tillet
f4beb713ab [test] added support for max, min reduction and made it easy to add more 2019-09-12 16:11:57 -04:00
Philippe Tillet
04a0fbd8e3 [tests] basic test for reduction in python passes 2019-09-11 17:35:56 -04:00
Philippe Tillet
0c41bade07 [codegen] basic recoalescing working 2019-09-10 23:25:47 -04:00
Philippe Tillet
2781cdcf93 [lang] added templates for reductions 2019-09-10 15:54:16 -04:00
Philippe Tillet
ef1feefe7f [lang] added __global__ storage specifier 2019-09-10 02:01:09 -04:00
Philippe Tillet
a842d337c5 [general] various cleaning and bugfix:
* added copy1d and copy2d benchmark
* fixed issue in reassociation pass
2019-09-02 23:00:49 -04:00
Philippe Tillet
37cbcfabd0 [examples] back to 96 TFLOPS on V100 2019-08-26 22:49:14 -07:00
Philippe Tillet
0b1c389894 [lang] changed array declarations from [{}] to [] 2019-08-23 20:34:24 -07:00
Philippe Tillet
44eb3891ae [lang] added support for restrict; added macros for attributes 2019-08-23 20:29:12 -07:00
Philippe Tillet
8c6bac49d1 [lang][codegen] added basic attribute support 2019-08-23 19:49:06 -07:00
Philippe Tillet
cb04ec0b3b some more cleaning 2019-08-23 19:22:38 -07:00
Philippe Tillet
a110a7e8cf [ir] changed type of tile shapes from constant_int* to int 2019-08-23 17:49:21 -07:00
Philippe Tillet
c9371c7234 [general] error messages no longer depend on a program name 2019-08-23 17:32:05 -07:00
Philippe Tillet
f98b0b8e2a [general] deleted the old compiler frontend 2019-08-23 17:28:02 -07:00
Philippe Tillet
64a6910644 [lang][parser] better support for attributes 2019-08-22 21:02:38 -07:00
Philippe Tillet
845c0e5b93 adding tunable parameters 2019-08-22 19:21:01 -07:00
Philippe Tillet
87072203c1 [codegen] triton-ir code generation does not crash 2019-08-22 17:27:10 -07:00
Philippe Tillet
a6ec807223 more debugging 2019-08-21 21:53:41 -07:00
Philippe Tillet
a23225ad37 more progress 2019-08-21 18:27:02 -07:00
Philippe Tillet
5224bbbe06 preparing codegen 2019-08-20 18:06:30 -07:00
Philippe Tillet
61f25f90eb basic parsing doesn't throw error 2019-08-20 16:22:43 -07:00
Philippe Tillet
bc11e31419 [lang] more progress on parser 2019-08-19 20:56:39 -07:00
Philippe Tillet
81571246cf [general] fixed some warnings 2019-08-18 14:08:57 -07:00
Philippe Tillet
b4a9ed9663 [python] added basic tensorflow support 2019-08-17 18:18:26 -07:00
Philippe Tillet
c7cb5f82ad [general] removed LLVM #include's in all Triton headers 2019-08-16 15:56:58 -07:00
Philippe Tillet
5efdb7978e more improvements and regressions 2019-08-06 16:21:20 -07:00
Philippe Tillet
d62e581ab3 basic split-k across warps working for GEMM 2019-08-05 19:33:28 -07:00
Philippe Tillet
899b2b72e1 simple constexpr 2019-08-05 13:06:56 -07:00
Philippe Tillet
d869d9a924 [codegen][selection] more flexible instruction selection for reduce_inst 2019-08-04 16:34:36 -07:00
Philippe Tillet
dc11f70fad [dnn/blocksparse] FPROP test passes! 2019-07-29 17:06:20 -07:00
Philippe Tillet
2a377bc8b1 [ir] deleted mask/merge instructions; will be replaced by masked_load/store and select 2019-07-25 15:06:15 -07:00
Philippe Tillet
38b3771c26 some reassociation 2019-07-23 14:43:18 -07:00
Philippe Tillet
aa8bcf6bde [dnn/shift] added split-k for shift-conv 2019-07-15 21:03:58 -07:00
Philippe Tillet
f74dcb7e30 [dnn/batchnorm]: added some more code in Triton-C batchnorm implementations 2019-07-08 20:18:20 -07:00
Philippe Tillet
f9db0449b7 [dnn] Adding batchnorm 2019-07-08 18:44:37 -07:00
Philippe Tillet
c666f71fd6 fixed bug 2019-07-05 15:07:20 -07:00
Philippe Tillet
8fc253946c [codegen] shift: added sketch for shift-convolution backpropagation 2019-07-02 16:39:07 -07:00
Philippe Tillet
6cfb575d29 [lang] fixup in cast type 2019-06-30 17:43:18 -07:00
Philippe Tillet
c172bd518b more stuff 2019-06-30 16:55:02 -07:00
Philippe Tillet
9a86bc51e1 [language] added alignment metadata for variables 2019-06-29 13:58:46 -07:00