create engine folder and move code (#3948)

* retry

* older tf

* that
This commit is contained in:
George Hotz
2024-03-26 20:38:03 -07:00
committed by GitHub
parent 629cbc5587
commit 150ea2eb76
51 changed files with 54 additions and 54 deletions

View File

@@ -3,8 +3,8 @@ from tinygrad import Tensor, Device
from tinygrad.lazy import LazyBuffer
from tinygrad.ops import ReduceOps, GlobalCounters
from tinygrad.features.multi import MultiLazyBuffer, all_reduce
from tinygrad.features.jit import TinyJit
from tinygrad.realize import create_schedule, run_schedule
from tinygrad.engine.jit import TinyJit
from tinygrad.engine.realize import create_schedule, run_schedule
from tinygrad.helpers import getenv, Context, RING
from typing import List, Union

View File

@@ -66,7 +66,7 @@ def benchmark_model(m, devices, validate_outs=False):
tinygrad_model = get_run_onnx(onnx_model)
benchmark(m, f"tinygrad_{device.lower()}_jitless", lambda: {k:v.numpy() for k,v in tinygrad_model(inputs).items()})
from tinygrad.features.jit import TinyJit
from tinygrad.engine.jit import TinyJit
tinygrad_jitted_model = TinyJit(lambda **kwargs: {k:v.realize() for k,v in tinygrad_model(kwargs).items()})
for _ in range(3): {k:v.numpy() for k,v in tinygrad_jitted_model(**inputs).items()}
benchmark(m, f"tinygrad_{device.lower()}_jit", lambda: {k:v.numpy() for k,v in tinygrad_jitted_model(**inputs).items()}) # noqa: F821

View File

@@ -2,7 +2,7 @@ import time, unittest
from tinygrad.runtime.driver.hip_comgr import compile_hip
from tinygrad import Tensor
from tinygrad.device import Device
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
from tinygrad.codegen.linearizer import Linearizer
class TestHIPCompileSpeed(unittest.TestCase):

View File

@@ -4,7 +4,7 @@ from tinygrad.device import Device, Buffer, BufferXfer
from tinygrad.dtype import dtypes
from tinygrad.runtime.driver.hsa import AQLQueue
from tinygrad.runtime.graph.hsa import VirtAQLQueue, HSAGraph
from tinygrad.features.jit import JitItem
from tinygrad.engine.jit import JitItem
def get_hsa_inc_prog(dev, inc=1):
prg = f"""

View File

@@ -2,7 +2,7 @@
import unittest
import numpy as np
from tinygrad import Tensor, dtypes
from tinygrad.features.jit import TinyJit
from tinygrad.engine.jit import TinyJit
from tinygrad.helpers import CI
from test.helpers import derandomize_model

View File

@@ -17,7 +17,7 @@ from tinygrad.helpers import getenv
from tinygrad.nn import optim
#from tinygrad.lazy import PUSH_PERMUTES
PUSH_PERMUTES = False
from tinygrad.features.jit import CacheCollector
from tinygrad.engine.jit import CacheCollector
class CLCache:
def __init__(self, allowed=None, strict=False, preclear=True, var_vals=None):

View File

@@ -4,7 +4,7 @@ from tinygrad.tensor import Tensor
from tinygrad.codegen.linearizer import Linearizer
from tinygrad.renderer.cstyle import OpenCLRenderer
from tinygrad.features.graph import graph_uops
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
from tinygrad.nn import Conv2d
class TestUopsGraph(unittest.TestCase):

View File

@@ -2,7 +2,7 @@ import unittest, time, gc
import numpy as np
from tinygrad.nn import optim
from tinygrad.nn.state import get_parameters
from tinygrad.features.jit import TinyJit
from tinygrad.engine.jit import TinyJit
from tinygrad import Tensor, Device, GlobalCounters, dtypes
from tinygrad.helpers import CI, getenv
from tinygrad.shape.symbolic import Variable

View File

@@ -3,7 +3,7 @@ import unittest
from tinygrad.tensor import Tensor
from tinygrad.ops import LoadOps
from tinygrad.nn import Conv2d
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
class TestConvShapetracker(unittest.TestCase):
def test_conv_3x3_one_view(self):

View File

@@ -87,7 +87,7 @@ class TestCustomFunction(unittest.TestCase):
@unittest.skipIf(Device.DEFAULT in ["CPU"], "atan2_cpu not jittable")
def test_atan2_jit(self):
# custom ops even work in the JIT!
from tinygrad.features.jit import TinyJit
from tinygrad.engine.jit import TinyJit
@TinyJit
def jitted_atan2(a:Tensor, b:Tensor) -> Tensor:

View File

@@ -6,7 +6,7 @@ import numpy as np
from hypothesis import given, strategies as strat, settings
from tinygrad.dtype import DType
from tinygrad.helpers import CI, getenv
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
from tinygrad.ops import UnaryOps, get_lazyop_info
from test.helpers import is_dtype_supported

View File

@@ -2,7 +2,7 @@ import unittest
import time
import numpy as np
from tinygrad import Tensor, dtypes
from tinygrad.realize import run_schedule, create_schedule, lower_schedule_item
from tinygrad.engine.realize import run_schedule, create_schedule, lower_schedule_item
class TestFusionOp(unittest.TestCase):
def test_contiguous_add(self):

View File

@@ -4,7 +4,7 @@ import numpy as np
from test.helpers import assert_jit_cache_len
from tinygrad.tensor import Tensor
from tinygrad.features.jit import TinyJit
from tinygrad.engine.jit import TinyJit
from tinygrad.device import Device
from tinygrad.helpers import CI

View File

@@ -3,7 +3,7 @@ import numpy as np
import unittest
from tinygrad import Tensor, Device, dtypes
from tinygrad.lazy import LazyBuffer, ReduceOps
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
class TestLazyBuffer(unittest.TestCase):
def test_fromcpu_shape_tracker(self):

View File

@@ -1,6 +1,6 @@
import unittest
from tinygrad.tensor import Tensor
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
# stuff needed to unpack a kernel
# ruff: noqa: F401

View File

@@ -9,8 +9,8 @@ from tinygrad.shape.shapetracker import ShapeTracker
from tinygrad.shape.view import View
from tinygrad.shape.symbolic import MulNode, Variable, NumNode, Node
from tinygrad.tensor import Tensor
from tinygrad.features.jit import CacheCollector
from tinygrad.realize import create_schedule, run_schedule
from tinygrad.engine.jit import CacheCollector
from tinygrad.engine.realize import create_schedule, run_schedule
from tinygrad.helpers import prod, Context
from tinygrad.dtype import DType, dtypes
from tinygrad.codegen.uops import UOpGraph

View File

@@ -5,7 +5,7 @@ from tinygrad.device import BufferCopy
from tinygrad.ops import LoadOps, ReduceOps
from tinygrad.helpers import CI, prod, Context
from tinygrad.nn.state import get_parameters, get_state_dict
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
from tinygrad.features.multi import all_reduce, MultiLazyBuffer
from random import randint
import numpy as np

View File

@@ -9,7 +9,7 @@ from tinygrad.ops import LoadOps
from tinygrad.helpers import DEBUG, GRAPH
from tinygrad.codegen.linearizer import Linearizer
from tinygrad.features.graph import print_tree, realized_lazybuffer
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
from tinygrad import nn, dtypes
def check_schedule(t:Tensor, allowed:int, to_prerealize:Optional[List[Tensor]]=None, filter_loadops=True):

View File

@@ -1,7 +1,7 @@
import unittest
from tinygrad.codegen.linearizer import Linearizer
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
from tinygrad.features.search import time_linearizer, bufs_from_lin
from tinygrad.device import Device, Buffer
from tinygrad.ops import LoadOps

View File

@@ -13,7 +13,7 @@ from tinygrad import Device, GlobalCounters
from tinygrad.tensor import Tensor
from tinygrad.nn import Conv2d
from tinygrad.helpers import colored, getenv, CI
from tinygrad.features.jit import TinyJit
from tinygrad.engine.jit import TinyJit
IN_CHANS = [int(x) for x in getenv("IN_CHANS", "4,16,64").split(",")]

View File

@@ -1,7 +1,7 @@
import unittest
from test.helpers import assert_jit_cache_len
from tinygrad.features.jit import TinyJit
from tinygrad.engine.jit import TinyJit
from tinygrad.shape.symbolic import Variable
from tinygrad.tensor import Tensor
import numpy as np

View File

@@ -5,7 +5,7 @@ from tinygrad.tensor import Tensor
from tinygrad.dtype import dtypes, DType, PtrDType
from tinygrad.device import Buffer, Device, CompiledASTRunner
from tinygrad.ops import UnaryOps, BinaryOps, TernaryOps
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
from tinygrad.codegen.linearizer import UOps, UOp
from tinygrad.codegen.uops import exec_alu, UOpGraph
from test.helpers import is_dtype_supported

View File

@@ -1,6 +1,6 @@
import unittest
from tinygrad import Tensor
from tinygrad.realize import create_schedule, lower_schedule_item
from tinygrad.engine.realize import create_schedule, lower_schedule_item
# TODO: can copy this in here when we remove it
#from tinygrad.ops import get_lazyop_info

View File

@@ -3,7 +3,7 @@ from tinygrad import Tensor, GlobalCounters
from tinygrad.helpers import Timing, CI, Profiling, WINO, DEBUG
from tinygrad.ops import LoadOps
from tinygrad.codegen.linearizer import Linearizer
from tinygrad.realize import create_schedule
from tinygrad.engine.realize import create_schedule
class TestWinograd(unittest.TestCase):
def setUp(self):