Repository navigation
Conversation
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Contributor
|
v1 documentation preview: https://nvidia-preview-nemoclaw-v1-pr-12951.docs.buildwithfern.com/nemoclaw |
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
Signed-off-by: Aaron Erickson <aerickson@nvidia.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Outcome
DO NOT MERGE OR SHIP. This draft preserves Rust's semantic frontend and adds
compile-time-first CPU/GPU object backends and fast/balanced/release controls.
The final bounded test found zero eligible whole modules out of all 3,536
NemoClaw modules on both macOS and Linux. Park this GPU route and retain the
CPU controls and evidence. This result applies to the implemented leaf emitter;
it does not rule out other compiler architectures.
Implementation
owned manifests and raw emission receipts.
actual optimization level, target, costs and complete input multiplicities.
Require both strict GPU export and the native object contract.
GPU services, alternating corpus rounds and validating stable object bytes.
Never enlarge the workload by copying functions. Zero eligibility stops before
GPU initialization.
runner. Retain bitcode, receipts, exact-head identity and reports. No package
or image is published.
The continuation gate requires a repeatable 10% improvement in complete fast
builds against the strongest compatible CPU backend, preserved semantics, and
separate 1.5-times compiler/program size limits. The current GPU route fails the
available-work gate, so a persistent Cargo-wide GPU daemon and multi-GPU testing
are deferred. Whole-build GPU acceleration and hardware scaling remain unproved.
Verification
All three experimental jobs passed at
9228c79aed9a74780d07832c4966b7684651f0e1:run 38111445606.
--version; all 3,536unique modules were captured and rejected by the current whole-module GPU
contract. Most first failures were globals (2,617) or signatures (724).
rejected by the 2 MiB input cap also contain globals, verified separately with
pinned LLVM tools; lifting only that cap adds no eligible work.
Persistent CPU/Metal replay passed five rounds with identical objects.
A separate two-module physical Metal test passed three alternating rounds.
These fixtures validate tooling, not NemoClaw acceleration.
bitcode-only frontend/saved linking, and unchanged cache reuse: one GPU module
and seven attributed CPU modules.
cargo cipassed (601 seconds), including 1,290tests and 120 lifecycle tests. Independent compiler/backend tests, strict
Clippy, formatting, whitespace and workflow actionlint passed.
Ordinary Linux PR checks fail on a Kubernetes test/API mismatch already present
in their merge base
a49fc77ba43eba2c4fdbcecbf4c875f2f1ea80fb:TofuWorkspace::newexpects&Bundle, while the test suppliesPathBuf.That test does not exist on this experiment's exact branch head. The experimental
workflow checks out the verified head directly. No production tests were changed.
Measurements and limits
The same-head hosted native CPU comparison observed release Cargo time
280.693 seconds versus fast 172.246 seconds, 38.64% less.
Consistently stripped files measured 37,460,488 versus 44,006,976 bytes,
17.48% larger, within the program limit. This is a single sequential
release-then-fast comparison with separate target directories; source/file caches
and native build-script optimization can affect it. It is not randomized
qualification or GPU acceleration.
The Mac corpus audit's generated executable is 32.10% larger than its
declared reference and passes the program limit. Current Mac runtime compiler
assets are 235,153,385 bytes versus 222,966,640, 5.466% larger.
Accounting includes required adapters/kernels and non-system linked libraries
once, with shared LLVM reused. Validation tools, caches, development tools and
common Cargo/std/system assets are excluded. Linux/CUDA compiler footprint
remains unqualified.
Persistent CPU emission and whole Linux TPDE measurements remain research leads.
See
FINAL_GPU_GATE.md,COMPILE_FIRST.md,POLICY.mdandfast-backend/NATIVE_PROOF.mdunderexperiments/gpu-rust-compiler/.Keep this PR open as a draft and excluded from releases.
Signed-off-by: Aaron Erickson aerickson@nvidia.com