100 Commits
Author SHA1 Message Date
George HotzandGitHub 0252cb8fa7 remove anchors from CI flow (#17521)
Autogen / In-tree Autogen (macos) (push) Waiting to run
Benchmarks / Mac pytest (push) Waiting to run
Benchmarks / LLM (DEV=AMD) (push) Waiting to run
Benchmarks / LLM (DEV=METAL) (push) Waiting to run
Benchmarks / LLM (DEV=NV) (push) Waiting to run
Benchmarks / HLB-CIFAR10 (DEV=AMD) (push) Waiting to run
Benchmarks / HLB-CIFAR10 (DEV=METAL) (push) Waiting to run
Benchmarks / HLB-CIFAR10 (DEV=NV) (push) Waiting to run
Benchmarks / MLPerf (AMD) (push) Waiting to run
Benchmarks / MLPerf (NV) (push) Waiting to run
Benchmarks / Stable Diffusion (DEV=AMD) (push) Waiting to run
Benchmarks / Stable Diffusion (DEV=METAL) (push) Waiting to run
Benchmarks / Stable Diffusion (DEV=NV) (push) Waiting to run
Benchmarks / Tests (DEV=AMD) (push) Waiting to run
Benchmarks / Tests (DEV=METAL) (push) Waiting to run
Benchmarks / Tests (DEV=NV) (push) Waiting to run
Benchmarks / UsbGPU Benchmark (push) Waiting to run
Benchmarks / comma Benchmark (0.11.2) (push) Waiting to run
Benchmarks / comma Benchmark (0.11.0) (push) Waiting to run
Benchmarks / DSP Benchmark (push) Waiting to run
Benchmarks / UsbGPU Benchmark (comma) (push) Waiting to run
Benchmarks / PCI Driver Benchmark (DEV=AMD) (push) Waiting to run
Benchmarks / PCI Driver Benchmark (DEV=NV) (push) Waiting to run
Benchmarks / LLVM Speed (push) Waiting to run
Platform Tests / MacOS (unit) (push) Waiting to run
Platform Tests / MacOS (unit, mock) (push) Waiting to run
Platform Tests / MacOS (DEV=METAL) (1) (push) Waiting to run
Platform Tests / MacOS (DEV=METAL) (2) (push) Waiting to run
Platform Tests / MacOS (DEV=CPU:CLANG) (push) Waiting to run
Platform Tests / MacOS (DEV=CPU:LLVM) (push) Waiting to run
Platform Tests / MacOS (DEV=CPU:LVP) (push) Waiting to run
Platform Tests / MacOS (DEV=WEBGPU) (push) Waiting to run
Platform Tests / Windows (DEV=CPU:CLANG) (push) Waiting to run
Platform Tests / Windows (DEV=CPU:LLVM) (push) Waiting to run
Platform Tests / Windows (DEV=CPU:X86) (push) Waiting to run
Platform Tests / Windows (DEV=WEBGPU) (push) Waiting to run
Autogen / In-tree Autogen (comgr 2) (push) Successful in 41s
Deploy Docs / deploy (push) Successful in 46s
Autogen / In-tree Autogen (push) Successful in 47s
Unit Tests / Linters (push) Successful in 2m23s
Unit Tests / Docs (push) Successful in 3m32s
Unit Tests / Python Backend (push) Successful in 3m50s
Unit Tests / Unit Tests (push) Successful in 3m55s
Unit Tests / SPEC=2 (2) (push) Successful in 4m10s
Unit Tests / Null Tests (push) Successful in 4m25s
Unit Tests / SPEC=2 (1) (push) Successful in 4m28s
Unit Tests / Torch Backend Tests (push) Successful in 4m47s
Unit Tests / Fuzzing (push) Successful in 2m32s
Unit Tests / Linux (DSP) (push) Successful in 2m1s
Unit Tests / Models (push) Successful in 2m30s
Unit Tests / CL IMAGE Tests (push) Successful in 3m29s
Unit Tests / Test LLM (push) Successful in 2m40s
Unit Tests / openpilot Compile Tests (push) Successful in 4m25s
Unit Tests / Linux (DEV=CL) (push) Successful in 4m41s
Unit Tests / Linux (DEV=CPU:LVP) (push) Successful in 3m14s
Unit Tests / ONNX (CPU) Tests (push) Successful in 6m24s
Unit Tests / Optimization Tests (push) Successful in 6m13s
Unit Tests / Linux (DEV=CPU:LLVM) (push) Successful in 3m32s
Unit Tests / Linux (DEV=CPU:X86) (push) Successful in 3m33s
Unit Tests / Linux (DEV=CPU:CLANG) (push) Successful in 4m30s
Unit Tests / AMD ASM IDE (push) Successful in 2m44s
Unit Tests / Linux (DEV=WEBGPU) (push) Successful in 4m16s
Unit Tests / hcq2 (push) Successful in 3m13s
Unit Tests / Linux (amdllvm gfx1100) (push) Successful in 3m55s
Unit Tests / Linux (amd gfx1100) (push) Successful in 4m24s
Unit Tests / Linux (amd gfx1201) (push) Successful in 4m23s
Unit Tests / Linux (am) (push) Successful in 4m45s
Unit Tests / Linux (amdllvm gfx1201) (push) Successful in 4m6s
Unit Tests / Compile-only (DEV=NULL:QCOMCL:a630) (push) Failing after 24s
Unit Tests / Linux (amdllvm gfx950) (push) Successful in 3m51s
Unit Tests / Compile-only (DEV=NULL:NAK:sm_120) (push) Successful in 1m39s
Unit Tests / Compile-only (DEV=NULL:IR3:a630) (push) Successful in 2m20s
Unit Tests / Linux (amd gfx950) (push) Successful in 5m42s
Unit Tests / Linux (ptx) (push) Successful in 4m1s
Unit Tests / Linux (nv) (push) Successful in 5m13s
* ci: remove yaml anchors from test.yml for gitea actions compatibility

Gitea Actions does not support YAML anchors/aliases, which causes the
workflow to fail parsing. Replace the &linux/*linux anchor with a plain
runs-on: ubuntu-24.04.

* ci: keep runner selection, inline expression instead of anchors

Instead of replacing the anchored runs-on with a plain ubuntu-24.04
(which drops the namespace-profile-tinygrad routing for collaborator
PRs), inline the full ${{ }} expression at every job. No YAML anchors,
works with runners that can't parse them (gitea runner), and identical
behavior on GitHub Actions.
2026-08-13 10:17:22 -07:00
George HotzandGitHub e103fb2a10 more lil llm improvements (#17514)
Autogen / In-tree Autogen (macos) (push) Waiting to run
Benchmarks / Mac pytest (push) Waiting to run
Benchmarks / LLM (DEV=AMD) (push) Waiting to run
Benchmarks / LLM (DEV=METAL) (push) Waiting to run
Benchmarks / LLM (DEV=NV) (push) Waiting to run
Benchmarks / HLB-CIFAR10 (DEV=AMD) (push) Waiting to run
Benchmarks / HLB-CIFAR10 (DEV=METAL) (push) Waiting to run
Benchmarks / HLB-CIFAR10 (DEV=NV) (push) Waiting to run
Benchmarks / MLPerf (AMD) (push) Waiting to run
Benchmarks / MLPerf (NV) (push) Waiting to run
Benchmarks / Stable Diffusion (DEV=AMD) (push) Waiting to run
Benchmarks / Stable Diffusion (DEV=METAL) (push) Waiting to run
Benchmarks / Stable Diffusion (DEV=NV) (push) Waiting to run
Benchmarks / Tests (DEV=AMD) (push) Waiting to run
Benchmarks / Tests (DEV=METAL) (push) Waiting to run
Benchmarks / Tests (DEV=NV) (push) Waiting to run
Benchmarks / UsbGPU Benchmark (push) Waiting to run
Benchmarks / comma Benchmark (0.11.2) (push) Waiting to run
Benchmarks / comma Benchmark (0.11.0) (push) Waiting to run
Benchmarks / DSP Benchmark (push) Waiting to run
Benchmarks / UsbGPU Benchmark (comma) (push) Waiting to run
Benchmarks / PCI Driver Benchmark (DEV=AMD) (push) Waiting to run
Benchmarks / PCI Driver Benchmark (DEV=NV) (push) Waiting to run
Benchmarks / LLVM Speed (push) Waiting to run
Platform Tests / MacOS (unit) (push) Waiting to run
Platform Tests / MacOS (unit, mock) (push) Waiting to run
Platform Tests / MacOS (DEV=METAL) (1) (push) Waiting to run
Platform Tests / MacOS (DEV=METAL) (2) (push) Waiting to run
Platform Tests / MacOS (DEV=CPU:CLANG) (push) Waiting to run
Platform Tests / MacOS (DEV=CPU:LLVM) (push) Waiting to run
Platform Tests / MacOS (DEV=CPU:LVP) (push) Waiting to run
Platform Tests / MacOS (DEV=WEBGPU) (push) Waiting to run
Platform Tests / Windows (DEV=CPU:CLANG) (push) Waiting to run
Platform Tests / Windows (DEV=CPU:LLVM) (push) Waiting to run
Platform Tests / Windows (DEV=CPU:X86) (push) Waiting to run
Platform Tests / Windows (DEV=WEBGPU) (push) Waiting to run
Autogen / In-tree Autogen (comgr 2) (push) Successful in 47s
Unit Tests / Torch Backend Tests (push) Failing after 1m3s
Unit Tests / Linters (push) Failing after 1m27s
Unit Tests / Python Backend (push) Failing after 3m8s
Unit Tests / Fuzzing (push) Failing after 21s
Unit Tests / Docs (push) Successful in 3m32s
Unit Tests / Null Tests (push) Successful in 4m8s
Unit Tests / Unit Tests (push) Successful in 3m30s
Unit Tests / CL IMAGE Tests (push) Failing after 44s
Unit Tests / openpilot Compile Tests (push) Failing after 47s
Unit Tests / Test LLM (push) Failing after 13s
Unit Tests / SPEC=2 (1) (push) Successful in 3m53s
Deploy Docs / deploy (push) Successful in 5m1s
Unit Tests / Optimization Tests (push) Failing after 49s
Unit Tests / SPEC=2 (2) (push) Successful in 3m42s
Unit Tests / Linux (DEV=CL) (push) Failing after 38s
Unit Tests / Models (push) Successful in 1m39s
Unit Tests / Linux (DEV=CPU:X86) (push) Failing after 23s
Unit Tests / Linux (DSP) (push) Successful in 1m47s
Unit Tests / hcq2 (push) Failing after 48s
Unit Tests / Linux (am) (push) Failing after 52s
Unit Tests / Linux (DEV=CPU:LLVM) (push) Successful in 3m13s
Unit Tests / Linux (DEV=CPU:LVP) (push) Successful in 3m6s
Unit Tests / AMD ASM IDE (push) Failing after 2m46s
Unit Tests / Linux (DEV=CPU:CLANG) (push) Successful in 4m19s
Unit Tests / ONNX (CPU) Tests (push) Successful in 5m24s
Autogen / In-tree Autogen (push) Successful in 10m40s
Unit Tests / Linux (DEV=WEBGPU) (push) Failing after 5m0s
Unit Tests / Linux (amdllvm gfx1100) (push) Successful in 3m40s
Unit Tests / Linux (amd gfx1100) (push) Successful in 4m13s
Unit Tests / Linux (amdllvm gfx1201) (push) Successful in 3m35s
Unit Tests / Compile-only (DEV=NULL:IR3:a630) (push) Failing after 30s
Unit Tests / Linux (amd gfx1201) (push) Successful in 4m10s
Unit Tests / Compile-only (DEV=NULL:NAK:sm_120) (push) Failing after 28s
Unit Tests / Compile-only (DEV=NULL:QCOMCL:a630) (push) Failing after 40s
Unit Tests / Linux (amdllvm gfx950) (push) Successful in 3m36s
Unit Tests / Linux (ptx) (push) Failing after 3m17s
Unit Tests / Linux (amd gfx950) (push) Successful in 5m25s
Unit Tests / Linux (nv) (push) Failing after 5m17s
* more lil llm improvements

* default float
2026-08-12 20:13:20 -07:00
George HotzandGitHub 2297118541 lil llm improvements (#17513) 2026-08-12 19:29:32 -07:00
George HotzandGitHub 3686a1758f mac/rdma imports lazy (#17496)
* mac/rdma imports lazy

* ish

* fixes
2026-08-11 17:23:11 -07:00
George HotzandGitHub 4a253db9b4 minor cleanups to improve import speed (#17495)
* minor cleanups to improve import speed

* dumb
2026-08-11 16:06:25 -07:00
George HotzandGitHub e11df72e0f notes from digitalocean_mi350x (#17494)
* notes from digitalocean_mi350x

* cleanup

* revert non-doc changes on digitalocean_mi350x branch
2026-08-11 13:22:11 -07:00
George HotzandGitHub 7edf80a48a small changes from new rangeify + remove flaky tc tests (#17486)
* small changes from new rangeify

* remove test/opt/test_tensor_cores.py
2026-08-10 15:58:49 -07:00
George HotzandGitHub 566f32fe9f move platform tests to platform.yml (#17475)
Autogen / In-tree Autogen (comgr 2) (push) Successful in 41s
Unit Tests / Torch Backend Tests (push) Failing after 53s
Unit Tests / Linters (push) Failing after 1m29s
Unit Tests / Python Backend (push) Failing after 3m5s
Unit Tests / Fuzzing (push) Failing after 22s
Unit Tests / Docs (push) Successful in 3m29s
Unit Tests / Null Tests (push) Successful in 4m5s
Unit Tests / openpilot Compile Tests (push) Failing after 47s
Unit Tests / SPEC=2 (1) (push) Successful in 3m55s
Unit Tests / Optimization Tests (push) Failing after 44s
Unit Tests / Test LLM (push) Failing after 12s
Unit Tests / SPEC=2 (2) (push) Successful in 3m40s
Deploy Docs / deploy (push) Successful in 5m10s
Unit Tests / Linux (DEV=CL) (push) Failing after 36s
Unit Tests / Linux (DSP) (push) Successful in 1m48s
Unit Tests / Models (push) Successful in 3m30s
Unit Tests / CL IMAGE Tests (push) Failing after 5m13s
Unit Tests / Unit Tests (push) Successful in 8m1s
Unit Tests / Linux (DEV=CPU:X86) (push) Failing after 24s
Unit Tests / Linux (DEV=CPU:LLVM) (push) Successful in 3m17s
Unit Tests / Linux (DEV=CPU:CLANG) (push) Successful in 4m13s
Unit Tests / ONNX (CPU) Tests (push) Successful in 5m34s
Unit Tests / hcq2 (push) Failing after 49s
Unit Tests / Linux (DEV=CPU:LVP) (push) Successful in 3m7s
Unit Tests / Linux (am) (push) Failing after 53s
Unit Tests / AMD ASM IDE (push) Failing after 2m53s
Autogen / In-tree Autogen (push) Successful in 12m44s
Unit Tests / Linux (amdllvm gfx1100) (push) Successful in 3m57s
Unit Tests / Linux (amdllvm gfx1201) (push) Successful in 3m45s
Unit Tests / Linux (amd gfx1100) (push) Successful in 4m30s
Unit Tests / Linux (DEV=WEBGPU) (push) Failing after 5m17s
Unit Tests / Linux (amd gfx1201) (push) Successful in 4m26s
Unit Tests / Compile-only (ir3) (push) Failing after 31s
Unit Tests / Compile-only (nak) (push) Failing after 38s
Unit Tests / Linux (amdllvm gfx950) (push) Successful in 4m6s
Unit Tests / Linux (amd gfx950) (push) Successful in 5m55s
Unit Tests / Linux (ptx) (push) Failing after 3m18s
Unit Tests / Linux (nv) (push) Failing after 5m18s
Autogen / In-tree Autogen (macos) (push) Canceled after 0s
Benchmarks / Mac pytest (push) Canceled after 0s
Benchmarks / LLM (DEV=AMD) (push) Canceled after 0s
Benchmarks / LLM (DEV=METAL) (push) Canceled after 0s
Benchmarks / LLM (DEV=NV) (push) Canceled after 0s
Benchmarks / HLB-CIFAR10 (DEV=AMD) (push) Canceled after 0s
Benchmarks / HLB-CIFAR10 (DEV=METAL) (push) Canceled after 0s
Benchmarks / HLB-CIFAR10 (DEV=NV) (push) Canceled after 0s
Benchmarks / MLPerf (AMD) (push) Canceled after 0s
Benchmarks / MLPerf (NV) (push) Canceled after 0s
Benchmarks / Stable Diffusion (DEV=AMD) (push) Canceled after 0s
Benchmarks / Stable Diffusion (DEV=METAL) (push) Canceled after 0s
Benchmarks / Stable Diffusion (DEV=NV) (push) Canceled after 0s
Benchmarks / Tests (DEV=AMD) (push) Canceled after 0s
Benchmarks / Tests (DEV=METAL) (push) Canceled after 0s
Benchmarks / Tests (DEV=NV) (push) Canceled after 0s
Benchmarks / UsbGPU Benchmark (push) Canceled after 0s
Benchmarks / comma Benchmark (0.11.2) (push) Canceled after 0s
Benchmarks / comma Benchmark (0.11.0) (push) Canceled after 0s
Benchmarks / DSP Benchmark (push) Canceled after 0s
Benchmarks / UsbGPU Benchmark (comma) (push) Canceled after 0s
Benchmarks / PCI Driver Benchmark (DEV=AMD) (push) Canceled after 0s
Benchmarks / PCI Driver Benchmark (DEV=NV) (push) Canceled after 0s
Benchmarks / LLVM Speed (push) Canceled after 0s
Platform Tests / MacOS (unit) (push) Canceled after 0s
Platform Tests / MacOS (unit, mock) (push) Canceled after 0s
Platform Tests / MacOS (DEV=METAL) (1) (push) Canceled after 0s
Platform Tests / MacOS (DEV=METAL) (2) (push) Canceled after 0s
Platform Tests / MacOS (DEV=CPU:CLANG) (push) Canceled after 0s
Platform Tests / MacOS (DEV=CPU:LLVM) (push) Canceled after 0s
Platform Tests / MacOS (DEV=CPU:LVP) (push) Canceled after 0s
Platform Tests / MacOS (DEV=WEBGPU) (push) Canceled after 0s
Platform Tests / Windows (DEV=CPU:CLANG) (push) Canceled after 0s
Platform Tests / Windows (DEV=CPU:LLVM) (push) Canceled after 0s
Platform Tests / Windows (DEV=CPU:X86) (push) Canceled after 0s
Platform Tests / Windows (DEV=WEBGPU) (push) Canceled after 0s
Platform Tests / Compile-only (QCOM CL) (push) Canceled after 0s
* ci: split mac/windows/qcom-cl tests into platform.yml

Move the 6 jobs that don't run on Linux (4 macos, 1 windows, 1 QCOM CL
compile test on arm) out of test.yml into a separate Platform Tests
workflow so they run (and can be gated/runners-matched) independently.

* ci: gate platform tests to the upstream repo

Skip mac/windows/qcom-cl jobs anywhere but tinygrad/tinygrad, so the
Platform Tests workflow is disabled on the gitea fork (and any fork).

* ci: revert repo gate on platform tests

Job-level if is only evaluated by gitea when a runner with matching
labels fetches the task; with no mac/windows/arm runners the jobs queue
forever. Disable the workflow on the instance instead.
2026-08-09 23:25:18 -07:00
George HotzandGitHub d4d537c8ae add SPEC checking for the kernel graph (#17432)
Unit Tests / Null Tests (pull_request) Failing after 22s
Unit Tests / Unit Tests (pull_request) Failing after 22s
Unit Tests / Docs (pull_request) Failing after 34s
Unit Tests / Fuzzing (pull_request) Failing after 26s
Unit Tests / Torch Backend Tests (pull_request) Failing after 57s
Unit Tests / CL IMAGE Tests (pull_request) Failing after 42s
Unit Tests / Test LLM (pull_request) Failing after 12s
Unit Tests / openpilot Compile Tests (pull_request) Failing after 48s
Unit Tests / Linters (pull_request) Failing after 1m29s
Unit Tests / Optimization Tests (pull_request) Failing after 52s
Unit Tests / Linux (DEV=CL) (pull_request) Failing after 42s
Unit Tests / Linux (DSP) (pull_request) Successful in 1m46s
Unit Tests / Python Backend (pull_request) Failing after 3m11s
Unit Tests / Linux (DEV=CPU:X86) (pull_request) Failing after 24s
Unit Tests / SPEC=2 (2) (pull_request) Successful in 3m53s
Unit Tests / SPEC=2 (1) (pull_request) Successful in 4m4s
Unit Tests / Linux (am) (pull_request) Canceled after 0s
Unit Tests / Linux (amd gfx1100) (pull_request) Canceled after 0s
Unit Tests / Linux (amdllvm gfx1100) (pull_request) Canceled after 0s
Unit Tests / Linux (amd gfx1201) (pull_request) Canceled after 0s
Unit Tests / Linux (amdllvm gfx1201) (pull_request) Canceled after 0s
Unit Tests / Linux (amd gfx950) (pull_request) Canceled after 0s
Unit Tests / Linux (amdllvm gfx950) (pull_request) Canceled after 0s
Unit Tests / Linux (nv) (pull_request) Canceled after 0s
Unit Tests / Linux (ptx) (pull_request) Canceled after 0s
Unit Tests / MacOS (unit) (pull_request) Canceled after 0s
Unit Tests / MacOS (unit, mock) (pull_request) Canceled after 0s
Unit Tests / MacOS (DEV=METAL) (1) (pull_request) Canceled after 0s
Unit Tests / MacOS (DEV=METAL) (2) (pull_request) Canceled after 0s
Unit Tests / MacOS (DEV=CPU:CLANG) (pull_request) Canceled after 0s
Unit Tests / MacOS (DEV=CPU:LLVM) (pull_request) Canceled after 0s
Unit Tests / MacOS (DEV=CPU:LVP) (pull_request) Canceled after 0s
Unit Tests / MacOS (DEV=WEBGPU) (pull_request) Canceled after 0s
Unit Tests / Windows (DEV=CPU:CLANG) (pull_request) Canceled after 0s
Unit Tests / Windows (DEV=CPU:LLVM) (pull_request) Canceled after 0s
Unit Tests / Windows (DEV=CPU:X86) (pull_request) Canceled after 0s
Unit Tests / Windows (DEV=WEBGPU) (pull_request) Canceled after 0s
Unit Tests / Compile-only (ir3) (pull_request) Canceled after 0s
Unit Tests / Compile-only (nak) (pull_request) Canceled after 0s
Unit Tests / Compile-only (QCOM CL) (pull_request) Canceled after 0s
Check Line Counts / Check PR Branch status (pull_request_target) Canceled after 0s
Check Line Counts / Core Library Line Difference (pull_request_target) Canceled after 0s
Unit Tests / Linux (DEV=CPU:LVP) (pull_request) Canceled after 1m10s
Unit Tests / Models (pull_request) Canceled after 3m4s
Unit Tests / hcq2 (pull_request) Canceled after 17s
Unit Tests / AMD ASM IDE (pull_request) Canceled after 28s
Unit Tests / Linux (DEV=CPU:CLANG) (pull_request) Canceled after 2m35s
Unit Tests / Linux (DEV=WEBGPU) (pull_request) Canceled after 51s
Unit Tests / Linux (DEV=CPU:LLVM) (pull_request) Canceled after 2m17s
Unit Tests / ONNX (CPU) Tests (pull_request) Canceled after 3m46s
* add SPEC checking for the kernel graph

* skip test

* raise there, not None

* handwritten

* issue with unshard

* multi works

* and bitcast

* fix new tests

* fix linear

* remove call index

* fix shrink

* fixes
2026-08-08 10:00:06 -07:00
1858f1fd9a viz: collapse PROGRAM nodes like CALL (codex) (#17438)
Co-authored-by: qazal <[email protected]>
2026-08-07 11:44:34 +09:00
George HotzandGitHub b4372df9c6 revert wrong custom kernel fix (#17427) 2026-08-05 18:31:35 -07:00
George HotzandGitHub 470c032a5e fix slice + non contig kernels (#17423)
* movement: resolve negative int slice bounds against symbolic sizes

negative int bounds in a slice against a symbolic dim were passed through
unresolved, giving wrong views. resolve them against the (possibly
symbolic) size, like slice.indices does for int dims

* schedule: realize custom kernel inputs that don't resolve to a buffer state

rangeify assigns ranges backward from consumers and CALL contributes none,
so the subgraph above a custom kernel input gets no ranges unless something
in it is realized, and reduce conversion crashes with a KeyError. realize
call inputs that don't resolve to a buffer state.

only view-only movement ops preserve the underlying buffer: anything
computed (ALU, REDUCE, ...) must be realized even if one of its sources
resolves to a buffer, since the whole subgraph above the call has no
ranges. unwrapping src[0] unconditionally missed const branches hanging
off non-src[0] children and silently resolved REDUCEs to their source
buffer. includes regression tests for pure const, mixed buffer+const, and
view-over-buffer inputs
2026-08-05 16:18:17 -07:00
George HotzandGitHub 581bfdd94f merge track_rewrites and profile_matches into rewrite_group [PR] (#17420)
* merge track_rewrites and profile_matches into rewrite_group

* bug

* flip ctx polarity
2026-08-05 14:41:38 -07:00
George HotzandGitHub 757a727808 move callify into tensor (#17416) 2026-08-05 11:48:56 -07:00
George HotzandGitHub 2cce85a606 chat: display reasoning_content from streamed responses (#17414)
* chat: display reasoning_content from streamed responses

The server's StreamRouter emits reasoning_content deltas for think blocks,
but the chat UI was only reading delta.content, silently dropping all
reasoning. Now reasoning is shown in gray (#888) and included in the
message history sent back to the server.

* fix
2026-08-05 10:49:24 -07:00
George HotzandGitHub 46f0003776 more KernelCountException (#17407) 2026-08-04 22:55:38 -07:00
George HotzandGitHub e1f42681fa add new schedule tests + format better (#17402)
* add new schedule tests + format better

* assert_kernel_count
2026-08-04 18:46:38 -07:00
George HotzandGitHub 6122b3c98f use check_schedule in tests where possible (#17400) 2026-08-04 18:17:29 -07:00
George HotzandGitHub f489f4bc36 add test_eye + color INDEX (#17394) 2026-08-04 11:08:08 -07:00
George HotzandGitHub c21a552f3d llm: bugfixes + warmup (#17384) 2026-08-03 18:23:14 -07:00
George HotzandGitHub 3cb786f447 llm: update test_llm_server tests (#17382) 2026-08-03 16:06:17 -07:00
George HotzandGitHub c2625c78cb scalar ALU index fix + llm: preserve_thinking (#17381)
* cstyle: scalar ALU index fix, serve: preserve_thinking, test: fix Handler import

- cstyle.py: return scalar directly when ALU buffer has 1 element
- cli.py: add preserve_thinking param to FallbackTemplate.render
- serve.py: pass preserve_thinking=True when rendering chat completions
- test_llm_server.py: fix import to use Handler from llm.serve

* real fix
2026-08-03 15:10:21 -07:00
George HotzandGitHub 05bc7c6994 fix llm reasoning and Linear import (#17372) 2026-08-02 12:31:52 -07:00
George HotzandGitHub fb607fb990 faster devectorizer with one line (#17360) 2026-08-01 13:06:35 -07:00
George HotzandGitHub 15c936db01 merge devectorize + indexing (#17354)
* external benchmark schedule in 5 sec (codex slop)

* prune

* real?

* delete
2026-08-01 11:40:15 -07:00
George HotzandGitHub 5a1c641f79 more arg -> val (#17349)
* more arg -> val

* kimi

* more
2026-07-31 22:44:24 -07:00
George HotzandGitHub 9082ecef5d use .val to access the value of Ops.CONST (#17347) 2026-07-31 19:51:42 -07:00
George HotzandGitHub 099d69ff7d ci: split macos unit test into metal and mock runners (#17346) 2026-07-31 19:41:18 -07:00
George HotzandGitHub a88f832f0c remove UOp.val (#17345) 2026-07-31 18:58:38 -07:00
George HotzandGitHub d65ea465ed cleanup gemm fragment + add store unshard (#17313)
* cleanup gemm fragment + add store unshard

* multi

* fix
2026-07-30 20:53:28 -07:00
George HotzandGitHub 138676ab81 improve fragment example + index unshard (kimi) (#17288)
* fix dtypes in fragment example

* match tilelang

* flip locals

* fix index on unshard

* test fixes

* kimi needs more taste
2026-07-29 15:38:38 -07:00
George HotzandGitHub b30c7e00d4 support 2d on UNSHARD (kimi) (#17285)
* support 2d on UNSHARD

* fixes

* Fix test and spec

* single barrier

* 2d sharding works for devices too

* cleanups

* no _rewrap
2026-07-29 12:01:59 -07:00
George HotzandGitHub 52c9e5a99e rename LOOP -> WEAK and STRONGLOOP -> LOOP (#17283) 2026-07-29 10:38:36 -07:00
George HotzandGitHub bd296a7359 enable alloc_fragment support with UNSHARD (kimi) (#17272)
* enable alloc_fragment support with UNSHARD (kimi)

* cleaner with implicit barrier

* cleanups

* cleaner

* strongloop

* dcount cleanups
2026-07-29 09:46:45 -07:00
George HotzandGitHub 527e57300c fix smu reset for kernel >= 7 (#17277)
* fix smu reset for kernel >7

* match kernel
2026-07-28 23:11:21 -07:00
George HotzandGitHub 451120c6e1 make .barrier implicit (kimi) (#17275)
* make .barrier implicit (kimi)

* simplier

* lil

* remove tinygrad stock barriers

* readable

* lil
2026-07-28 22:34:57 -07:00
George HotzandGitHub dd16d5aead apply shrink bugfix for 3.11 (#17271) 2026-07-28 19:03:06 -07:00
George HotzandGitHub a17387d6a0 add UNSHARD to spec (#17269) 2026-07-28 17:00:21 -07:00
George HotzandGitHub 57ae1bc7a7 rename MULTI to UNSHARD (#17267)
* rename MULTI to UNSHARD

* comment updates (glm)

* rename method to unshard
2026-07-28 16:51:41 -07:00
George HotzandGitHub 1757067fa6 add device range as src[1] to multi (kimi) (#17264)
* add device range as src[1] to multi (kimi)

* cleanup

* fix tests
2026-07-28 16:39:34 -07:00
755dfb243b rename CPU_COUNT to NUM_CPU_THREADS with cgroup awareness (#17263)
Rename CPU_COUNT to NUM_CPU_THREADS so it can be overridden via env var.
Default uses _get_cpu_count() which respects cgroup limits:
  - os.process_cpu_count() on Python 3.13+
  - /sys/fs/cgroup/cpu.max on cgroup v2
  - /sys/fs/cgroup/cpu/cpu.cfs_quota_us on cgroup v1
  - os.sched_getaffinity(0) fallback

Use NUM_CPU_THREADS.value in the dataloader instead of cpu_count(),
and update export_model.py and all renderer references.

Co-authored-by: teeny-runner <runner@teeny>
2026-07-28 15:33:57 -07:00
George HotzandGitHub 0cdddf3495 remove unneeded default args in renderers (#17262) 2026-07-28 14:53:04 -07:00
George HotzandGitHub 9ce65b71c0 delete dsp_pm_late (#17260) 2026-07-28 14:05:41 -07:00
George HotzandGitHub 7d48926293 switch _device_num to AxisType.DEVICE range (kimi) (#17252)
* switch _device_num to AxisType.DEVICE range (kimi)

* improve

* don't exclude device for ranges

* current multi ends the range
2026-07-28 13:52:47 -07:00
George HotzandGitHub a9ad08064e make the github actions runners generic for gitea (#17254) 2026-07-28 10:48:49 -07:00
George HotzandGitHub 960430a5e5 Revert "nv: set lower interleave level to reduce GPU hogging (ai slop) (#15518)" (#17218)
This reverts commit ac12914506.
2026-07-26 08:15:16 -07:00
George HotzandGitHub a346e2ea7b improve call for viz (#17187) 2026-07-24 15:26:05 -07:00
George HotzandGitHub f65001e297 cleanups because copy is not allowed in rangeify (kimi) (#17186)
* cleanups because copy is not allowed in rangeify (kimi)

* gpt cleanups
2026-07-24 14:17:10 -07:00
George HotzandGitHub dcad119415 convert COPY -> STORE early (#17172)
* convert COPY -> STORE early

* finish it (glm)

* no slop

* fixes

* not None

* copy one

* bugs fixed, just kernel count i think

* fix disk to disk

* move out of realize

* revert that

* simpler

* fixes

* add copy kernel simplification

* fixes

* dead copy

* remove reshape on store

* fix mstack lowering
2026-07-24 13:49:17 -07:00
George HotzandGitHub 08eceb0ad9 llm: fix generated tokens in usage accounting (#17174) 2026-07-23 21:38:07 -07:00
George HotzandGitHub bf5989ea48 support loops in nir (kimi) (#17166)
* support loops in nir

* tpying
2026-07-23 17:05:15 -07:00
George HotzandGitHub 39924387b1 LOOP is srcless RANGE (kimi) (#17129)
* LOOP is srcless RANGE (kimi)

* upd

* cleanups

* cleanups

* we don't float anymore
2026-07-21 18:41:31 -07:00
George HotzandGitHub 2a81616492 update rules for INDEX mops (#17105) 2026-07-20 18:43:00 -07:00
George HotzandGitHub 636a43722d add END and GROUP to addrspace (#17102) 2026-07-20 17:26:02 -07:00
George HotzandGitHub f7ce7f330d llm: minor fixes + tests (#17099)
* llm: minor fixes + tests

* error
2026-07-20 14:31:20 -07:00
George HotzandGitHub b53cd35cff llm: make tokenizer fast (kimi) (#17077)
* llm: make tokenizer fast

* simpler

* re.escape + qcom mypy fix
2026-07-18 17:31:59 -07:00
George HotzandGitHub 86a6ad8ed2 llm: split cli.py into serve.py with the HTTP server (#17065)
* llm: split cli.py into serve.py with the HTTP server

* min edit
2026-07-17 10:45:37 -07:00
George HotzandGitHub 3ee2baf71d llm: add tool calling support (kimi) (#17061)
* llm: add tool calling support

* simpler

* cls

* gpt cleanup

* more gpt cleanups

* tests for tools calling
2026-07-17 10:20:01 -07:00
George HotzandGitHub 46172bb7c7 llm: add optional jinja template support (kimi) (#17058)
* add jinja template support (kimi)

* fix tests

* lil

* more crap to fallback
2026-07-16 19:02:58 -07:00
George HotzandGitHub d8b83daac6 set tc_upcast_axes to None when done with it (#17053)
* set tc_upcast_axes to None when done with it

* no tag needed
2026-07-16 14:15:21 -07:00
George HotzandGitHub 4d8c3d3fc9 add test_hgemm to test_tiny (#17050)
* add test_hgemm to test_tiny

* dsp skip
2026-07-16 13:12:10 -07:00
George HotzandGitHub 2b1146b3f4 further clean up wmma (#17048)
* further clean up wmma

* comment
2026-07-16 11:43:23 -07:00
George HotzandGitHub 61e104bdfb use UOp.wmma everywhere (#17045)
* use UOp.wmma everywhere

* fix
2026-07-16 10:40:48 -07:00
George HotzandGitHub 8b0dd870ce use wmma helper (#17038) 2026-07-15 23:25:17 -07:00
George HotzandGitHub dde2e736e5 fix disable_gc decorator reentrancy (#16999) 2026-07-12 15:32:54 -07:00
George HotzandGitHub 03ecad9486 full removal of dtype.vec (#16996)
* full removal of dtype.vec

* fix typo
2026-07-12 09:25:50 -07:00
George HotzandGitHub 246eb51523 more dtype.count removal from x86 and others (#16989)
* switch x86 to use numel instead of dtype.count

* works?

* remove dtype.count from x86 and others
2026-07-12 09:10:02 -07:00
George HotzandGitHub e69ce4be7f switch x86 to use numel instead of dtype.count (#16985)
* switch x86 to use numel instead of dtype.count

* works?
2026-07-11 15:26:57 -07:00
George HotzandGitHub afeb5c708f x86 simplification (#16983)
* simplify x86

* more extras

* simpler

* work

* fixes

* should pasS

* cmt-n

* delete more

* and more
2026-07-11 08:11:05 -07:00
George HotzandGitHub 43ad225d36 nv_610 support (glm) (#16979)
* nv_610 support

* unbump onnx

* fix autogen workflow
2026-07-10 20:37:30 -07:00
George HotzandGitHub 40de90ab19 lil changes to cifar (#16972)
* lil changes to cifar

* lil changes

* pool
2026-07-10 14:19:46 -07:00
George HotzandGitHub 77823056d4 remove dead DSP code and pre_matcher (#16968) 2026-07-10 11:27:50 -07:00
George HotzandGitHub 1e55cef493 remove vec from llvm (#16966)
* remove vec from llvm

* scalars are junk

* remove vec from dsp
2026-07-10 10:47:31 -07:00
George HotzandGitHub 34452efa22 remove dtypes.vec from cstyle (#16961)
* remove dtypes.vec from cstyle

* bugfix from gpt5.6

* cleanups
2026-07-09 23:11:11 -07:00
George HotzandGitHub d80c971ea2 param + cast dtype in arg (#16955)
* param + cast dtype in arg

* require dtype

* fix replace in dtype decomps

* fix x86

* dtype none is fine there

* Revert "dtype none is fine there"

This reverts commit 5315cc3e59.
2026-07-09 16:32:01 -07:00
George HotzandGitHub 95681f17ee remove extra dtypes from tests (#16954)
* remove extra dtypes from tests

* a few more
2026-07-09 14:59:56 -07:00
George HotzandGitHub 1df49a7bf5 dtype doesn't need to be explicit in most places now (glm) [PR] (#16951)
* dtype doesn't need to be explicit in most places now (glm) [PR]

* fix amd pcode

* image idx long/int meh

* real image fix
2026-07-09 14:41:34 -07:00
George HotzandGitHub 8d4c9d1058 make the upat compiler match the spec (glm) [PR] (#16948)
* make the upat compiler match the spec

* cleanups

* CUSTOMI/CUSTOM

* fix that test

* pyliteral

* fix variable shadowing
2026-07-09 12:30:39 -07:00
George HotzandGitHub 904b51a783 dtype fixups (grok) [PR] (#16940)
* dtype fixups

* a few more

* amd fixes

* revert that

* Remove comment in test_graph_rewrite_div_folding_bug

Removed comment about STACK dtype matching its element dtype in the test for graph rewrite division folding bug.
2026-07-09 11:03:22 -07:00
George HotzandGitHub 00d01d978d add dtype production rule checked with SPEC=2 (#16939)
* add dtype production rule checked with SPEC=2

* no None support yet

* detach passes through

* work

* fix

* line len
2026-07-08 18:04:34 -07:00
George HotzandGitHub 7f8bbe5407 hlb_cifar free speed (#16938)
* free speed for hlb cifar

* mirror
2026-07-08 15:49:48 -07:00
George HotzandGitHub fdffc6c0c8 remove dtypes base (#16931)
* remove dtypes base

* find/replace bug

* vcount is junk too
2026-07-08 11:48:11 -07:00
George HotzandGitHub 63cb1369cb remove ImageDType (glm) (#16918)
* remove ImageDType (glm)

* gpt work

* better

* is_image_shape

* cleanups

* remove crap from index

* revert crap python change

* image index with float, this needs to be fixed

* simp
2026-07-08 11:27:52 -07:00
George HotzandGitHub 6358f939e7 param arg is always the shape (#16914)
* param arg is always the shape

* earlier

* pm_no_weakints

* real fix
2026-07-08 10:51:56 -07:00
George HotzandGitHub 6e05cbdbcb remove the dtype.scalar calls everywhere [pr] (#16930)
* remove the dtype.scalar calls everywhere

* remove base everywhere

* Revert "remove base everywhere"

This reverts commit 0dd0a5a243.
2026-07-08 10:10:03 -07:00
George HotzandGitHub e4d0d634d4 remove a bunch of dtype.count [PR] (#16929)
* remove a bunch of dtype.count

* remove nonsense rules

* rm dead code
2026-07-08 09:34:46 -07:00
George HotzandGitHub a951650865 lil cleanups from reduce and expand [PR] (#16928) 2026-07-08 08:54:19 -07:00
George HotzandGitHub 4a51047146 remove unused pm_syntactic_sugar (#16920)
* remove unused pm_syntactic_sugar

* merge in group for reduce

* merge in add loads

* that ctx is unused

* late loads

* Revert "late loads"

This reverts commit ee70cffcee.
2026-07-07 15:40:52 -07:00
George HotzandGitHub 2aebb6f6c4 move mop cleanup [pr] (#16915)
* move mop cleanup [pr]

* those are mop cleanups

* more mop_cleanups

* revert

* movement.py
2026-07-07 14:30:32 -07:00
George HotzandGitHub 2fc7e5341b final removal of PtrDType (glm) (#16913)
* final removal of PtrDType (glm)

* junk
2026-07-07 13:37:33 -07:00
George HotzandGitHub d8fbbff260 EXPAND adds dims to the front (glm) (#16908)
* EXPAND adds dims to the front (glm)

* more read images

* simpler + spec

* spec should use n instead of s'

* bump comma to 12
2026-07-07 11:03:06 -07:00
George HotzandGitHub 0035bb6fa8 only front reduce (#16901)
* only front reduce

* lint + spec

* that should fail

* meh
2026-07-07 09:55:07 -07:00
George HotzandGitHub 6f1a983493 Ops.GROUP has no shape, like sink (#16906)
* Ops.GROUP has no shape, like sink

* readme
2026-07-07 08:20:38 -07:00
George HotzandGitHub 6e44176cfe fix flash attention example (#16900)
* fix spec for amd_copy_matmul

* remove shaped wmma

* fix flash attention example?

* dead code
2026-07-06 20:51:32 -07:00
George HotzandGitHub d94ad4444e fix spec for amd_copy_matmul + remove SHAPED_WMMA (#16897)
* fix spec for amd_copy_matmul

* remove shaped wmma
2026-07-06 19:00:10 -07:00
George HotzandGitHub 40d112d4d6 remove ptr=True from index (#16898) 2026-07-06 18:34:18 -07:00
George HotzandGitHub 6b8b2f5aeb remove PtrDtype from tests (#16896)
* remove PtrDtype from tests

* fixes

* not needed

* no -1
2026-07-06 18:22:22 -07:00
George HotzandGitHub 4faed79216 remove placeholder from is_ptr (#16893)
* remove placeholder from is_ptr

* simpler

* needed

* remove rewriter

* fix tests
2026-07-06 16:55:56 -07:00
George HotzandGitHub ccd3428aad remove ptrdtype from kernel graph (#16892)
* remove ptrdtype

* tag instead of set

* no ptrdtype

* debuf like the ranges
2026-07-06 14:59:07 -07:00
George HotzandGitHub 9512dc30f4 remove vec from const (#16889)
* remove vec from const

* reject in spec

* remove all vector dtypes

* not needed

* remove that

* clean up invalid
2026-07-06 12:23:07 -07:00