tinygrad 0.9.1__py3-none-any.whl → 0.10.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. tinygrad/__init__.py +11 -6
  2. tinygrad/codegen/kernel.py +308 -175
  3. tinygrad/codegen/linearize.py +95 -0
  4. tinygrad/codegen/lowerer.py +143 -0
  5. tinygrad/codegen/transcendental.py +257 -0
  6. tinygrad/codegen/uopgraph.py +506 -0
  7. tinygrad/device.py +72 -171
  8. tinygrad/dtype.py +122 -47
  9. tinygrad/engine/jit.py +184 -87
  10. tinygrad/{lazy.py → engine/lazy.py} +74 -66
  11. tinygrad/engine/memory.py +51 -0
  12. tinygrad/engine/realize.py +86 -61
  13. tinygrad/engine/schedule.py +366 -317
  14. tinygrad/engine/search.py +58 -47
  15. tinygrad/function.py +59 -58
  16. tinygrad/helpers.py +120 -102
  17. tinygrad/multi.py +82 -78
  18. tinygrad/nn/__init__.py +116 -67
  19. tinygrad/nn/datasets.py +12 -5
  20. tinygrad/nn/optim.py +1 -1
  21. tinygrad/nn/state.py +91 -6
  22. tinygrad/ops.py +1126 -143
  23. tinygrad/renderer/__init__.py +47 -23
  24. tinygrad/renderer/cstyle.py +338 -265
  25. tinygrad/renderer/llvmir.py +125 -143
  26. tinygrad/renderer/ptx.py +225 -0
  27. tinygrad/runtime/autogen/adreno.py +17904 -0
  28. tinygrad/runtime/autogen/amd_gpu.py +46974 -11993
  29. tinygrad/runtime/autogen/cuda.py +6 -162
  30. tinygrad/runtime/autogen/io_uring.py +97 -63
  31. tinygrad/runtime/autogen/kfd.py +60 -47
  32. tinygrad/runtime/autogen/kgsl.py +1386 -0
  33. tinygrad/runtime/autogen/libc.py +5462 -0
  34. tinygrad/runtime/autogen/nv_gpu.py +1976 -1957
  35. tinygrad/runtime/autogen/nvrtc.py +579 -0
  36. tinygrad/runtime/autogen/opencl.py +11 -11
  37. tinygrad/runtime/autogen/qcom_dsp.py +1739 -0
  38. tinygrad/runtime/graph/clang.py +3 -3
  39. tinygrad/runtime/graph/cuda.py +11 -15
  40. tinygrad/runtime/graph/hcq.py +120 -107
  41. tinygrad/runtime/graph/metal.py +71 -43
  42. tinygrad/runtime/ops_amd.py +244 -323
  43. tinygrad/runtime/ops_clang.py +12 -5
  44. tinygrad/runtime/ops_cloud.py +220 -0
  45. tinygrad/runtime/ops_cuda.py +42 -99
  46. tinygrad/runtime/ops_disk.py +25 -26
  47. tinygrad/runtime/ops_dsp.py +181 -0
  48. tinygrad/runtime/ops_gpu.py +29 -16
  49. tinygrad/runtime/ops_hip.py +68 -0
  50. tinygrad/runtime/ops_llvm.py +15 -10
  51. tinygrad/runtime/ops_metal.py +147 -64
  52. tinygrad/runtime/ops_nv.py +356 -397
  53. tinygrad/runtime/ops_python.py +78 -79
  54. tinygrad/runtime/ops_qcom.py +405 -0
  55. tinygrad/runtime/support/__init__.py +0 -0
  56. tinygrad/runtime/support/compiler_cuda.py +77 -0
  57. tinygrad/runtime/{driver/hip_comgr.py → support/compiler_hip.py} +13 -1
  58. tinygrad/runtime/support/elf.py +38 -0
  59. tinygrad/runtime/support/hcq.py +539 -0
  60. tinygrad/shape/shapetracker.py +40 -50
  61. tinygrad/shape/view.py +102 -63
  62. tinygrad/tensor.py +1109 -365
  63. {tinygrad-0.9.1.dist-info → tinygrad-0.10.0.dist-info}/METADATA +54 -50
  64. tinygrad-0.10.0.dist-info/RECORD +77 -0
  65. {tinygrad-0.9.1.dist-info → tinygrad-0.10.0.dist-info}/WHEEL +1 -1
  66. tinygrad/codegen/linearizer.py +0 -528
  67. tinygrad/codegen/uops.py +0 -451
  68. tinygrad/engine/graph.py +0 -100
  69. tinygrad/renderer/assembly.py +0 -269
  70. tinygrad/shape/symbolic.py +0 -327
  71. tinygrad-0.9.1.dist-info/RECORD +0 -63
  72. /tinygrad/{runtime/driver/__init__.py → py.typed} +0 -0
  73. {tinygrad-0.9.1.dist-info → tinygrad-0.10.0.dist-info}/LICENSE +0 -0
  74. {tinygrad-0.9.1.dist-info → tinygrad-0.10.0.dist-info}/top_level.txt +0 -0
@@ -1,58 +1,60 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tinygrad
3
- Version: 0.9.1
3
+ Version: 0.10.0
4
4
  Summary: You like pytorch? You like micrograd? You love tinygrad! <3
5
5
  Author: George Hotz
6
6
  License: MIT
7
7
  Classifier: Programming Language :: Python :: 3
8
8
  Classifier: License :: OSI Approved :: MIT License
9
- Requires-Python: >=3.8
9
+ Requires-Python: >=3.10
10
10
  Description-Content-Type: text/markdown
11
11
  License-File: LICENSE
12
- Requires-Dist: numpy
13
- Requires-Dist: pyobjc-framework-Metal ; platform_system == "Darwin"
14
- Requires-Dist: pyobjc-framework-libdispatch ; platform_system == "Darwin"
15
12
  Provides-Extra: arm
16
- Requires-Dist: unicorn ; extra == 'arm'
13
+ Requires-Dist: unicorn; extra == "arm"
17
14
  Provides-Extra: docs
18
- Requires-Dist: mkdocs-material ; extra == 'docs'
19
- Requires-Dist: mkdocstrings[python] ; extra == 'docs'
20
- Requires-Dist: markdown-callouts ; extra == 'docs'
21
- Requires-Dist: markdown-exec[ansi] ; extra == 'docs'
22
- Requires-Dist: black ; extra == 'docs'
15
+ Requires-Dist: mkdocs; extra == "docs"
16
+ Requires-Dist: mkdocs-material; extra == "docs"
17
+ Requires-Dist: mkdocstrings[python]; extra == "docs"
18
+ Requires-Dist: markdown-callouts; extra == "docs"
19
+ Requires-Dist: markdown-exec[ansi]; extra == "docs"
20
+ Requires-Dist: black; extra == "docs"
21
+ Requires-Dist: numpy; extra == "docs"
23
22
  Provides-Extra: linting
24
- Requires-Dist: pylint ; extra == 'linting'
25
- Requires-Dist: mypy ; extra == 'linting'
26
- Requires-Dist: typing-extensions ; extra == 'linting'
27
- Requires-Dist: pre-commit ; extra == 'linting'
28
- Requires-Dist: ruff ; extra == 'linting'
29
- Requires-Dist: types-tqdm ; extra == 'linting'
23
+ Requires-Dist: pylint; extra == "linting"
24
+ Requires-Dist: mypy==1.11.2; extra == "linting"
25
+ Requires-Dist: typing-extensions; extra == "linting"
26
+ Requires-Dist: pre-commit; extra == "linting"
27
+ Requires-Dist: ruff; extra == "linting"
28
+ Requires-Dist: types-tqdm; extra == "linting"
30
29
  Provides-Extra: llvm
31
- Requires-Dist: llvmlite ; extra == 'llvm'
30
+ Requires-Dist: llvmlite; extra == "llvm"
32
31
  Provides-Extra: testing
33
- Requires-Dist: torch ; extra == 'testing'
34
- Requires-Dist: pillow ; extra == 'testing'
35
- Requires-Dist: pytest ; extra == 'testing'
36
- Requires-Dist: pytest-xdist ; extra == 'testing'
37
- Requires-Dist: onnx ==1.16.0 ; extra == 'testing'
38
- Requires-Dist: onnx2torch ; extra == 'testing'
39
- Requires-Dist: opencv-python ; extra == 'testing'
40
- Requires-Dist: tabulate ; extra == 'testing'
41
- Requires-Dist: tqdm ; extra == 'testing'
42
- Requires-Dist: safetensors ; extra == 'testing'
43
- Requires-Dist: transformers ; extra == 'testing'
44
- Requires-Dist: sentencepiece ; extra == 'testing'
45
- Requires-Dist: tiktoken ; extra == 'testing'
46
- Requires-Dist: librosa ; extra == 'testing'
47
- Requires-Dist: networkx ; extra == 'testing'
48
- Requires-Dist: hypothesis ; extra == 'testing'
49
- Requires-Dist: nibabel ; extra == 'testing'
50
- Requires-Dist: bottle ; extra == 'testing'
32
+ Requires-Dist: numpy; extra == "testing"
33
+ Requires-Dist: torch; extra == "testing"
34
+ Requires-Dist: pillow; extra == "testing"
35
+ Requires-Dist: pytest; extra == "testing"
36
+ Requires-Dist: pytest-xdist; extra == "testing"
37
+ Requires-Dist: onnx==1.16.0; extra == "testing"
38
+ Requires-Dist: onnx2torch; extra == "testing"
39
+ Requires-Dist: opencv-python; extra == "testing"
40
+ Requires-Dist: tabulate; extra == "testing"
41
+ Requires-Dist: tqdm; extra == "testing"
42
+ Requires-Dist: safetensors; extra == "testing"
43
+ Requires-Dist: transformers; extra == "testing"
44
+ Requires-Dist: sentencepiece; extra == "testing"
45
+ Requires-Dist: tiktoken; extra == "testing"
46
+ Requires-Dist: blobfile; extra == "testing"
47
+ Requires-Dist: librosa; extra == "testing"
48
+ Requires-Dist: networkx; extra == "testing"
49
+ Requires-Dist: hypothesis; extra == "testing"
50
+ Requires-Dist: nibabel; extra == "testing"
51
+ Requires-Dist: bottle; extra == "testing"
52
+ Requires-Dist: ggml-python; extra == "testing"
51
53
  Provides-Extra: testing_tf
52
- Requires-Dist: tensorflow ==2.15.1 ; extra == 'testing_tf'
53
- Requires-Dist: tensorflow-addons ; extra == 'testing_tf'
54
+ Requires-Dist: tensorflow==2.15.1; extra == "testing-tf"
55
+ Requires-Dist: tensorflow-addons; extra == "testing-tf"
54
56
  Provides-Extra: triton
55
- Requires-Dist: triton-nightly >=2.1.0.dev20231014192330 ; extra == 'triton'
57
+ Requires-Dist: triton-nightly>=2.1.0.dev20231014192330; extra == "triton"
56
58
 
57
59
  <div align="center">
58
60
 
@@ -107,7 +109,7 @@ And we can change `DEBUG` to `4` to see the generated code.
107
109
  As it turns out, 90% of what you need for neural networks are a decent autograd/tensor library.
108
110
  Throw in an optimizer, a data loader, and some compute, and you have all you need.
109
111
 
110
- ```py
112
+ ```python
111
113
  from tinygrad import Tensor, nn
112
114
 
113
115
  class LinearNet:
@@ -122,11 +124,12 @@ optim = nn.optim.Adam([model.l1, model.l2], lr=0.001)
122
124
 
