chenyu and GitHub
21aac568fd
limit lift x*y out of reduce to int [pr] ( #13535 )
2025-12-02 16:11:45 -05:00
Sieds Lykles and GitHub
114bb94c55
Fix load collapse MAX to ADD ( #13406 )
...
* add Ops.ADD to pattern
* add test
2025-11-21 12:26:14 +01:00
chenyu and GitHub
41e45c20ff
minor stuff reading the printed code [pr] ( #13177 )
2025-11-09 00:58:51 -05:00
chenyu and GitHub
ca17718b6d
remove symbolic_flat ( #13083 )
...
* remove symbolic_flat
some kernels are different but sometimes it's better so not clear, will merge as long as benchmark passes
* test_location
2025-11-03 17:25:21 -05:00
Sieds Lykles and GitHub
885b6dea9e
multiple reduce range arange folding ( #13047 )
...
* multi reduce arange folding
* add test
* cvar to var
* add circular_pad_bw test
2025-11-01 22:11:26 +01:00
George Hotz and GitHub
2da02f1ae1
add loads at the end ( #12988 )
...
* add loads at the end
* simpler
* late load
* tests passing
* fix matvec
* spec test passes
* fix where on load
* fix abs2
* fix more tests
2025-10-30 10:42:19 +08:00
Sieds Lykles and GitHub
5ce8a1d2f2
Merge adjacent try all permutations for reduce ( #12972 )
2025-10-29 05:04:54 +01:00
Sieds Lykles and GitHub
e110f4632a
split cat (on cpu) ( #12864 )
...
* split ranges but only on cpu
* except KernelOptError for threads
* use GROUP and END
* no more flatten_range needed
* remove noop end
* always process replay for openpilot
* update test
* skip test
* fix in outs calculation
With the new linearizer the toposort is a problem, this matches the spec
now
* undo that
2025-10-28 07:55:19 +01:00
George Hotz and GitHub
6b35467f53
stores don't end ranges ( #12902 )
...
* early endrange
* bugfixes
2025-10-24 23:05:03 +08:00
Sieds Lykles and GitHub
c1db62ff7c
move reduce collapse to rangeify ( #12845 )
2025-10-23 15:44:17 +02:00
Sieds Lykles and GitHub
04b3e51f1b
remove old reduce collapse rule ( #12889 )
...
* comment this out
* remove
2025-10-23 13:51:49 +02:00
George Hotz and GitHub
92778c7a8b
rename opts to ren, add store ranges back ( #12856 )
...
* rename opts to ren
* fix docs and bring store back
2025-10-22 09:15:38 +08:00
George Hotz and GitHub
c780cd9abb
new linearizer with early endrange ( #12823 )
...
* new linearizer with early endrange
* cleanups
* second stage removal
* not store
* do that later
* end cleanup
* fix globals
* end
* multi end
* fix ends earlier
* work
* do_merge_ends
* mini change
* range_gate
* fix cpu
* test fixups
* ranges on index
* not for ptx
2025-10-21 17:37:48 +08:00
Sieds Lykles and GitHub
1df9c7d7e7
reduce_collapse uses symbolic_flat ( #12766 )
...
* sym->symbolic_flat
* cast invalid drops invalid
2025-10-19 12:27:47 +02:00
Sieds Lykles and GitHub
79c2f1ae26
remove reduce_rangless and replace with reduce_unparented ( #12749 )
2025-10-17 04:46:05 +02:00
Sieds Lykles and GitHub
55db1b0e0e
reduce where that is cut from two sides ( #12733 )
...
* better rule
* correct pattern
* shorten line
2025-10-16 15:25:15 +02:00
Sieds Lykles and GitHub
8f740e07ff
no broadcasting/vectors in reduce collapse ( #12729 )
2025-10-16 13:22:57 +02:00
Sieds Lykles and GitHub
99aa3bd5f9
reduce collapse reduce only the cut range ( #12687 )
2025-10-15 13:57:41 +02:00
Sieds Lykles and GitHub
91ac4f1f92
late merging of where and load ( #12694 )
2025-10-15 13:33:06 +02:00
Sieds Lykles and GitHub
852d80dff9
better where on load folding ( #12651 )
...
* move where clauses to load
* shorten line
* drop clauses if they are duplicated
* add rule for swapped where branch
* where on ungated load
* dont move clause if load is in the clause
* parse_valid returns None
* no data dependent branches
* fix rule
* enable swapped rule
* remove those
2025-10-14 13:30:47 +02:00
George Hotz and GitHub
80d99d52a5
reduce_unparented only checks ranges ( #12548 )
2025-10-09 14:14:03 +08:00
George Hotz and GitHub
a6d59a0b45
backward_slice to get srcs recursively ( #12494 )
...
* change name to backward_slice
* faster check
* clean up comments and names
* comment
2025-10-08 10:31:42 +08:00
George Hotz and GitHub
583553f467
split ranges ( #12411 )
...
* split ranges
* simpler
* split ranges
* range str
* fix test
* oops
* faster
* no group 2
* tests
* dont_sub_ranges_for_image
* revert that
2025-10-02 12:57:22 +08:00
ac3d457d5e
rangeify: TestReduceOpsConstFolding ( #12397 )
...
Co-authored-by: George Hotz <[email protected] >
2025-10-01 17:58:19 +08:00
George Hotz and GitHub
a83f219253
fix bad range merges ( #12368 )
...
* fix bad range merges
* fix rng
* fix uop gc
2025-09-30 19:30:21 +08:00
Sieds Lykles and GitHub
6146c64d81
lower the invalid gate last ( #12164 )
...
* lowering invalid gate is part of lower_index_dtype
* update test
* remove import
* put that back
* reduce_collapse uses invalid
* fix that pattern to use invalid_pat
* valid creates the right dtype count
* seperate rule for lowering invalid gate
* dont unvectorize Invalid gate
* image_fixup uses Invalid
* update tests
* cleanup
* update split_load_store
* add .scalar() there
2025-09-24 04:27:35 +02:00
chenyu and GitHub
fffce0a6b4
use more no_range in simplify [pr] ( #12275 )
2025-09-23 02:33:56 -04:00
chenyu and GitHub
87707ef0b8
unify range_start [pr] ( #12236 )
2025-09-18 13:52:54 -04:00
chenyu and GitHub
edffc246ed
MUL in reduce_unparented ( #12223 )
...
* MUL in reduce_unparented
* some test
2025-09-17 11:56:39 -04:00
Sieds Lykles and GitHub
3730172c10
cleanup cast_folding ( #12101 )
...
* cleanup cast_folding
* from sym to symbolic
* no more sym in dtype lowering
2025-09-10 21:30:20 +02:00
George Hotz and GitHub
84b249ef0e
move simplify reduce out of devectorizer ( #12098 )
2025-09-10 21:24:57 +08:00
geohot
8658a97197
hotfix: name the shift rewrite better + no ctx there
2025-09-05 19:01:59 -07:00
George Hotz and GitHub
6ef3270fc8
fix opt gate ( #12050 )
2025-09-05 18:59:54 -07:00
George Hotz and GitHub
0123c394e5
early simplfy_merge_adjacent ( #12045 )
...
* do simplify_merge_adjacent before schedule
* do simplify_merge_adjacent before schedule
* disable that slow test
2025-09-05 16:39:20 -07:00