mirror of
https://github.com/tinygrad/tinygrad.git
synced 2026-01-08 22:48:25 -05:00
remove pylint from pre-commit and CI (#12658)
* remove pylint from pre-commit and CI * multidevice test is fast * faster pre-commit * 8 is faster than 4 * better name * how did that typecheck?
This commit is contained in:
2
.github/workflows/test.yml
vendored
2
.github/workflows/test.yml
vendored
@@ -238,8 +238,6 @@ jobs:
|
|||||||
pip3 install --upgrade --force-reinstall ruff==0.11.0
|
pip3 install --upgrade --force-reinstall ruff==0.11.0
|
||||||
python3 -m ruff check .
|
python3 -m ruff check .
|
||||||
python3 -m ruff check examples/mlperf/ --ignore E501
|
python3 -m ruff check examples/mlperf/ --ignore E501
|
||||||
- name: Lint tinygrad with pylint
|
|
||||||
run: python -m pylint tinygrad/
|
|
||||||
- name: Run mypy
|
- name: Run mypy
|
||||||
run: |
|
run: |
|
||||||
python -m mypy --strict-equality --lineprecision-report .
|
python -m mypy --strict-equality --lineprecision-report .
|
||||||
|
|||||||
@@ -20,21 +20,15 @@ repos:
|
|||||||
language: system
|
language: system
|
||||||
always_run: true
|
always_run: true
|
||||||
pass_filenames: false
|
pass_filenames: false
|
||||||
- id: tests
|
|
||||||
name: subset of tests
|
|
||||||
entry: env PYTHONPATH="." python3 -m pytest -n=4 test/test_ops.py test/test_dtype.py test/test_schedule.py test/test_assign.py
|
|
||||||
language: system
|
|
||||||
always_run: true
|
|
||||||
pass_filenames: false
|
|
||||||
- id: example
|
- id: example
|
||||||
name: multi device tests
|
name: test all devices
|
||||||
entry: python3 test/external/external_test_example.py
|
entry: python3 test/external/external_test_example.py
|
||||||
language: system
|
language: system
|
||||||
always_run: true
|
always_run: true
|
||||||
pass_filenames: false
|
pass_filenames: false
|
||||||
- id: pylint
|
- id: tests
|
||||||
name: pylint
|
name: subset of tests
|
||||||
entry: python3 -m pylint tinygrad/
|
entry: env PYTHONPATH="." python3 -m pytest -n=8 test/test_ops.py test/test_dtype.py test/test_schedule.py test/test_assign.py
|
||||||
language: system
|
language: system
|
||||||
always_run: true
|
always_run: true
|
||||||
pass_filenames: false
|
pass_filenames: false
|
||||||
4
test/external/external_test_example.py
vendored
4
test/external/external_test_example.py
vendored
@@ -58,8 +58,8 @@ class TestExample(unittest.TestCase):
|
|||||||
print(f"WARNING: {device} test isn't running")
|
print(f"WARNING: {device} test isn't running")
|
||||||
return
|
return
|
||||||
|
|
||||||
x = Tensor.eye(64, device=device, requires_grad=True)
|
x = Tensor.eye(8, device=device, requires_grad=True)
|
||||||
y = Tensor.eye(64, device=device, requires_grad=True)
|
y = Tensor.eye(8, device=device, requires_grad=True)
|
||||||
z = y.matmul(x).sum()
|
z = y.matmul(x).sum()
|
||||||
z.backward()
|
z.backward()
|
||||||
|
|
||||||
|
|||||||
@@ -134,8 +134,8 @@ class TestTiny(unittest.TestCase):
|
|||||||
def test_mnist_backward(self):
|
def test_mnist_backward(self):
|
||||||
# NOTE: we don't have the whole model here for speed
|
# NOTE: we don't have the whole model here for speed
|
||||||
layers = [
|
layers = [
|
||||||
nn.Conv2d(1, 32, 5), Tensor.relu,
|
nn.Conv2d(1, 8, 5), Tensor.relu,
|
||||||
nn.Conv2d(32, 32, 5), Tensor.relu]
|
nn.Conv2d(8, 8, 5), Tensor.relu]
|
||||||
|
|
||||||
# replace random weights with ones
|
# replace random weights with ones
|
||||||
# TODO: there's a bug here where it's tying two of the biases together. we need UNIQUE const
|
# TODO: there's a bug here where it's tying two of the biases together. we need UNIQUE const
|
||||||
@@ -144,7 +144,7 @@ class TestTiny(unittest.TestCase):
|
|||||||
|
|
||||||
# realize gradients
|
# realize gradients
|
||||||
for x in nn.state.get_parameters(layers): x.requires_grad_()
|
for x in nn.state.get_parameters(layers): x.requires_grad_()
|
||||||
Tensor.empty(4, 1, 28, 28).sequential(layers).sum().backward()
|
Tensor.empty(4, 1, 14, 14).sequential(layers).sum().backward()
|
||||||
Tensor.realize(*[x.grad for x in nn.state.get_parameters(layers) if x.grad is not None])
|
Tensor.realize(*[x.grad for x in nn.state.get_parameters(layers) if x.grad is not None])
|
||||||
|
|
||||||
# *** image ***
|
# *** image ***
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ from tinygrad.uop.ops import Ops, UOp, sym_infer, sint, Variable, ssimplify, Gro
|
|||||||
from tinygrad.dtype import AddrSpace, PtrDType
|
from tinygrad.dtype import AddrSpace, PtrDType
|
||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from tinygrad.codegen.opt.tc import TensorCore
|
from tinygrad.codegen.opt.tc import TensorCore
|
||||||
from tinygrad.codegen.opt.kernel import Opt
|
from tinygrad.codegen.opt import Opt
|
||||||
|
|
||||||
@dataclass(frozen=True)
|
@dataclass(frozen=True)
|
||||||
class Estimates:
|
class Estimates:
|
||||||
|
|||||||
Reference in New Issue
Block a user