tinygrad 0.10.0__py3-none-any.whl → 0.10.2__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.
- tinygrad/codegen/devectorizer.py +247 -0
- tinygrad/codegen/expander.py +121 -0
- tinygrad/codegen/kernel.py +141 -201
- tinygrad/codegen/linearize.py +223 -84
- tinygrad/codegen/lowerer.py +60 -42
- tinygrad/codegen/symbolic.py +476 -0
- tinygrad/codegen/transcendental.py +22 -13
- tinygrad/device.py +187 -47
- tinygrad/dtype.py +39 -28
- tinygrad/engine/jit.py +83 -65
- tinygrad/engine/memory.py +4 -5
- tinygrad/engine/multi.py +161 -0
- tinygrad/engine/realize.py +62 -108
- tinygrad/engine/schedule.py +396 -357
- tinygrad/engine/search.py +55 -66
- tinygrad/gradient.py +73 -0
- tinygrad/helpers.py +81 -59
- tinygrad/nn/__init__.py +30 -32
- tinygrad/nn/datasets.py +1 -2
- tinygrad/nn/optim.py +22 -26
- tinygrad/nn/state.py +91 -66
- tinygrad/ops.py +492 -641
- tinygrad/renderer/__init__.py +95 -36
- tinygrad/renderer/cstyle.py +99 -92
- tinygrad/renderer/llvmir.py +83 -34
- tinygrad/renderer/ptx.py +83 -99
- tinygrad/renderer/wgsl.py +95 -0
- tinygrad/runtime/autogen/amd_gpu.py +39507 -12
- tinygrad/runtime/autogen/comgr.py +2 -0
- tinygrad/runtime/autogen/kfd.py +4 -3
- tinygrad/runtime/autogen/kgsl.py +1 -1
- tinygrad/runtime/autogen/libc.py +404 -71
- tinygrad/runtime/autogen/llvm.py +11379 -0
- tinygrad/runtime/autogen/pci.py +1333 -0
- tinygrad/runtime/autogen/vfio.py +891 -0
- tinygrad/runtime/autogen/webgpu.py +6985 -0
- tinygrad/runtime/graph/cuda.py +8 -9
- tinygrad/runtime/graph/hcq.py +84 -79
- tinygrad/runtime/graph/metal.py +40 -43
- tinygrad/runtime/ops_amd.py +498 -334
- tinygrad/runtime/ops_cloud.py +34 -34
- tinygrad/runtime/ops_cpu.py +24 -0
- tinygrad/runtime/ops_cuda.py +30 -27
- tinygrad/runtime/ops_disk.py +62 -63
- tinygrad/runtime/ops_dsp.py +159 -42
- tinygrad/runtime/ops_gpu.py +30 -30
- tinygrad/runtime/ops_hip.py +29 -31
- tinygrad/runtime/ops_llvm.py +48 -41
- tinygrad/runtime/ops_metal.py +149 -113
- tinygrad/runtime/ops_npy.py +2 -2
- tinygrad/runtime/ops_nv.py +238 -273
- tinygrad/runtime/ops_python.py +55 -50
- tinygrad/runtime/ops_qcom.py +129 -157
- tinygrad/runtime/ops_webgpu.py +225 -0
- tinygrad/runtime/support/allocator.py +94 -0
- tinygrad/runtime/support/am/__init__.py +0 -0
- tinygrad/runtime/support/am/amdev.py +396 -0
- tinygrad/runtime/support/am/ip.py +463 -0
- tinygrad/runtime/support/compiler_cuda.py +4 -2
- tinygrad/runtime/support/elf.py +28 -4
- tinygrad/runtime/support/hcq.py +256 -324
- tinygrad/runtime/support/llvm.py +26 -0
- tinygrad/shape/shapetracker.py +85 -53
- tinygrad/shape/view.py +104 -140
- tinygrad/spec.py +155 -0
- tinygrad/tensor.py +835 -527
- tinygrad/viz/assets/cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/highlight.min.js +1232 -0
- tinygrad/viz/assets/cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/languages/cpp.min.js +47 -0
- tinygrad/viz/assets/cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/languages/python.min.js +42 -0
- tinygrad/viz/assets/cdnjs.cloudflare.com/ajax/libs/highlight.js/11.10.0/styles/default.min.css +9 -0
- tinygrad/viz/assets/d3js.org/d3.v5.min.js +2 -0
- tinygrad/viz/assets/dagrejs.github.io/project/dagre-d3/latest/dagre-d3.min.js +4816 -0
- tinygrad/viz/assets/unpkg.com/@highlightjs/cdn-assets@11.10.0/styles/tokyo-night-dark.min.css +8 -0
- tinygrad/viz/index.html +544 -0
- tinygrad/viz/perfetto.html +178 -0
- tinygrad/viz/serve.py +205 -0
- {tinygrad-0.10.0.dist-info → tinygrad-0.10.2.dist-info}/METADATA +48 -25
- tinygrad-0.10.2.dist-info/RECORD +99 -0
- {tinygrad-0.10.0.dist-info → tinygrad-0.10.2.dist-info}/WHEEL +1 -1
- tinygrad/codegen/uopgraph.py +0 -506
- tinygrad/engine/lazy.py +0 -228
- tinygrad/function.py +0 -212
- tinygrad/multi.py +0 -177
- tinygrad/runtime/graph/clang.py +0 -39
- tinygrad/runtime/ops_clang.py +0 -35
- tinygrad-0.10.0.dist-info/RECORD +0 -77
- {tinygrad-0.10.0.dist-info → tinygrad-0.10.2.dist-info}/LICENSE +0 -0
- {tinygrad-0.10.0.dist-info → tinygrad-0.10.2.dist-info}/top_level.txt +0 -0
tinygrad/runtime/ops_clang.py
DELETED
@@ -1,35 +0,0 @@
|
|
1
|
-
from typing import Optional, List
|
2
|
-
import ctypes, subprocess, pathlib, tempfile
|
3
|
-
from tinygrad.device import Compiled, Compiler, MallocAllocator
|
4
|
-
from tinygrad.helpers import cpu_time_execution, cpu_objdump
|
5
|
-
from tinygrad.renderer.cstyle import ClangRenderer
|
6
|
-
|
7
|
-
class ClangCompiler(Compiler):
|
8
|
-
def __init__(self, cachekey="compile_clang", args:Optional[List[str]]=None, objdump_tool='objdump'):
|
9
|
-
self.args = ['-march=native'] if args is None else args
|
10
|
-
self.objdump_tool = objdump_tool
|
11
|
-
super().__init__(cachekey)
|
12
|
-
|
13
|
-
def compile(self, src:str) -> bytes:
|
14
|
-
# TODO: remove file write. sadly clang doesn't like the use of /dev/stdout here
|
15
|
-
with tempfile.NamedTemporaryFile(delete=True) as output_file:
|
16
|
-
subprocess.check_output(['clang', '-shared', *self.args, '-O2', '-Wall', '-Werror', '-x', 'c', '-fPIC', '-ffreestanding', '-nostdlib',
|
17
|
-
'-', '-o', str(output_file.name)], input=src.encode('utf-8'))
|
18
|
-
return pathlib.Path(output_file.name).read_bytes()
|
19
|
-
|
20
|
-
def disassemble(self, lib:bytes): return cpu_objdump(lib, self.objdump_tool)
|
21
|
-
|
22
|
-
class ClangProgram:
|
23
|
-
def __init__(self, name:str, lib:bytes):
|
24
|
-
self.name, self.lib = name, lib
|
25
|
-
# write to disk so we can load it
|
26
|
-
with tempfile.NamedTemporaryFile(delete=True) as cached_file_path:
|
27
|
-
pathlib.Path(cached_file_path.name).write_bytes(lib)
|
28
|
-
self.fxn = ctypes.CDLL(str(cached_file_path.name))[name]
|
29
|
-
|
30
|
-
def __call__(self, *bufs, vals=(), wait=False): return cpu_time_execution(lambda: self.fxn(*bufs, *vals), enable=wait)
|
31
|
-
|
32
|
-
class ClangDevice(Compiled):
|
33
|
-
def __init__(self, device:str):
|
34
|
-
from tinygrad.runtime.graph.clang import ClangGraph
|
35
|
-
super().__init__(device, MallocAllocator, ClangRenderer(), ClangCompiler(), ClangProgram, ClangGraph)
|
tinygrad-0.10.0.dist-info/RECORD
DELETED
@@ -1,77 +0,0 @@
|
|
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,,
|
File without changes
|
File without changes
|