qazal
26afbc954f
delete redundant tests from test_schedule [pr] ( #10643 )
2025-06-05 20:08:39 +03:00
chenyu
80ebce421d
remove metal buffer limit in external_model_benchmark [pr] ( #10642 )
...
not needed anymore
2025-06-05 13:00:51 -04:00
qazal
28c4997236
check for matching shape order in fused reduce ( #10641 )
...
* failing test
* shapes match with ones removed
2025-06-05 19:37:22 +03:00
qazal
1190062812
prevent grouper can_chase while fusing arange [pr] ( #10623 )
2025-06-05 18:50:21 +03:00
qazal
8c5ea00522
push permutes through fused reduces ( #10628 )
...
* fix pushing reshapes through reduceops
* reduceop_view_right should assert on ndims mismatch
* update that, view.reshape asserts it
2025-06-05 16:14:04 +03:00
chenyu
d0969f5a1f
cleanup multi tests ( #10635 )
2025-06-05 00:28:44 -04:00
qazal
571c0296a9
linearizer failure from FUSE_ARANGE default diff ( #10629 )
...
* start with test_arange_sum
* test_arange_avgpool2d
* device.renderer.supports_float4
2025-06-04 19:11:52 +03:00
qazal
5056d21b29
add failing TestSchedule.test_arange_sum [pr] ( #10627 )
2025-06-04 17:23:59 +03:00
qazal
7114b6ab31
viz browser tests ( #10626 )
...
* viz browser tests
* expect failure if js/ isn't included
* back green
2025-06-04 14:58:24 +03:00
wozeparrot
4d1686f767
clean: becnhmark -> benchmark ( #10620 )
2025-06-03 19:28:18 -07:00
qazal
ce9f12dc13
reorder cast before masking constants ( #10609 )
...
* failing test from fuzzer
* .numpy() handles bfloat16 better
* const->view->cast becomes const->cast->view
* update TestMovedConstFolding.test_cast_padded
2025-06-03 15:44:03 +03:00
qazal
910cabb081
add kernel count to grouper process replay differ [pr] ( #10611 )
2025-06-03 15:21:27 +03:00
Ahmed Harmouche
650404a143
[webgpu] Proper shared mem size for packed types ( #10585 )
...
* Proper shared mem size in webgpu
* Add test
* Refactor test
2025-06-01 20:18:33 -04:00
qazal
3cc73a0172
simpler process replay main loop [pr] ( #10588 )
...
* simpler process replay main loop [pr]
* use logging
* default to 1
2025-06-01 15:03:21 +03:00
qazal
dc882d3d7d
merge process replay and viz captures [pr] ( #10581 )
...
* refactoring
* test script
* work
* more work
* diff
* repr splits lines correctly
* that
* add location
* add location
* also don't need name_override
* k.copy
* [pr]
* name_override 2
* err
2025-06-01 12:30:10 +03:00
qazal
1f8a8721e9
remove test_unaligns_idxs, UOps don't have order like this [pr] ( #10587 )
2025-06-01 12:16:14 +03:00
Ahmed Harmouche
35eb4d357a
[webgpu] Fix atomic shared mem load inside loop ( #10530 )
...
* Disable shared mem atomics on webgpu
* allow_any_len in load pattern matcher to fix temp load inside loop
2025-05-31 09:29:02 -04:00
qazal
5b59728c75
refactor LOAD(DEFINE_GLOBAL, VIEW) in kernels to LOAD(VIEW(DEFINE_GLOBAL)) ( #10541 )
...
* changes to core tinygrad
* fixups pt1
TC=3
docs/abstractions2.py
IMAGE=2
test_quantize_dsp
test_schedule
* more tests
* green now
* images stay images
2025-05-30 14:27:58 +03:00
chenyu
116ffc4e92
cstyle strips paren for AND and OR ( #10560 )
2025-05-30 07:09:05 -04:00
qazal
bbf05110a2
use kernelize in TestLinearizer.test_indexing_multireduce [pr] ( #10571 )
2025-05-30 11:27:09 +03:00
qazal
7051bf3fd5
fixup hardcoded asts ptr dtype and constants [pr] ( #10570 )
...
* fixup hardcoded asts ptr dtype and constants [pr]
* use kernelize for test_kernel_count
2025-05-30 09:38:32 +03:00
qazal
066196415f
UOp.valid and const_like work with just shapes [pr] ( #10569 )
...
* UOp.valid and const_like work with just shapes [pr]
* pm_quant left
* pm_quant
2025-05-30 08:55:06 +03:00
George Hotz
b3b43a82c4
remove Tensor.no_grad, it's meaningless now [pr] ( #10556 )
2025-05-28 22:20:02 -07:00
George Hotz
e140f8f0d8
linearizer test_failure_61 ( #10552 )
...
* enumerate cases of Tensors in the JIT
* optional fused optimizers
* add fused optimizer test
* move that there
* ugh
* work on beautiful_cifar
* speed close to hlb_cifar
* test_failure_61
* just the failure
2025-05-28 21:30:50 -07:00
Sieds Lykles
ae02a1e232
[bounty] Z3 symbolic fuzzer [pr] ( #10514 )
...
* First version, caught a bug?
* Nicely print failure to reproduce
* Remove that
* Put the assert back
* Change fuzzing to use testing_unit so it has z3
* Test key to match
* Add rule
* Add test
* Add test for edge case 0
* Merge patterns
* update comment
* consistent whitespace
* whitespace
* add condition
* add test
* update comment
* use Variable
* fuzzer using z3_renderer
* Cleaned up printing and debugging
* working new fuzzer
* change some comments and printing
* more formatting
* fuzz failures in seperate file
* fix fstring
* more tests
* naming
* remove added line
* remove comment
* print number of skipped expressions
* use self.assertEqual
---------
Co-authored-by: chenyu <chenyu@fastmail.com >
2025-05-28 16:28:37 -04:00
George Hotz
98f3d1c26d
enumerate cases of Tensors in the JIT ( #10548 )
2025-05-28 11:51:27 -07:00
qazal
d1f0043331
use store_val helper in test_schedule asserts [pr] ( #10540 )
2025-05-27 21:48:06 +03:00
George Hotz
5b268121d4
remove becomes map ( #10533 )
...
* remove becomes map
* add comment and delete dead code
* multi is a view
2025-05-27 11:47:11 -07:00
George Hotz
a07caaca0d
handle stride 0 variable reshape ( #10536 )
2025-05-27 10:00:24 -07:00
George Hotz
41e3d07d7f
view gradient is tricky ( #10528 )
...
* view gradient is tricky
* explicit
2025-05-26 22:28:30 -07:00
uuuvn
c29c46853f
Very basic mock sqtt ( #10512 )
...
This mockgpu sqtt emulation will just ignore basically everything and end
up with a 0x1000 size trace full of zeroes, but just testing for things
like register rename is better than nothing i guess
2025-05-26 14:38:28 -07:00
qazal
6d07087fe1
remove contiguous from MSELECT 2 ( #10522 )
...
* remove contiguous from MSELECT
* test_shrink_on_shard_axis
---------
Co-authored-by: George Hotz <geohot@gmail.com >
2025-05-26 19:19:01 +03:00
geohotstan
602a145f8f
Add Tensor.unfold ( #10518 )
...
* yoinked 10272
* eitanturok's fixes
* hmmm should size be sint?
* add test
2025-05-26 11:15:44 -04:00
qazal
9169dcfb49
do not create kernels with more inputs than the backend allows ( #10510 )
...
* work
* no itertools + top down pass
* clean viz
* python can do that
* webgpu
* gbarrier of gbarrier is gbarrier
* device can be tuple
* bug in toposort
* failing test for gated toposort
* contiguous of gbarrier is gbarrier
* check for binops
* Revert "check for binops"
This reverts commit 53e3cdf720 .
* viz + match on gbarrier, self exists by default
* alt
* green now
* cleanup
2025-05-26 18:02:03 +03:00
Sieds Lykles
478c76f4b7
More div conditions ( #10432 )
...
* add condition
* add test
* use Variable
2025-05-26 07:36:05 -04:00
Sieds Lykles
c6c7882bdf
bugfix: seperate rule for x//d<-c ( #10148 )
...
* Add rule
* Add test
* Add test for edge case 0
* Merge patterns
* update comment
* consistent whitespace
* whitespace
* update comment
2025-05-26 07:35:41 -04:00
geohotstan
fd9f236a82
move test over ( #10508 )
2025-05-25 21:51:51 -04:00
Ahmed Harmouche
bbb6deff53
Increase op limit in test_index_mnist to pass on webgpu ( #10504 )
...
* Increase op limit to enable mnist indexing on webgpu
* Only relax op_limit on WebGPU
2025-05-24 09:37:31 -04:00
qazal
a9d0bf5c4c
proper error for device mismatch ( #10500 )
...
* failing test
* use bufs
* buf_uop
* not on cpu
2025-05-24 12:17:41 +03:00
George Hotz
9eee5ae276
its copying the dataset every time ( #10498 )
...
* its copying the dataset every time
* add comment
* expect failure
* todo
2025-05-23 21:25:53 -07:00
George Hotz
b58f2d4544
fix tests ( #10493 )
2025-05-23 18:38:07 -07:00
wozeparrot
a18963d9e7
feat: use tinygrad useragent ( #10488 )
2025-05-23 15:44:40 -07:00
qazal
7a762f01ab
s/shape_spec/ast_spec [pr] ( #10485 )
2025-05-23 15:43:54 +03:00
qazal
127a7c8aee
assert AST views only exist in the edges ( #10484 )
...
* assert AST views only exist in the edges
* valid without device
2025-05-23 15:27:09 +03:00
qazal
e491168685
add metadata note + whitespace fixup [pr] ( #10483 )
...
* add metadata note + whitespace fixup [pr]
* TestSchedule.test_kernelize_diamond
2025-05-23 14:37:45 +03:00
Sieds Lykles
ce6ebfb8ee
verify rewrites in test_uop_symbolic ( #10430 )
...
* verify rewrites in test_uop_symbolic
* use global context
2025-05-23 06:57:29 -04:00
George Hotz
1e4d63e06e
uops can have multiple metadata ( #10479 )
...
* uops can have multiple metadata
* fixups
2025-05-22 21:35:02 -07:00
George Hotz
9fc01c1e03
support for uop tags ( #10477 )
...
* support for uop tags [pr]
* test uop tags
2025-05-22 19:53:48 -07:00
chenyu
8cc2dff4d8
only float Tensors have gradient [pr] ( #10475 )
2025-05-22 21:02:11 -04:00
George Hotz
147f7747f2
remove the map from create_schedule_with_vars [pr] ( #10472 )
2025-05-22 15:58:25 -07:00