George Hotz
67a03e72bb
remove expr_idxs [run_process_replay] ( #6567 )
...
* remove expr_idxs [run_process_replay]
* goodbye that test
2024-09-17 18:34:51 +08:00
chenyu
b947db3de1
don't fold mul mod for common factor ( #6566 )
...
it makes valid pattern more annoying
2024-09-17 06:01:27 -04:00
Gaétan Lepage
f214bb140d
test: relax tolerance of test_broadcastdot ( #6560 )
2024-09-17 03:26:39 -04:00
chenyu
5fb877c78c
generic valid match criteria of #6552 ( #6558 )
...
455 -> 364 valids.
generalize `idx < image bound` to `idx < image bound + c` for some `c`
2024-09-17 02:40:36 -04:00
George Hotz
0ab06d5840
push geps through wmma ( #6559 )
...
* push geps through wmma
* update tests
2024-09-17 14:38:40 +08:00
George Hotz
ffce3ed896
add some new rules ( #6555 )
...
* add some new rules
* fix that
* non controversial
2024-09-17 13:59:55 +08:00
chenyu
c62b6fd8f0
match any statement in valid for simplification ( #6554 )
2024-09-17 01:39:47 -04:00
George Hotz
a2239c812e
minimum new style expand ( #6534 )
...
* minimum new style expand [run_process_replay]
* float4 folding works
* fix uop graph
* if means or
* dype.count idx overload
* fix test arange
* expand nope
* fix expand contract
* fix amd tensor core
* oh, that's a good test with a real failure
* remove prints
* early reduce
* tomorrow, we remove sorted on expand args
* fix wmma issue
* that makes test_arange pass
* vectorized folding
* no check
* broadcast
* fix clang with self assign rule
2024-09-17 13:02:41 +08:00
kormann
f5dd25d376
enable whisper batch for long sequences ( #6458 )
...
* long batch +test
* long batch +test
* cleanup
* rollback syntactic changes
---------
Co-authored-by: chenyu <chenyu@fastmail.com >
2024-09-17 00:42:10 -04:00
chenyu
7c942418a1
other side of simple out of bound valid case ( #6552 )
...
462 -> 455
2024-09-16 23:57:15 -04:00
chenyu
aeaf7894a7
more generic version of #6548 ( #6549 )
...
x*(-1)<0 can be generalized to x*(-1)<c, 473 -> 462 valids
2024-09-16 23:17:16 -04:00
chenyu
596f41eb46
simple drop image valid case ( #6548 )
...
* simple drop image valid case
started unit test, 530 -> 473 valids
* cleanup
2024-09-16 22:54:07 -04:00
George Hotz
42ba887daa
remove logic to vectorize reduces ( #6536 )
...
* remove logic to vectorize reduces
* fix tests
2024-09-16 14:04:48 +08:00
qazal
607113fcdf
fix vectorized dtype repr [run_process_replay] ( #6535 )
2024-09-16 13:42:55 +08:00
qazal
9b9b83b8b0
viz tests ( #6532 )
...
* vizz fuzz tests
* caching
* print timings
* hotfix: update currentRewrite onClick
* import from typing
* indent into __main__
2024-09-16 13:08:42 +08:00
George Hotz
07bd6e070d
add more uops tests for vmin/vmax/const_factor/divides ( #6533 )
2024-09-16 13:06:31 +08:00
ignaciosica
c447ec2190
Fix amx shape [run_process_replay] ( #6524 )
...
* fix amx shape (sz,sz,sz) -> (sz,sz,1)
* revert check
2024-09-16 09:49:55 +08:00
chenyu
1683b274b6
main example we want the valid removed ( #6527 )
...
* main example we want the valid removed
* ast lines are long
2024-09-15 21:49:10 -04:00
George Hotz
21835fc08c
more graph rewrite tests ( #6521 )
2024-09-16 09:20:54 +08:00
chenyu
b2c286f567
fix typing for test_ops ( #6520 )
...
mostly passed TYPED=1 python3 -m pytest -n=auto test/test_ops.py.
one last test specifically set an invalid value to test the exception, and to ignore that we need to import typeguard. And to get a working version of typeguard, we would need to get rid of dependency on tensorflow_addons because it requires a very old version of typeguard
2024-09-15 06:18:36 -04:00
George Hotz
cd90092f14
graph rewrite tests ( #6519 )
...
* more graph rewrite tests
* more complex test cases
* more tests
* more tests
* cleanups
* 9600 lines
* cleanups
2024-09-15 17:29:16 +08:00
qazal
4ffb722d4e
var_vals prereq for deleting LBScheduleItem [run_process_replay] ( #6511 )
2024-09-14 17:00:30 +08:00
George Hotz
a532d59bbd
gep tuple [run_process_replay] ( #6495 )
...
* gep tuple [run_process_replay]
* no inf loop, that goes in expander
* fix ops python
* unbreak gep 0
* fix tests
* fix tests
* VECTORIZE/GEP
* oops, broken
2024-09-12 16:37:31 +08:00
George Hotz
6dfa63cb21
more vconst stuff + gep tuple [run_process_replay] ( #6494 )
...
* more vconst stuff [run_process_replay]
* revert that
* fix inf loop
2024-09-12 14:58:14 +08:00
George Hotz
119b0ea4af
add UOps.VCONST [run_process_replay] ( #6487 )
...
* add UOps.VCONST [run_process_replay]
* VCONST folding
* simpler devectorize
* alu
* revert that type
2024-09-12 14:03:39 +08:00
George Hotz
76487a3533
remove nop, use upat [run_process_replay] ( #6489 )
...
* remove nop, use upat [run_process_replay]
* mypy passes
* no wonder nothing worked
* fixes
2024-09-12 12:16:19 +08:00
George Hotz
bdd0c06f29
add void type to uop ( #6471 )
...
* unwrap_dtype maybe
* uopgraph stuff that hardcoded None
* test_ops passes
* dtypes.py fixups
* update test_linearizer and friends
* more ast updates
* test_beam and test_schedule too
* add void type to uop [run_process_replay]
* remove dumb casts
* start making it green
* more cast cleanups
* more cls methods to fix
* regenerate dataset
* split UOp and NOp const
* maybe that too
* fix docs
* update test_uop_symbolic
* test_verify_ast
* new sops with no diff
* meh, type_ignore is alright
* remove that assert
---------
Co-authored-by: qazal <qazal.software@gmail.com >
2024-09-11 18:16:28 +08:00
George Hotz
1b4d1823b7
add pyint to DTYPES_DICT [run_process_replay] ( #6477 )
...
* add pyint to DTYPES_DICT [run_process_replay]
* also fix uop alu bug
* exclude pyint there too
* ne ne
* force explicit dtype
2024-09-11 17:31:59 +08:00
qazal
3cde1503ce
enable graph rewrite in the scheduler ( #6249 )
...
* test: enable
* skip those
* skip pads tests
2024-09-11 14:30:04 +08:00
chenyu
d9d1ae7248
more lt folding using gcd ( #6469 )
2024-09-11 02:09:35 -04:00
qazal
262569a3eb
green conv bw AST_REWRITE=1 ( #6466 )
...
* green conv bw AST_REWRITE=1
* new strides and dtype fix
2024-09-11 10:51:24 +08:00
chenyu
15c4d4f406
fold unrolled arange div pattern ( #6465 )
2024-09-10 22:35:52 -04:00
qazal
4259311006
merge views in conv swizzle ( #6464 )
2024-09-11 10:11:01 +08:00
qazal
803b8b9313
conv bw schedule and correctness tests to iterate on ( #6461 )
...
first to fix AST_REWRITE=1, then to implement the same fusion for dtypes.half.
2024-09-11 08:47:07 +08:00
chenyu
b574caadc9
fix UOp const_factor for ADD [run_process_replay] ( #6459 )
...
currently not used, fixed for completeness
2024-09-10 20:04:26 -04:00
chenyu
2105832b87
_min_max of MUL of 2 non-positive inputs ( #6454 )
2024-09-10 07:13:01 -04:00
qazal
f4f705a07c
can push SWIZZLE through reduce both ways ( #6453 )
2024-09-10 16:00:50 +08:00
qazal
1347e49e82
second iteration on UOps.SWIZZLE ( #6451 )
...
* new swizzle
* fix the failing tests
* test a double swizzle
* ci
2024-09-10 14:43:21 +08:00
chenyu
e0d35e3657
update test_padto_sum_not_ok ( #6450 )
...
updated the setup as `exp() < -1` could be folded to False
2024-09-09 22:46:42 -04:00
qazal
95c9fe841e
UOp.st infra for the new SWIZZLE ( #6449 )
2024-09-10 09:39:45 +08:00
qazal
abfbd9fd2f
fix Variable init from the DEFINE_VAR refactor ( #6448 )
...
prereq for UOps.VALID.
2024-09-10 09:14:29 +08:00
chenyu
fcc69adfc5
simplify c0*x<c1 for negative int c0,c1 ( #6431 )
...
* simplify c0*x<c1 for negative int c0,c1
* fine if rhs is zero
2024-09-09 21:05:53 -04:00
qazal
29e63097a0
st is a cached_property on UOp [run_process_replay] ( #6433 )
2024-09-10 08:30:35 +08:00
George Hotz
904f6a63fa
Revert "Revert "cleanup process_replay/* namings [run_process_replay] ( #6429 )…" ( #6442 )
...
This reverts commit eda177da84 .
2024-09-10 07:00:16 +08:00
George Hotz
dbd4536167
Revert "add UOps.VALID ( #6387 )" ( #6441 )
...
This reverts commit 8186e4e7d6 .
2024-09-09 21:33:00 +08:00
George Hotz
eda177da84
Revert "cleanup process_replay/* namings [run_process_replay] ( #6429 )" ( #6437 )
...
This reverts commit f4e83b30b4 .
2024-09-09 18:52:36 +08:00
George Hotz
42e5c8335e
remove args from min/max [run_process_replay] ( #6430 )
...
* remove args from min/max [run_process_replay]
* it's a ConstType
* sconst_like unused
* any const is fine
2024-09-09 18:18:20 +08:00
qazal
f4e83b30b4
cleanup process_replay/* namings [run_process_replay] ( #6429 )
2024-09-09 16:59:04 +08:00
George Hotz
8186e4e7d6
add UOps.VALID ( #6387 )
...
* uops valid
* broke full_shape
* fixup that st (hardcoded asts still red)
* fixup DEFINE_VAR
debug
more debug
* start moving stuff to ast_const
* move test_linearizer
* move test_linearizer_failures to ast_const
* fixup test_schedule
* small diff change
* regenerate dataset
* fixup test_multitensor
* regen dataset try 2
---------
Co-authored-by: qazal <qazal.software@gmail.com >
2024-09-09 16:58:43 +08:00
qazal
935b6b658f
delete seen from the scheduler api [run_process_replay] ( #6427 )
...
docs
2024-09-09 16:26:34 +08:00