Commit Graph
14267 Commits
Author SHA1 Message Date
qazalandGitHub 2821bd646f late loss.to("CPU") in llama (#17476)
* late loss.to("CPU") in llama

* acc = 0
2026-08-10 17:31:50 +09:00
qazalandGitHub 44f1f45cd5 llama: custom silu kernels (#17462)
* start by copying the C

* uop kernel

* cleanup tests

* estimates is part of SPEC
2026-08-10 16:43:01 +09: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
nimlgenandGitHub 8c8b43de62 hcq2: fix beam (#17467)
* fix beam

* x
2026-08-09 16:53:47 +03:00
nimlgenandGitHub e17c21e102 hcq2: timings (#17464)
* hcq2: timings

* Dx

* x

* x

* x

* x

* align

* x
2026-08-08 22:00:32 +03: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
b1tgandGitHub abe2256299 fix symbolic sharded reshape (#17463) 2026-08-08 09:18:02 -07:00
b1tgandGitHub 8c49a7a34b support symbolic shapes in copy (#17461)
* pad_to is no-op when same shape

* support symbolic shapes in copy
2026-08-08 09:16:59 -07:00
qazalandGitHub 9dd3b8402e default llama 8b to MXFP4=1 (#17465) 2026-08-09 00:13:32 +08:00
sirhcmandGitHub c0d2f9ac0c nolocals supports variables (#17457) 2026-08-07 17:54:38 -04:00
nimlgenandGitHub 4c206a52b1 fix ci emu (gpt) (#17437)
* fix ci emu

* x
2026-08-07 22:36:59 +03:00
chenyuandGitHub 4a3b8f6501 better _drop_valid_stmts [pr] (#17454) 2026-08-07 15:18:35 -04:00
chenyuandGitHub 59b88ea5e2 move pm_fold_cast_const [pr] (#17453)
move to lower index dtype
2026-08-07 13:31:56 -04:00
chenyuandGitHub f76422b8af fix cast to float _min_max [pr] (#17451) 2026-08-07 11:56:19 -04:00
wozeparrotandGitHub 1827ec57f7 gptoss: fix sharded invalids (#17450) 2026-08-07 08:42:02 -07:00
nimlgenandGitHub b6189db8e9 cpu: fix eintr (#17449) 2026-08-07 17:46:57 +03:00
chenyuandGitHub 73e670c10f c0+x<c1 -> x < c1-c0 is ints only [pr] (#17448) 2026-08-07 10:44:01 -04:00
chenyuandGitHub fca695a36f clean up reduce MUL gradient (#17447) 2026-08-07 10:08:04 -04:00
Robert JosephandGitHub 0c96cdc300 fix prod gradients at zero (#17404) 2026-08-07 09:56:52 -04:00
chenyuandGitHub baa6148066 fix var of large half input (#17444)
* fix var of large half input

similar to mean, we use sum_acc_dtype for denominator

* mypy
2026-08-06 23:14:32 -04:00
1858f1fd9a viz: collapse PROGRAM nodes like CALL (codex) (#17438)
Co-authored-by: qazal <[email protected]>
2026-08-07 11:44:34 +09:00
f253c4469d remove contiguous from custom_kernel (#17149)
* no user contig on custom_kernel

* clean up

* non removable

* test MXFP4 llama without hipcc

* use compiler-free HIPCC renderer in llama CI

* move llama coverage to AMD tests

* run llama coverage in AMD test matrix

* respect configured ROCm path in llama profile

* work

* clean up

* fix

* add views back

* remove that

* update test

* test_double_permute one less kernel

* test_shrink less kernels

---------

Co-authored-by: George Hotz <[email protected]>
2026-08-07 11:20:59 +09:00
chenyuandGitHub 28195d51fb fix f2f from fp8e5m2fnuz to half (#17442)
* fix f2f from fp8e5m2fnuz to half

* it works if it's supported
2026-08-06 21:19:46 -04:00
chenyuandGitHub 9020a88f03 truncate float in DType.const [pr] (#17439) 2026-08-06 20:19:08 -04:00
chenyuandGitHub d8cbc11105 update linear interpolate to use int math for indices (#17441) 2026-08-06 20:18:39 -04:00
wozeparrotandGitHub 1fd6b1035f fa: swa support (#17367) 2026-08-06 08:07:30 -07:00
nimlgenandGitHub 46230e9f17 hcq2: fence inputs (#17436) 2026-08-06 16:27:12 +03:00
qazalandGitHub 9636dd1a25 test MXFP4 llama without hipcc (#17435)
* test MXFP4 llama without hipcc

* first pythonpath then dev
2026-08-06 17:31:40 +09:00
qazalandGitHub f258708d7d llama: custom quantize_mxfp4+transpose kernel (codex) (#17434)
* llama: custom quantize_mxfp4+transpose kernel (codex)

* rename to cpp

* inline

* cleanup

* lds load_bf16x4

* more tests, add Estimates
2026-08-06 16:13:28 +09:00
chenyuandGitHub 28e6ef6937 fix postopt symbolic [pr] (#17433)
REDUCE with src simplied to const would become unparented
2026-08-06 00:12:30 -04:00
chenyuandGitHub 969df866a3 one less strong dtype const in symbolic [pr] (#17431) 2026-08-05 23:35:06 -04:00
chenyuandGitHub 7a9cd8e329 move weak function and pm to uop/weak [PR] (#17429) 2026-08-05 22:27:40 -04:00
George HotzandGitHub b4372df9c6 revert wrong custom kernel fix (#17427) 2026-08-05 18:31:35 -07:00
chenyuandGitHub d51e55aa17 remove some pm_fold_cast_const [pr] (#17426) 2026-08-05 21:28:38 -04:00
sirhcmandGitHub be25207a7a scope variable names inside CALLs (#17424) 2026-08-05 20:59:09 -04:00
chenyuandGitHub d726e5f7f3 split pm_fold_cast_const [PR] (#17425)
need to delete this rule that writes strong typed CONST
2026-08-05 19:56:04 -04: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
geohot a8a8030bc9 add benchmark_llm script 2026-08-05 15:59:51 -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
chenyuandGitHub 07ac911665 few weak and decomp tweaks [PR] (#17419) 2026-08-05 15:55:04 -04:00
chenyuandGitHub c2f1e5ae2a fix weak cast to strong dtype [pr] (#17418)
weak can mean higher than that strong dtype, so always use that strong dtype is wrong
2026-08-05 15:32:23 -04: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
nimlgenandGitHub 9b27ea8523 hcq2: cleaner (#17413)
* hcq2: cleaner

* x
2026-08-05 19:45:04 +03:00
chenyuandGitHub 6cb419b9b7 regression test for bert nan with weak (#17412) 2026-08-05 12:14:26 -04:00
nimlgenandGitHub 5b0b68ec55 remove debug from test (#17410) 2026-08-05 15:47:40 +03:00
qazalandGitHub ad32bd272b viz/cli: faster and more complete rewrites print (#17411)
* viz/cli: faster and more complete matches print

* kwargs
2026-08-05 20:02:27 +09:00
nimlgenandGitHub 874d33128b hcq2 benchmark (#17235)
* hcq2 in ci?

* fix

* traning

* x

* x

* x

* recover

* debug

* impler

* x

* x

* x

* hcq2: group input scatter plans by destination

* hcq2: simplify input scatter tables

* x
2026-08-05 10:00:42 +03:00
chenyuandGitHub 3bf9e70b19 Revert "don't cast weak in _broadcasted [pr] (#17408)" (#17409)
This reverts commit b45058b5ec.
2026-08-05 02:40:33 -04:00
77e124e455 fix AMD WMMA emulation and test in CI (#17184)
* fix SPEC=1 test_tensor_cores

* implement i32 WMMA for RDNA3, add regression test to CI

* gfx950 scaled mfma llvmir fix

* detect VOP3PX2 in emu

* start cdna4 scaled mfam emu

* fix gfx12 llvmir signatures

* oops

* fix

* fix src2 const field extraction (gpt)

* scaled mfma fixes cdna4 (kimi)

* fp8 out breaks mfma (glm)

* fix const signature

* another

* fix f string for linter

* lint

* clean

* and a final lint

* .

* fix mypy

* skip slow tests on ci

* reduce unroll tensor shape -> 64x64

---------

Co-authored-by: George Hotz <[email protected]>
2026-08-04 23:25:32 -07:00