George Hotz
643c09a6c6
tensor uop spec should be in spec.py [pr] ( #8827 )
...
* tensor uop spec should be in spec.py [pr]
* err, spec.py
* print uops can stay
2025-01-31 13:54:04 +08:00
qazal
5643429c17
give BUFFER UOp a ShapeTracker [pr] ( #8811 )
...
* give BUFFER UOp a ShapeTracker [pr]
* move that
* update contiguous
* test_advancedindex should use movement ops
2025-01-30 22:33:32 +02:00
qazal
ba17786068
do not construct unmasked VALID ( #8759 )
...
* new lines that exist in codegen/ops
* update tests
* update sops.gz (13071 -> 13070 asts)
* fix viz too
* remove that TODO
* diff pruning
* mask assert + device
* work
* diff pruning
* re: fix viz too
---------
Co-authored-by: George Hotz <72895+geohot@users.noreply.github.com >
2025-01-28 20:51:21 +02:00
qazal
3417bc1814
fix ShapeTracker spec for const [pr] ( #8791 )
2025-01-28 19:53:36 +02:00
qazal
aefbc2637f
test fixups from unmasked valid deletion [pr] ( #8776 )
2025-01-28 09:23:30 +02:00
Sieds Lykles
1a15c0e89d
Move define_acc down an unrolled add chain ( #8404 )
...
* Move define_acc down an unrolled add chain
* Prevent possible infinite recursion
* Add test
* Fix typo in test
* Move mulacc_unrolled to devoctorize + load_store_indexing pass
* Add test for mulacc_unrolled by itself
* undo formatter
* import from ops, not rewriter
* Add a const version
---------
Co-authored-by: chenyu <chenyu@fastmail.com >
2025-01-20 14:56:27 -05:00
George Hotz
98d01a059d
rename uopgraph to rewriter [pr] ( #8682 )
2025-01-19 17:03:12 -08:00
uuuvn
e7c6282dd6
Fix uop.st for CLANG+AMX ( #8460 )
2025-01-02 18:01:41 +02:00
qazal
866dfa1f23
create_schedule([x.lazydata]) -> x.schedule() in tests ( #8449 )
2024-12-31 03:15:52 +08:00
George Hotz
180916257d
add children tracking to uop [pr] ( #8448 )
2024-12-30 10:58:20 -05:00
qazal
90ce2c6029
UOp shape spec and requirements from TIP 4 ( #8428 )
...
* UOp ShapeTracker conceptual refactor [pr]
* add the UOp shape spec
* assign spec
* test a permuted assign
* lint + more work
* collapse assign after it swizzles the store [pr]
* more work, refine valid
* permute the other way
* shapetracker cleanup
* this assert should work now
2024-12-28 18:32:52 +08:00
qazal
991b91d4d6
fix string repr of arg in viz and print [pr] ( #8369 )
2024-12-21 23:44:10 +02:00
qazal
72aa38aa3b
BIND in tensor_uop_spec + cleanups [pr] ( #8363 )
...
* Ops.BIND pattern in tensor_uop_spec + cleanups [pr]
* use metaops there
2024-12-21 21:26:47 +08:00
qazal
7436ebef2f
spend lines on const_arg for tensor and scheduler [pr] ( #8132 )
...
* spend lines on const_arg for tensor and scheduler [pr]
* simple test_const_arg
* base on lazy
2024-12-10 18:07:35 +08:00
qazal
b116e1511d
make device on uop optional [pr] ( #8034 )
2024-12-04 20:18:00 +08:00
chenyu
0c060fa040
update uop and tests to not use lt/gt/le/ge [pr] ( #8023 )
...
just use dunder methods, eventually remove those from ops
2024-12-03 21:02:52 -05:00
George Hotz
b8bf5b2787
minor uop speedups [pr] ( #8002 )
...
* minor uop cleaner [pr]
* free uop creation speed by removing WeakValueDictionary
* a lil faster
* disable that test
* lines
* and it doesn't print non hit patterns
2024-12-03 17:04:48 +08:00
Ahmed Harmouche
1ea0925744
Support packed types in smem in webgpu
2024-12-02 10:13:25 +01:00
mesozoic-egg
90e2b2d577
Remove gated store, put rewrite to uopgraph [pr] ( #7975 )
...
* update test for gated store
* put gated store rewrite to uopgraph, rm from ptx
* update test
update test
update test
* remove gated st rewrite in llvm
* lint
---------
Co-authored-by: Mesozoic Egg <mesozoic.egg@proton.mail >
Co-authored-by: George Hotz <72895+geohot@users.noreply.github.com >
2024-12-02 12:33:16 +08:00
George Hotz
c5c3b05b5a
block lin: only the test changes ( #7933 )
2024-11-28 13:19:00 +08:00
George Hotz
32dbab945c
Revert "add block uops and modify tests ( #7931 )" ( #7932 )
...
This reverts commit 6f4519ff45 .
2024-11-28 13:15:41 +08:00
George Hotz
6f4519ff45
add block uops and modify tests ( #7931 )
2024-11-28 13:11:18 +08:00
chenyu
a58e289d77
Revert "prereqs for new block lin so PR works ( #7919 )" ( #7921 )
...
This reverts commit c53261b541 .
2024-11-27 08:41:09 -05:00
George Hotz
c53261b541
prereqs for new block lin so PR works ( #7919 )
2024-11-27 15:07:54 +08:00
George Hotz
c5d458ce02
BufferSpec and ProgramSpec [pr] ( #7814 )
...
* BufferSpec and ProgramSpec [pr]
* delete preallocate, it's unused
* Revert "delete preallocate, it's unused"
This reverts commit dcfcfaccde .
2024-11-21 12:18:05 +08:00
ignaciosica
597a239e28
Remove UnaryOps, BinaryOps, TernaryOps, MetaOps [pr] ( #7725 )
...
* remove unaryops
* remove ternaryops
* remove metaops
* hotfix
* remove binaryops
* hotfix: test_pattern_matcher
---------
Co-authored-by: qazal <77887910+Qazalin@users.noreply.github.com >
2024-11-16 20:56:56 +08:00
qazal
e84d089ef1
delete ReduceOps, only use REDUCE_AXIS ( #7667 )
2024-11-13 19:04:27 +08:00
George Hotz
205befa788
move is_dtype_supported to device [pr] ( #7575 )
2024-11-07 20:38:03 +08:00
Carl Basho
630a7f37cf
update tests ( #7554 )
...
Co-authored-by: John Doe <null@mail.com >
Co-authored-by: chenyu <chenyu@fastmail.com >
2024-11-05 11:35:15 -05:00
George Hotz
99bd4372a5
Ops.ALU is no more, the arg is just an op ( #7525 )
...
* op arg alu [pr]
* more
* more passing
* fix more tests
* more tests passing
* fix single failing test
* so much cleaner
* noop to not have process replay trigger
* fix ptx
2024-11-05 00:22:22 +08:00
George Hotz
bac251d2c1
idx_load_store in lowerer [pr] ( #7477 )
...
* idx_load_store in lowerer [pr]
* fix tests (#7513 )
Co-authored-by: John Doe <null@mail.com >
* work
---------
Co-authored-by: Carl Basho <76494676+oldpondplop@users.noreply.github.com >
Co-authored-by: John Doe <null@mail.com >
2024-11-04 10:18:40 +08:00
chenyu
7758f7211b
Revert "s/UPat/Pat ( #7506 )" [pr] ( #7517 )
...
* Revert "s/UPat/Pat (#7506 )"
This reverts commit 400011a8c1 .
* fix
2024-11-03 16:33:02 -05:00
chenyu
400011a8c1
s/UPat/Pat ( #7506 )
2024-11-03 08:26:19 -05:00
George Hotz
c8bf09b7d4
s/UOps/Ops ( #7500 )
...
* s/UOps/Ops [pr]
* fix
2024-11-03 11:26:10 +08:00
George Hotz
0af1212164
use assertEqual with new style uops [pr] ( #7360 )
2024-10-29 18:43:21 +08:00
George Hotz
9a3d498d9c
with commutative hack, uops can change. fix that ( #7266 )
...
* with commutative hack, uops can change. fix that
* simpler
2024-10-24 18:50:23 +08:00
qazal
2083ac0b4c
generic small graph sink -> ScheduleItem pattern matcher [pr] ( #7221 )
2024-10-22 20:20:26 +03:00
qazal
713461129b
scheduler ast rewrite reorders from big graph [pr] ( #7168 )
...
* scheduler ast rewrite reorders from big graph [pr]
* update test_uops.py
2024-10-21 00:47:58 +03:00
chenyu
f511ad9103
No pyint again ( #7156 )
...
* Revert "bring back pyint (#7150 )"
This reverts commit 37e83ca6fc .
* remove truncate in const folding
* truncate_output=False
2024-10-19 13:48:59 -04:00
George Hotz
ded1b38b84
minor dtype cleanup [pr] ( #7124 )
...
* minor dtype cleanup [pr]
* use ptr() function
2024-10-17 17:41:23 +08:00
qazal
fb29de6cc3
split schedule to view_left and view_right [pr] ( #7077 )
...
* split schedule to view_left and view_right [pr]
* move valid
2024-10-16 03:39:38 +03:00
George Hotz
5ae2de9845
UOp.variable ( #7010 )
...
* UOp.variable [pr]
* fix tests
* clean
* improve name rendering
* last bug
2024-10-12 18:20:44 +08:00
George Hotz
e7a0ffe46a
break out linearization [pr] ( #6994 )
2024-10-11 15:27:33 +08:00
George Hotz
e907b25792
move some pm rules to uopgraph.py [run_process_replay] ( #6831 )
...
* move some pm rules to uopgraph.py [run_process_replay]
* move more
* move lt and clean
* end maybe
* put back
2024-10-01 18:28:41 +08:00
George Hotz
50dd6bd951
move cmp tuple out [run_process_replay] ( #6825 )
...
* move cmp tuple out [run_process_replay]
* was unneeded
2024-10-01 10:38:28 +08:00
qazal
dab05ff070
match dataclass.replace in UOp.replace [run_process_replay] ( #6792 )
...
* UOp replace matching dataclass replace
* p2
* replace creates a copy
2024-09-28 16:28:49 +08:00
George Hotz
eaa1e0eeeb
rename constant_folder to sym [run_process_replay] ( #6780 )
2024-09-27 14:54:54 +08:00
qazal
ee4feedb77
delete test_variable_const [run_process_replay] ( #6757 )
...
* delete test_variable_const [run_process_replay]
* don't allow variable UPat
2024-09-26 12:27:11 +08:00
George Hotz
e945fa9c5c
put local on the PtrDtype [run_process_replay] ( #6656 )
...
* put local on the PtrDtype [run_process_replay]
* those are local too
2024-09-23 10:29:17 +08:00
qazal
309ea63c03
include cached replaces in VIZ=1 ( #6596 )
...
* pick some work from vizmore branch
* fix the ctx location
* fix that loc
2024-09-19 14:48:31 +08:00