123
125
  x, y = Tensor.rand(4, 1, 28, 28), Tensor([2,4,3,7]) # replace with real mnist dataloader
124
126
 
125
- for i in range(10):
126
- optim.zero_grad()
127
- loss = model(x).sparse_categorical_crossentropy(y).backward()
128
- optim.step()
129
- print(i, loss.item())
127
+ with Tensor.train():
128
+ for i in range(10):
129
+ optim.zero_grad()
130
+ loss = model(x).sparse_categorical_crossentropy(y).backward()
131
+ optim.step()
132
+ print(i, loss.item())
130
133
  ```
131
134
 
132
135
  See [examples/beautiful_mnist.py](examples/beautiful_mnist.py) for the full version that gets 98% in ~5 seconds
@@ -142,9 +145,12 @@ tinygrad already supports numerous accelerators, including:
142
145
  - [x] [CUDA](tinygrad/runtime/ops_cuda.py)
143
146
  - [x] [AMD](tinygrad/runtime/ops_amd.py)
144
147
  - [x] [NV](tinygrad/runtime/ops_nv.py)
148
+ - [x] [QCOM](tinygrad/runtime/ops_qcom.py)
145
149
 
146
150
  And it is easy to add more! Your accelerator of choice only needs to support a total of ~25 low level ops.
147
151
 
152
+ To check default accelerator run: `python3 -c "from tinygrad import Device; print(Device.DEFAULT)"`
153
+
148
154
  ## Installation
149
155
 
150
156
  The current recommended way to install tinygrad is from source.
@@ -169,7 +175,7 @@ Documentation along with a quick start guide can be found on the [docs website](
169
175
 
170
176
  ### Quick example comparing to PyTorch
171
177
 
172
- ```py
178
+ ```python
173
179
  from tinygrad import Tensor
174
180
 
175
181
  x = Tensor.eye(3, requires_grad=True)
@@ -182,7 +188,7 @@ print(y.grad.numpy()) # dz/dy
182
188
  ```
183
189
 
184
190
  The same thing but in PyTorch:
185
- ```py
191
+ ```python
186
192
  import torch
187
193
 
188
194
  x = torch.eye(3, requires_grad=True)
@@ -230,6 +236,4 @@ python3 -m pytest test/ # whole test suite
230
236
 
231
237
  #### Process replay tests
232
238
 
