chenyu and GitHub
bdede4924e
fix odd number in get_test_global_size ( #10671 )
...
factor might not be a integer if input global_size has an odd number in it
2025-06-06 17:31:35 -04:00
George Hotz and GitHub
baba274a76
minimal mstack pr to fix allreduce ( #10649 )
...
* minimal mstack pr to fix allreduce
* fix webgpu
2025-06-05 15:14:53 -07:00
qazal and GitHub
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
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 <[email protected] >
2025-05-28 16:28:37 -04:00
George Hotz and GitHub
a07caaca0d
handle stride 0 variable reshape ( #10536 )
2025-05-27 10:00:24 -07:00
George Hotz and GitHub
41e3d07d7f
view gradient is tricky ( #10528 )
...
* view gradient is tricky
* explicit
2025-05-26 22:28:30 -07:00
Sieds Lykles and GitHub
478c76f4b7
More div conditions ( #10432 )
...
* add condition
* add test
* use Variable
2025-05-26 07:36:05 -04:00
Sieds Lykles and GitHub
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
wozeparrot and GitHub
a18963d9e7
feat: use tinygrad useragent ( #10488 )
2025-05-23 15:44:40 -07:00
qazal and GitHub
7a762f01ab
s/shape_spec/ast_spec [pr] ( #10485 )
2025-05-23 15:43:54 +03:00
qazal and GitHub
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
Sieds Lykles and GitHub
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
chenyu and GitHub
8cc2dff4d8
only float Tensors have gradient [pr] ( #10475 )
2025-05-22 21:02:11 -04:00
chenyu and GitHub
7bfb20757c
fix tensor int floor div ( #10327 )
...
* fix tensor int floor div
* test_float_floordiv_scalar
2025-05-21 06:46:54 -04:00
Sieds Lykles and GitHub
2b4375f36d
Correct divmod folding behind flag ( #10433 )
...
* add flag
* add test
* remove import
2025-05-21 06:46:13 -04:00
Sieds Lykles and GitHub
db09676250
Dont simplify gate in gate, fix FUSE_ARANGE=1 python test/test_ops.py TestOps.test_scatter_add ( #10411 )
...
* substitute out index
* Add test
* change comment
2025-05-19 13:16:21 -04:00
George Hotz and GitHub
411392dfb7
move files into uop dir ( #10399 )
...
* move files into uop dir [pr]
* tinygrad.uop is a thing
* fix uop docs, no pr
* fix viz
2025-05-18 11:38:28 -07:00
George Hotz and GitHub
6f77b938d7
Move getbits tests into test_helpers ( #10382 )
2025-05-17 17:04:00 -07:00
George Hotz and GitHub
e13f2a3092
multi is O(1) ( #10183 )
...
* multi is O(1)
* allreduce
* no new uops needed
* junk
* something
* simple
* that's really what i want
* closer
* inject _device_num
* pretty print
* cleanups
* this
* early dnum
* ops allreduce is good
* ish
* device is the tuple and this is fine
* simpler
* progress
* copy_multi
* work
* more tests
* more tests pass
* work
* no None axis
* tests
* no none multi
* type fixes
* pre commit passes
* lil
* remove this
* mlperf dataloader on mac
* that test was wrong
* unbind
* support DEBUG=2
* realize
* only unbind bound vars
* don't include fixedvars
* graph test
* one test
* fixedvars in hcq
* new ring reduce
* ring reduce
* simpler ring
* mselect
* mselect doesn't work
* Revert "mselect doesn't work"
This reverts commit c78b77bd7d .
* Revert "mselect"
This reverts commit bb2e430ac3 .
* simpler
* fixups
* no optional
* fix jit
* move things around
* cleanup multi
* simpler multi
* simpler reshape
2025-05-16 23:14:23 -07:00
George Hotz and GitHub
876d2275a1
changes from new multi ( #10353 )
...
* changes from new multi
* revert hcq change
2025-05-16 13:07:29 -07:00
qazal and GitHub
043efc6ec4
do not require self for track_rewrites [pr] ( #10302 )
2025-05-14 18:23:32 +03:00
Sieds Lykles and GitHub
02208565de
add check ( #10257 )
2025-05-12 11:03:01 -04:00
4c7c139102
Use cmod/cdiv in sym_infer ( #10258 )
...
* Use cmod/cdiv in sym_infer
* test
---------
Co-authored-by: chenyu <[email protected] >
2025-05-12 09:07:28 -04:00
Sieds Lykles and GitHub
7c4b381fbf
Extra simplify valid test [pr] ( #10256 )
...
* add test
* Change the range
* add todo test
2025-05-12 07:32:03 -04:00
74e40aafa0
use cdiv in div and mod folding ( #10216 )
...
* use cdiv
* use cdiv and cmod there as well
* Add tests
---------
Co-authored-by: chenyu <[email protected] >
2025-05-09 12:37:24 -04:00
Sieds Lykles and GitHub
8da9c070ca
take gcd out of trunc div ( #10238 )
2025-05-09 12:08:10 -04:00
chenyu and GitHub
9846435c2e
fix test_div_numerator_negative ( #10229 )
...
the simplification was wrong with negative const_factor
2025-05-09 06:19:59 -04:00
chenyu and GitHub
cba508c8c3
update uop symbolic tests ( #10228 )
...
clean up TODOs and update tests
2025-05-09 01:55:53 -04:00
chenyu and GitHub
56def6c319
better bound for mod negative number ( #10227 )
2025-05-09 01:19:47 -04:00
chenyu and GitHub
99f6d89dfb
tighter idiv bound for symbolic denominator ( #10226 )
2025-05-08 22:38:56 -04:00
Sieds Lykles and GitHub
2891892834
Fold constant variable ( #10196 )
...
* Add rule
* add test and comment
* merge rule
2025-05-07 11:39:44 -07:00
Sieds Lykles and GitHub
8386527bb9
Take neg out of idiv ( #10164 )
...
* Add rules
* Fix tests
* Move rules lower to prevent recursion
2025-05-07 11:39:08 -07:00
09544d4556
Add rule and test ( #10189 )
...
Co-authored-by: chenyu <[email protected] >
2025-05-07 10:15:55 -04:00
George Hotz and GitHub
603c03bef2
fix tests for rewrite [pr] ( #10167 )
...
* fix tests for rewrite [pr]
* cleaner
* delete linearize_uop
* clean up the rest
2025-05-05 19:19:49 -07:00
848c7783a4
Sign check in div const div pattern ( #10150 )
...
* Add rule
* Relax the condition
* Add test
---------
Co-authored-by: chenyu <[email protected] >
2025-05-03 18:04:34 -04:00
George Hotz and GitHub
ef011ff5f9
flip Ops.COPY order [pr] ( #10122 )
...
* flip Ops.COPY order [pr]
* fix copy and support multi device copy in _device
2025-05-01 00:26:24 -04:00
George Hotz and GitHub
dd0070daab
Revert "flip Ops.COPY order [pr] ( #10120 )" ( #10121 )
...
This reverts commit 984f09ac74 .
2025-04-30 17:25:21 -04:00
George Hotz and GitHub
984f09ac74
flip Ops.COPY order [pr] ( #10120 )
2025-04-30 16:50:18 -04:00
George Hotz and GitHub
c3ff308abb
range has only one src now [pr] ( #10100 )
...
* range has only one op now
* fix z3 checker
* ci fix
* needs shell
* try pip ensure update
* that ensurepip is useless
* upgrade pip before cache
* windows happy?
2025-04-29 10:31:05 -04:00
qazal and GitHub
cbf7347cd6
display viz rewrites with tabbing if they are subrewrites ( #10097 )
...
* display viz rewrites with tabbing if they are subrewrites
* update viz api
2025-04-29 17:57:21 +08:00
Sieds Lykles and GitHub
dbb7aee02e
Split constant in div with negative x ( #10088 )
...
* add rule
* change test
* lower complexity limit
* remove offset in fold_unrolled_divs
* remove import
* add one more condition
2025-04-28 16:24:14 -04:00
690dac79b5
don't modify the ranges on reduce rewrite ( #10062 )
...
* bug in div range folding
* simpler
* oh, this is right for indexing, but the div mod folding needs to be fixed
* reenable
* Passing test_complexity_w_unroll2 (#10068 )
* Passing
* remove non_folded_divs
* Add check for negative tern in div folding
* Add test
* bump that limit
* fix casted
---------
Co-authored-by: Sieds Lykles <[email protected] >
2025-04-28 12:01:19 -04:00
chenyu and GitHub
4c1ce1a299
don't simplify if div folding resulted in negative numerator ( #10064 )
...
* don't simplify if div folding resulted in negative numerator
* test
2025-04-26 17:01:18 -04:00
George Hotz and GitHub
2ed3acd767
toposort is a function [pr] ( #10004 )
2025-04-23 16:25:03 +01:00
geohot
d1f6701eb7
hotfix: lower amd threshold + improve block reorder test
2025-04-22 20:44:29 +01:00
George Hotz and GitHub
c1539b0319
putting add first orders loads as expected ( #9991 )
2025-04-22 20:12:05 +01:00
George Hotz and GitHub
feee6986c9
faster block reorder ( #9990 )
...
* faster block reorder [pr]
* that shouldn't change order
* key just in sorted
* ind
2025-04-22 19:18:57 +01:00
chenyu and GitHub
9e5e371999
make DISABLE_COMPILER_CACHE a ContextVar [pr] ( #9983 )
2025-04-22 10:32:54 -04:00
George Hotz and GitHub
c519b553db
non recursive toposort is 2x+ faster ( #9979 )
...
* non recursive toposort is 2x+ faster
* don't change the order
2025-04-22 13:59:38 +01:00
George Hotz and GitHub
f5dc70c624
microbenchmarks + micro speed ups ( #9972 )
...
* microbenchmarks
* forgot the ubenchs
* clean up type verify
2025-04-22 11:30:46 +01:00