Skip to content

compile3: gate FLOAT16/IMAGE/NOLOCALS defaults on QCOM#7

Merged
sunnyhaibin merged 1 commit into
masterfrom
fix/remove-compile3-defaults
May 18, 2026
Merged

compile3: gate FLOAT16/IMAGE/NOLOCALS defaults on QCOM#7
sunnyhaibin merged 1 commit into
masterfrom
fix/remove-compile3-defaults

Conversation

@sunnyhaibin
Copy link
Copy Markdown

@sunnyhaibin sunnyhaibin commented May 18, 2026

Summary

  • Gate FLOAT16=1, IMAGE=2, NOLOCALS=1 env var defaults behind a DEV check
  • Defaults only apply when DEV is not set or is explicitly QCOM
  • JIT_BATCH_SIZE=0 default remains unconditional (matches upstream)

Why

When callers pass a non-QCOM device (e.g. DEV=CPU:LLVM), these defaults shouldn't apply. Specifically, dmonitoring_model on CPU:LLVM fails the output-sensitivity validation test when FLOAT16=1 is set — doubling inputs produces identical outputs.

Behavior matrix

Caller DEV Defaults applied?
CI (QCOM=1, no DEV) not set Yes — legacy models get IMAGE=2 FLOAT16=1 NOLOCALS=1
Stock SConscript (QCOM) QCOM Yes, but all flags already passed explicitly
Stock SConscript (PC) CPU:LLVM No — DM model compiles without FLOAT16
modeld_v2 SConscript (device) QCOM Yes, but all flags already passed explicitly
modeld_v2 SConscript (PC) CPU:LLVM No — IMAGE=0 passed explicitly

@github-actions
Copy link
Copy Markdown

This branch currently is behind tinygrad/master. The line count difference bot is disabled.

Only set FLOAT16=1, IMAGE=2, NOLOCALS=1 defaults when DEV is not
explicitly set or is set to QCOM. When callers pass a different DEV
(e.g. CPU:LLVM), these defaults are skipped — models like
dmonitoring_model don't need them and fail validation with FLOAT16=1
on CPU.
@sunnyhaibin sunnyhaibin force-pushed the fix/remove-compile3-defaults branch from 76ca5ae to 89e2b31 Compare May 18, 2026 04:35
@sunnyhaibin sunnyhaibin changed the title compile3: remove FLOAT16/IMAGE/NOLOCALS env defaults compile3: gate FLOAT16/IMAGE/NOLOCALS env defaults May 18, 2026
@sunnyhaibin sunnyhaibin changed the title compile3: gate FLOAT16/IMAGE/NOLOCALS env defaults compile3: gate FLOAT16/IMAGE/NOLOCALS defaults on QCOM May 18, 2026
@sunnyhaibin sunnyhaibin merged commit ac1632a into master May 18, 2026
51 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant