Commit Graph

7280 Commits

Author SHA1 Message Date
Jyotirmaya Mahanta
45f2fb82d5 add failing tests for merge views (#8306)
* add failing tests for merge views

* assert is not none

* make linter happy
2024-12-18 01:27:38 -05:00
George Hotz
801e199196 change buffer to not be pointer [pr] (#8302) 2024-12-17 16:47:51 -08:00
chenyu
4e2d98638d redundant shape simplify in __unsafe_resize [pr] (#8301)
also done in View.create.
2024-12-17 19:00:45 -05:00
chenyu
a9f46ebf70 un1d -> unravel [pr] (#8300)
numpy/torch has a similar function called `unravel_index`
2024-12-17 18:08:37 -05:00
chenyu
66b92b6061 unused case where View adds invalid masked view [pr] (#8299)
code path does not hit this, and we might want to assert if it ever hits
2024-12-17 17:31:01 -05:00
chenyu
513d765c9e remove duplicated canonicalize mask in __unsafe_resize [pr] (#8296)
also more comments and type annotation
2024-12-17 16:54:39 -05:00
qazal
673a76398a fix viz with untracked graph_rewrite calls (#8298)
* fix viz with untracked graph_rewrite calls

* mark as green
2024-12-17 23:37:53 +02:00
qazal
5977a3d8a6 regression test viz failure when there's no tracked context (#8297)
* regression test viz failure when there's no tracked context

* test inner rewrite locations, keep notes
2024-12-17 23:23:27 +02:00
nimlgen
777d2aec05 metal profiler + cpu_profile (#8291)
* metal + cpu_profile

* gpt example

* linter + revert gpt2 for now

* a bit of readme

* linter

* unrelated

* tests

* linter

* b
2024-12-18 00:06:56 +03:00
geohotstan
32c995a5da move to_python_const from onnx_ops to onnx (#8158)
* move to_python_const out

* move more over

* try deleting alternative gather implementation

* Revert "try deleting alternative gather implementation"

This reverts commit d46b30b717.

* add types to onnx ops

* better debug msg

* improve some com.microsoft too

---------

Co-authored-by: chenyu <chenyu@fastmail.com>
2024-12-17 14:12:06 -05:00
George Hotz
21b085b8ed add device UOp [pr] (#8290) 2024-12-17 09:11:51 -08:00
nimlgen
af87e4b53c viz profiler (#8287)
* only hcq

* fix get_metadata

* linter

* oops

* tiny

* linter

* time

* print pm

* hmm

* nits
2024-12-17 20:00:53 +03:00
George Hotz
0794af97db consts do not realize 2024-12-17 08:53:53 -08:00
George Hotz
4764a4c172 Revert "TIP 3 - Tensor realization spec tests (#8288)" (#8289)
This reverts commit c0d4346b5a.
2024-12-17 08:36:11 -08:00
qazal
c0d4346b5a TIP 3 - Tensor realization spec tests (#8288) 2024-12-18 00:04:50 +08:00
qazal
f16188b8c0 viz simplify tracked rewrites [pr] (#8285) 2024-12-17 23:18:08 +08:00
qazal
fd23738d9d start viz better typing, unsupport bottom_up=True [pr] (#8284)
* start viz refactor

* delete bottom_up tracking

* more cleanup

* early continue
2024-12-17 19:52:30 +08:00
qazal
856c068172 make viz work with uop mutability (#8283)
* make viz work with uop mutability

* keep pickle_buffers local
2024-12-17 19:17:41 +08:00
qazal
775746fa08 swizzle / const notes, new asserts [pr] (#8281) 2024-12-17 17:02:38 +08:00
chenyu
df7ba102c3 minor changes to views add [pr] (#8279)
naming / style / comments before logic change
2024-12-16 23:53:59 -05:00
George Hotz
e3731766c9 add a test for UOp representation as Tensor [pr] (#8278) 2024-12-16 19:41:29 -08:00
chenyu
3195bd0d12 more test examples to merge views [pr] (#8277)
these have masks in self and masks in the merged views
2024-12-16 20:44:35 -05:00
chenyu
6e2e56c0ff unit test for view add when self has a mask [pr] (#8276) 2024-12-16 20:07:35 -05:00
George Hotz
cda34ccadf hotfix: time.time -> time.perf_counter 2024-12-16 11:32:49 -08:00
chenyu
2bb298f38d add a missing unittest.main() [pr] (#8274) 2024-12-16 14:28:10 -05:00
leopf
befa8641c8 [pr] GroupOp.Associative (#8239)
* [pr] GroupOp.Associative

* two_stage_associative_folding as lambda
2024-12-16 08:42:26 -08:00
nimlgen
a2a4ff30dc hcq better timout haandling (#8269) 2024-12-16 13:44:55 +03:00
chenyu
f05fd118a2 few minor code cleanups [pr] (#8267) 2024-12-15 23:44:51 -05:00
chenyu
9789a83064 hotfix DEBUG in speed_v_theoretical.py conv (#8266)
infinite loop with manual DEBUG set `DEBUG=2 python test/external/speed_v_theoretical.py -k conv`

```
  File "/Users/chenyu/code/tinygrad/tinygrad/helpers.py", line 95, in __ge__
    def __ge__(self, x): return self.value >= x
                                ^^^^^^^^^^^^^^^
  [Previous line repeated 4984 more times]
RecursionError: maximum recursion depth exceeded in comparison
```
2024-12-15 19:44:45 -05:00
uuuvn
da2245a458 Fix double => half cast on clang (#8265) 2024-12-15 11:24:05 -08:00
qazal
1d21651823 free toposort cache after it goes out of scope [pr] (#8264) 2024-12-15 19:50:42 +02:00
George Hotz
53603c4ec1 simple ignore mop noops [pr] (#8263) 2024-12-15 09:32:42 -08:00
qazal
e1518f1e38 minimal failing test for UOp.toposort gc [pr] (#8261) 2024-12-15 19:30:56 +02:00
qazal
67e66ac1ab hotfix: schedule_uop in process replay (#8260)
* hotfix: schedule_uop in process replay

* notes
2024-12-15 21:24:54 +08:00
qazal
58b224a40f schedule_uop api refactor [pr] (#8259) 2024-12-15 19:50:00 +08:00
qazal
ef1346ab39 simplify to_uop more, toward deleting early bufferize (#8254) 2024-12-15 17:41:31 +08:00
qazal
d05e21cb69 replace lazy srcs with the new uop api [pr] (#8255)
* buf_uop_view function

* srcs shouldn't exist

* fix TestTensorMetadata

---------

Co-authored-by: George Hotz <geohot@gmail.com>
2024-12-15 17:09:54 +08:00
qazal
e0aeb2e9f4 unwrap existing buffer from assign src [pr] (#8252)
* unwrap existing buffer from assign src [pr]

* this is a upat
2024-12-15 03:29:51 +02:00
qazal
ace654a7e4 keep realized passthrough [pr] (#8248)
* keep realized passthrough [pr]

* more pruning
2024-12-15 02:23:15 +02:00
qazal
d78e75f710 hotfix: use ubuntu-22.04 ci from 8249 (#8251) 2024-12-15 02:23:00 +02:00
chenyu
16c1b2379d remove an if in reshape [pr] (#8246)
not needed, likely a hack to work around pre-resolve?
2024-12-14 16:05:50 -05:00
chenyu
4c1733440d failed test case for stable sigmoid (#8245)
it should also work if implemented differently
2024-12-14 15:19:41 -05:00
chenyu
3eb952f537 fix some sigmoid extreme (#8238)
* fix some sigmoid extreme

quite brittle... the problem is it has 3 terms and mul might have bad order

* test_tanh_extreme

* just sigmoid gradient
2024-12-14 14:37:06 -05:00
George Hotz
bcd7ea60f0 hotfix: a few more grad tests 2024-12-13 21:03:02 -08:00
George Hotz
734f2c5344 compute gradient [pr] (#8237)
* compute gradient [pr]

* schedule_step_with_grads

* second deriv works
2024-12-13 20:46:01 -08:00
chenyu
0708a169dd more comments and tests to reshape [pr] (#8236) 2024-12-13 23:21:51 -05:00
George Hotz
8396d90f91 non controversial changes from optim branch [pr] (#8234) 2024-12-13 19:24:16 -08:00
George Hotz
37fa38d272 Revert "switch beautiful_mnist to use new optimizer [pr] (#8231)" (#8233)
This reverts commit e9ee39df22.
2024-12-13 19:07:09 -08:00
George Hotz
e9ee39df22 switch beautiful_mnist to use new optimizer [pr] (#8231)
* switch beautiful_mnist to use new optimizer [pr]

* fix abstractions3 + docs

* fix OptimizerGroup with schedule_step api
2024-12-13 18:27:16 -08:00
chenyu
e0956c518c move some ifs from merge_dims to reshape [pr] (#8229)
the third return value is only used in reshape
2024-12-13 19:56:15 -05:00