233
- [Process replay](https://github.com/tinygrad/tinygrad/blob/master/test/external/process_replay/process_replay.py) detects changes in the generated kernels of CI tests by comparing them against tinygrad master. If your PR is a refactor or speedup without any expected behavior change, it should include a green process replay pass to get merged.
234
-
235
- You can enable process replay by adding [run_process_replay] to your PR title. [example](https://github.com/tinygrad/tinygrad/pull/4995). Note that you should keep your branch up-to-date with master.
239
+ [Process replay](https://github.com/tinygrad/tinygrad/blob/master/test/external/process_replay/README.md) compares your PR's generated kernels against master. If your PR is a refactor or speedup without any expected behavior change, It should include [pr] in the pull request title.
@@ -0,0 +1,77 @@
1
+ tinygrad/__init__.py,sha256=2Jhg7NSWlegCi4OAfGW0iHRVHeqMx09f7446rwAmc60,587
2
+ tinygrad/device.py,sha256=8jr2SuxLHFk84e_9ky6pdh5v8MvPlT5rXsP0Ls04kNU,12513
3
+ tinygrad/dtype.py,sha256=a9WaH5bISo1WNFvPpcC_EL_fHNP9faiBIOHFrKaYl9A,9874
4
+ tinygrad/function.py,sha256=SAVRzPzh5kKyb01TSOCbFG8B02he7aer7S4uoY-XFoA,8464
5
+ tinygrad/helpers.py,sha256=yJelGLmg8SH1R9gW77bv5bkuI4RCXuTcQVnZdPlk108,17969
6
+ tinygrad/multi.py,sha256=cRy_bVA46GwB0aES_jcuLYLco6klQUuiosQcIiANBJ0,11809
7
+ tinygrad/ops.py,sha256=sckffasep4LxfWFeEBS6BeMEYpjvqoBUL2k6mMh__ME,60926
8
+ tinygrad/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
+ tinygrad/tensor.py,sha256=NF2UNn_Mvv1uZT9H8PYVLawQ7dEpRwQU-1wiu-cREhM,170536
10
+ tinygrad/codegen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
+ tinygrad/codegen/kernel.py,sha256=WzcvbkOLBPhcC8tuPUEH1BLF_UqFzL7PZkanfefSHgQ,45406
12
+ tinygrad/codegen/linearize.py,sha256=kQ1NQE_8OThIoWRrMVCvXKqd_8uXB_4uIrB_tw_hXGc,3926
13
+ tinygrad/codegen/lowerer.py,sha256=GwFiie_j1-kLZrXELJv_HTEltSJ1DULWxsbiQDnnrT8,7725
14
+ tinygrad/codegen/transcendental.py,sha256=lZX8y_eAPQGom8gNypNLg5PpxBchrrLKG6b24CZLLkc,13155
15
+ tinygrad/codegen/uopgraph.py,sha256=bqGgqSbmE76pj77V96i5E3HucpRA67Q84MqHX0Fn3MY,28842
16
+ tinygrad/engine/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
+ tinygrad/engine/jit.py,sha256=wXlTUhXa4p11ZmShCPY5nH2PGxJpDXbfCRFk7rOMGiA,15838
18
+ tinygrad/engine/lazy.py,sha256=g8i1W5Lrd5WA8rcKBBonVxLUIVVOjPO46ZIDteADIrk,13836
19
+ tinygrad/engine/memory.py,sha256=30WHQahkQR0MooGgxA2DuyLnxpLtiRu-nuF11hhzZb4,3303
20
+ tinygrad/engine/realize.py,sha256=cGVrGrryfaNgoNM9DNhvfngH7tkSm73nMLc35G_Ud6E,12922
21
+ tinygrad/engine/schedule.py,sha256=jP4F0bgGWKVDxWjzK8ozHwcntn22Kkgixvj2UAAd1B4,23495
22
+ tinygrad/engine/search.py,sha256=fJfiwttnpC0NpCfrRPwbk_9VPMLnBDXH0S1IkK3Ow6s,12473
23
+ tinygrad/nn/__init__.py,sha256=Jl7ddXj8EOhximbQWUgVzkwn_ODupNJPda_v-HJp1As,15574
24
+ tinygrad/nn/datasets.py,sha256=JyhoLwNB9Yek2IORMQ6cGRh5fnrYol5hkz1cAuTELPk,1067
25
+ tinygrad/nn/optim.py,sha256=eznleXq_eudT--oEIUD79ZMRtAOczoCssTAPWQ_t30E,6808
26
+ tinygrad/nn/state.py,sha256=XvgYNHEHksQyGvQnHmtRB4PLF1OUQi72FX7MKp_CTWI,14806
27
+ tinygrad/renderer/__init__.py,sha256=Edhs-ldaHirH0F_JAN7HrVZ9AGCjLzQdb57l1es4muE,4529
28
+ tinygrad/renderer/cstyle.py,sha256=oMIQk2TscKi1huNaUwSyJC0u-NZABvJ9xI3Ti1a7RII,31279
29
+ tinygrad/renderer/llvmir.py,sha256=k_OPni2X7xVCUugiJ5ZczXf8wYrlkFllcZXhlMt1fNc,8137
30
+ tinygrad/renderer/ptx.py,sha256=lIcMtqcvcrC9vW6SNqiSBDyobP-ytGwGahZZFQwSKTQ,16041
31
+ tinygrad/runtime/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
+ tinygrad/runtime/ops_amd.py,sha256=7ZKaqBLL6gqhYlwhB8m6n5wlN-hPs_t36MPaQR_ocBA,29860
33
+ tinygrad/runtime/ops_clang.py,sha256=kEbyFQimfLwuhOeIIKvcXUpw7R8H1Mf5YzceYPTcs4E,1758
34
+ tinygrad/runtime/ops_cloud.py,sha256=wO4CZxl2fdVwcZsk41Rr473git_IDexIMru_KZV_vno,10425
35
+ tinygrad/runtime/ops_cuda.py,sha256=TDXjERPZ8l0btVa1WRqVLd-DOAECBfxvMvLitC9Rows,6994
36
+ tinygrad/runtime/ops_disk.py,sha256=b3jwNJW_s3CtRmubUIWbHChERJFbUJrfCl_alFDtepg,6689
37
+ tinygrad/runtime/ops_dsp.py,sha256=NgOjV-hrsmwfJEtkr63KW7esuzQH2rk4yjzxjLcpuOg,10292
38
+ tinygrad/runtime/ops_gpu.py,sha256=0l2QF3EMtNjRFRE8q5rp7B6Ub88Mir_6rz0aDnLupZM,9006
39
+ tinygrad/runtime/ops_hip.py,sha256=nbYQIGKbSgAJ2PILJH3J-i3QR5AmJG8KTVMGqsbPLtE,3845
40
+ tinygrad/runtime/ops_llvm.py,sha256=mSrWSKTY1wAy1skFXTgMAJPYLgxFD_ycphEkzhfhIZo,2499
41
+ tinygrad/runtime/ops_metal.py,sha256=C_1CqWxf-VME0XyJ7i29Bzx7VURTcDUh4lH_t3QrFcw,11144
42
+ tinygrad/runtime/ops_npy.py,sha256=HSDb47vcbPvDiG3EmSGPC0W-EPO9O5R0TqlQKnYxANU,404
43
+ tinygrad/runtime/ops_nv.py,sha256=tpkmlEYFZW18k0mzHFP53esFpWx1O1mG06uv-y4GIro,38280
44
+ tinygrad/runtime/ops_python.py,sha256=R6ie1DrY8uuaffS3ZPOWg3x1FBATlBLDMkIoBVWmUZs,11156
45
+ tinygrad/runtime/ops_qcom.py,sha256=I8mXBCJk9gsDcFVwDakktgwuMwxjauHp5vub9LoKKjM,24453
46
+ tinygrad/runtime/autogen/adreno.py,sha256=u7VxIomPAlW3nFUs4gSTe-6ijam_ywkvDM9OuTLF-j8,897915
47
+ tinygrad/runtime/autogen/amd_gpu.py,sha256=blqmF-0gDby005JKnr07bNxuRSQLo5i0hpepcjUgQ_Y,2342436
48
+ tinygrad/runtime/autogen/comgr.py,sha256=mhQtuF_vGDrJZD3iyQ_38FrS_2jp3WtImNZPC4TBuAg,39793
49
+ tinygrad/runtime/autogen/cuda.py,sha256=N0QyaMvQumr_HZh7fusCHM1d4o4mYti3Wq1MN7JSKr8,243920
50
+ tinygrad/runtime/autogen/hip.py,sha256=1yUHDCwL3KkD15if2Q1Ud3GbJiR7DxsNorKZTCINw54,245532
51
+ tinygrad/runtime/autogen/hsa.py,sha256=7Hsrn17HmChyeFOSX_3Fnzl9c0COtq2Z2ExqGu5FNiU,277716
52
+ tinygrad/runtime/autogen/io_uring.py,sha256=ZIZ2YnQkLr8WIHMieBw9Dv-NZ1ar9TwdP4YBv3gJm28,59786
53
+ tinygrad/runtime/autogen/kfd.py,sha256=LQjcTZK93o4q6Qp4YlOu3aOVGL_RDlq6qDg5j0nRzQE,30815
54
+ tinygrad/runtime/autogen/kgsl.py,sha256=Dg1skDsVdwZTGb1Cg-UTts-z4rta7qm8XFmods-ZiSU,50663
55
+ tinygrad/runtime/autogen/libc.py,sha256=xKJk2hCzVpauJSc8wCQis5x3SwcXnDli7_HyRUqEGRc,197318
56
+ tinygrad/runtime/autogen/nv_gpu.py,sha256=9X2tPdv2E5JmXGZeT8i9jL19YJ4ETTsYwfU_Wn9mTwc,1679326
57
+ tinygrad/runtime/autogen/nvrtc.py,sha256=19te2-TW5suFy85KnJox3CPOmeeml5YxqIDeL-Bx_m4,23132
58
+ tinygrad/runtime/autogen/opencl.py,sha256=NL6fa8P3KC_McNZ8g2babdr3b8vrY-bFK0qzNAtL-rE,82656
59
+ tinygrad/runtime/autogen/qcom_dsp.py,sha256=jx36-zC6reTuWgfbHCrKVjOZcF4Q9fBnq3CuTbxztQk,61848
60
+ tinygrad/runtime/graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
61
+ tinygrad/runtime/graph/clang.py,sha256=DakBGMhEu-U5VT6xb18yL3HOuZh80BWzioZnXqTaWnE,1994
62
+ tinygrad/runtime/graph/cuda.py,sha256=MLXZbATjpfriNBGmA9OYXV5sAfqn6Q4hZ8H0Etw9HTg,5005
63
+ tinygrad/runtime/graph/hcq.py,sha256=Wqu4Ry5juXCj1HOV_BpECf6tDqCtl2_sAWp8vuBJyD8,12391
64
+ tinygrad/runtime/graph/metal.py,sha256=5HRmOrsXI8Q4eieT52zEeeNEbmjUZ1agAggefXk959U,6093
65
+ tinygrad/runtime/support/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
66
+ tinygrad/runtime/support/compiler_cuda.py,sha256=rS0XCFTy0blcdRstKVGKKRfoEU975DKzjbZKqg_YawY,5441
67
+ tinygrad/runtime/support/compiler_hip.py,sha256=fbRP82UdG4T-KCRYH_H2hEXlMFeHIJntSnY35ZWE5JY,4398
68
+ tinygrad/runtime/support/elf.py,sha256=FVoZu5r83RPk8ArBVpmOcbPDbtSz6hiv_OTCrQ9REHA,2385
69
+ tinygrad/runtime/support/hcq.py,sha256=T4pp7Co69pLHKRULnZd-jwri_uAQ2Rji_gKVxTm5oR4,26306
70
+ tinygrad/shape/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
71
+ tinygrad/shape/shapetracker.py,sha256=VFJZghI4c_bZl5ceZBxgf-ztHz0CPsXgov-XenXzWhM,5644
72
+ tinygrad/shape/view.py,sha256=E6AXLEFPnCGP0H6rG9OCJa3Hy9F68Q_xj2bClnVi7qk,19992
73
+ tinygrad-0.10.0.dist-info/LICENSE,sha256=ABRhUPEILzINYIukgazD-_rPipkUNUwslrb0RxnV6Xc,1058
74
+ tinygrad-0.10.0.dist-info/METADATA,sha256=0ytEHMHtcc-w9bbrcRp-YRDR_xQOJadcnzMbJkkkRVs,10933
75
+ tinygrad-0.10.0.dist-info/WHEEL,sha256=R06PA3UVYHThwHvxuRWMqaGcr-PuniXahwjmQRFMEkY,91
76
+ tinygrad-0.10.0.dist-info/top_level.txt,sha256=vDABMCWBFQnx2kn9Azueu88FP-1klQdePoHikQhHymc,9
77
+ tinygrad-0.10.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (70.1.1)
2
+ Generator: setuptools (75.5.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5