SAVRN
Search Contact SAVRN

Open-weight model

AGILLM-GB10-1PF

by Robert Francis MarxistLeninist/AGILLM-GB10-1PF

Observed sparse-MMA microbenchmark peak on this Vast GB10: 992.018 TFLOP/s dense-equivalent, 99.20% of the 1 PFLOP/s target A ~2B-parameter language-model architecture designed around NVIDIA GB10 / SM121 sparse NVFP4 from the start, rather than retrofitting a…

Parameters
Context2,048
Weights298.4 GB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads255

Model Card

By Robert Francis, published under apache-2.0, revision 7d9cdaec1ccd.

Observed sparse-MMA microbenchmark peak on this Vast GB10: 992.018 TFLOP/s dense-equivalent, 99.20% of the 1 PFLOP/s target A ~2B-parameter language-model architecture designed around NVIDIA GB10 / SM121 sparse NVFP4 from the start, rather than retrofitting a generic Transformer. - 1,990,038,784 conventional parameters (0.498% below the 2B design target) - 600,000,000,000 training-token target (~302 tokens/parameter) - 16 sequential stages - 6 top-1 experts per stage, 96 experts total - model width 1280 - every expert uses 1280 -> 5120 -> 1280 SwiGLU - expert matrices are paired 4:8 structured sparse NVFP4 - native packed mxf4nvf4 SM121 sparse MMA is the target hot path - 20 query heads / 5…

Read Robert Francis's full model card

Current production state — RPV16-affine

  • Parameters: 1,990,038,784 conventional parameters (~1.990B)
  • Training target: 600 billion tokens
  • Objective: autoregressive next-token prediction only
  • Position scheme: NoPE, with causal/window structure only
  • Production geometry: batch 24 × sequence 2048 = 49,152 tokens/microstep
  • Expert routing: exact balanced top-1, 6 experts/stage, 8,192 rows/expert
  • Sparse core: paired-4:8 packed NVFP4, dominant 1280↔5120 expert matrices
  • Vocabulary: 129,280-token inherited AGILLM BPE
  • Output distribution: affine rank-16 normalized product vocabulary over 505×256 token factors
  • Update schedule: stages 15→0 one at a time, then one head/interface phase; no full-model gradient anchor
  • Optimizer: static bank of 16 stage-local PagedAdamW8bit optimizers plus one head optimizer
  • Measured full-cycle training rate: 42,018.5 tok/s after decoder warmup, versus 29,060.5 tok/s for the previous flat-head local-tied architecture (+44.6%)
  • Observed sparse-MMA microbenchmark peak on this Vast GB10: 992.018 TFLOP/s dense-equivalent, 99.20% of the 1 PFLOP/s target
  • Verified HF recovery checkpoint: RPV16-affine step 1856 / 91,226,112 seen tokens; HF path recovery/rpv16-affine-step00001856.ckpt
  • Current local shared-quant recovery: step 2112 / 103,809,024 seen tokens

AGILLM-GB10-1PF

A ~2B-parameter language-model architecture designed around NVIDIA GB10 / SM121 sparse NVFP4 from the start, rather than retrofitting a generic Transformer.

Locked v2 architecture

  • 1,990,038,784 conventional parameters (0.498% below the 2B design target)
  • 600,000,000,000 training-token target (~302 tokens/parameter)
  • 16 sequential stages
  • 6 top-1 experts per stage, 96 experts total
  • model width 1280
  • every expert uses 1280 -> 5120 -> 1280 SwiGLU
  • expert matrices are paired 4:8 structured sparse NVFP4
  • native packed mxf4nvf4 SM121 sparse MMA is the target hot path
  • BF16 residual stream and FlashAttention-2 GQA
  • 20 query heads / 5 KV heads / 64 head dimension
  • local windows 256 -> 512 -> 1024, then four global stages
  • exact AGILLM 129,280-ID BPE tokenizer bundle
  • 256-dimensional token interface, projected to the 1280 compute core
  • rotating stage-local updates plus one product-vocabulary head/interface phase; no full-model gradient anchor

The architecture is machine-readably frozen in ARCHITECTURE_LOCK.json.

Why the model looks strange

GB10 has an unusually large 128 GB GPU-addressable unified-memory pool but far less memory bandwidth than its sparse FP4 tensor-core issue capability would suggest. The model therefore tries to turn language-model training into large, repeatedly reusable sparse NVFP4 GEMMs instead of making the GPU shuffle small matrices and optimizer state all day.

The key expert shape, 1280 x 5120, comes from direct measurements on this GB10 and matches the existing paired-4:8 CUTLASS sparse runtime. It is not a copied Llama ratio.

1 PFLOP target

The repository reports these separately:

  1. register-resident sparse NVFP4 issue rate
  2. real sparse GEMM TFLOP/s
  3. whole-step useful TFLOP/s
  4. training tokens/s
  5. seen training tokens and language-model loss

No synthetic filler FLOPs are counted as useful model work.

Verified historical starting evidence on this GB10 was 969.794609 TFLOP/s best. After stopping all unrelated GPU compute and autotuning launch geometry/register pressure, the current checked peak is 992.017989 TFLOP/s, or 99.20% of 1 PFLOP/s, at 34 accumulators, 20 blocks/SM, 128 threads and 1200 iterations. The Vast container is denied permission to raise the GPU locked clock, so the remaining gap is presently host-clock limited. Search receipts are in evidence/1pf_search/.

NVIDIA's ~1 PFLOP figure is a sparse FP4 hardware ceiling, not a claim that an end-to-end training step can execute at 1 PFLOP/s. A 2 PFLOP number, if ever reported here, must be explicitly labelled algorithmic/effective useful compute and never confused with actual single-GB10 tensor issue throughput.

Real training canary

The model has already completed real training steps on HuggingFaceFW/fineweb-edu using the bundled tokenizer, causal cross-entropy, sparse forward kernels, backward propagation and AdamW.

Initial full-gradient canary:

  • 1,986,888,960 exact parameters instantiated
  • 512 real text tokens
  • finite CE + auxiliary loss
  • finite gradient norm
  • all 288 sparse expert linears executed
  • optimizer step completed

A two-microbatch accumulation test reused packed weights: the second microbatch added 288 sparse kernel calls but only 9 new packs, demonstrating the intended packed-weight-residency behavior. The subsequent stage-local schedule reduced live CUDA allocation substantially while retaining a real final-CE gradient for the selected stage.

Receipts are under evidence/canary/.

Data

agillm_gb10_1pf.py contains a streaming Hugging Face dataset loader. The intended 600B run uses a weighted mixture including FineWeb-Edu, FineWeb, Wikipedia, C4, Cosmopedia, Proof-Pile-2, Dolma and code sources. Source failures are allowed to fail over rather than stall training.

Run

python3 agillm_gb10_1pf.py profile
python3 agillm_gb10_1pf.py dataset-probe --dataset fineweb-edu
python3 agillm_gb10_1pf.py train --dataset fineweb-edu --batch 1 --seq 512 --steps 2 --grad-accum 2

The repository contains the exact tokenizer bundle and the current GB10 sparse runtime binaries plus CUDA source used to rebuild/audit them.

Repository policy

Source, target contracts, tokenizer, kernel sources, reproducibility receipts and promoted checkpoints belong here. Transient profiler dumps and every throwaway checkpoint do not. Hugging Face is a model repository, not a landfill with Git LFS.

Attribution

The upstream peak-MMA reproducer under third_party/gb10_peak_mma/ retains its BSD-3-Clause license and commit metadata. AGILLM-GB10-1PF source outside third-party material is Apache-2.0 unless a file says otherwise.

Production update — 2026-09-16

The active GB10 training architecture now uses NoPE, exact 8,192 routed rows per expert for the 24×2048 production geometry, one bounded native sparse context per layer, and checkpointed exact tied-vocabulary CE to avoid materialising the full 49,152×129,280 logit matrix. This reduced CUDA reserved memory from roughly 95.8 GB to roughly 24–36 GB during early stage rotation while improving warm microstep throughput into the ~19–23k tok/s range. Sparse packs remain stable between stage changes rather than growing every microstep.

Training uses a 17-slot hardware-native update cycle: stages 15→0 one at a time, followed by one exact tied token-interface anchor. No update makes all ~1.987B parameters trainable simultaneously. The target remains 600B training tokens.

RPV16-affine promotion — 2026-09-16

The flat 129,280-way tied-softmax head was replaced by a rank-16 affine product vocabulary. Since 129,280 = 505 × 256, each mixture component predicts a normalized 505-way factor and 256-way factor; each rank uses a different bijective affine permutation of token IDs before factorization. The mixture therefore remains a proper normalized distribution over all 129,280 token IDs while reducing the output-head compute width by roughly 10.5× versus the flat classifier.

The decoder was migrated with seven head-only optimizer updates from step 896 to step 952 before local stage training resumed. Loss moved from roughly 11.787 to 11.683 during that migration. A complete post-warm 17-phase cycle sustained 42,018.5 training tok/s end-to-end. Batch-size tests placed the full-graph throughput knee at batch 24 / 8,192 routed rows per expert: batch 12 (M=4096) and batch 48 (M=16384) were both slightly slower per token.

Benchmark and migration receipts are under evidence/rpv16/.

Shared activation quantization promotion — 2026-09-16

Production now quantizes each expert input once for gate + up instead of twice. Gate and up still use separate packed sparse weights, independent FP4 weight scales, and their ordinary native sparse GEMMs; only the identical activation quantization is shared. An 8,192-row expert A/B was bitwise identical for output, dX, and all gate/up/down weight gradients. Frozen-expert forward improved from 5.634 ms to 5.216 ms (+8.0%). A matched full stage-4 replay improved median throughput from 54,956 to 56,218 tok/s (+2.30%).

After live promotion from checkpoint 2048, the same stage-14 eight-microstep window improved from 30,188.7 to 31,515.2 tok/s (+4.39%), with exact 8,192-row routing and a successful optimizer update. The first shared-quant recovery checkpoint was written at step 2112 / 103,809,024 tokens. The previously published 42,018.5 tok/s full-cycle figure predates shared-quant; a new complete-cycle figure is not claimed until measured. Receipts are under evidence/sharedquant/.

Configuration

Context length (tokens)
2,048
Hidden size
1,280
Attention heads
20
Key/value heads
5
Head dimension
64
Vocabulary size
129,280
Model type
agillm_gb10_1pf_rpv16_affine_v3

Identity and Version

Repository
MarxistLeninist/AGILLM-GB10-1PF
Publisher
Robert Francis
Task
Not stated by the source
Modality
Other
Library
pytorch
Parameters
Not stated by the source
Languages
Not stated by the source
Revision
7d9cdaec1ccd7c18c87ef14d655c58267b432491
First published
2026-09-15
Last updated
2026-09-18

Files and Weights

105 files, 298.5 GB in total. The weights are 47 files totalling 298.4 GB in ckpt, pt.

Weights47 files · 298.4 GB
Configuration32 files · 362.9 KB
Tokenizer2 files · 34.9 MB
Documentation5 files · 14.0 KB
Other17 files · 2.7 MB
Repository2 files · 1.9 KB
Every file
FileTypeSizeSHA-256
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.ptWeights18.5 MB 24fe0b3aea48
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_base.ptWeights608.7 MB f9c2d7be7f28
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0000.ptWeights140.0 MB abbc792dd6ba
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0001.ptWeights140.2 MB 78da14b8564b
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0002.ptWeights140.2 MB 2b52e9600787
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0003.ptWeights140.2 MB 3836a17c29ce
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0004.ptWeights140.3 MB 413d68430f71
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0005.ptWeights140.3 MB ca54cc76342f
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0006.ptWeights140.6 MB 32e5e9ff15e5
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0007.ptWeights140.8 MB 83887252b47a
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0008.ptWeights140.7 MB b34ce9c8e572
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0009.ptWeights142.0 MB 71b450eb0a66
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0010.ptWeights142.0 MB f2ebabcf594d
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0011.ptWeights142.1 MB 72124bdefde1
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0012.ptWeights142.1 MB a39b7d8f2abe
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0013.ptWeights141.9 MB cf8a67e2b63c
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0014.ptWeights142.0 MB 780d64fe5fdb
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0015.ptWeights141.7 MB 0b225bb07b09
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0016.ptWeights142.0 MB 95f6de77a118
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0017.ptWeights141.6 MB c13313025aa4
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0018.ptWeights141.9 MB c4f9f0544e24
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.shards/core_block_0019.ptWeights141.8 MB 4fc17d4c8d3d
recovery/rpv16-affine-step00000960.ckptWeights11.8 GB 181100983069
recovery/rpv16-affine-step00001664.ckptWeights11.8 GB 4e9652af410f
recovery/rpv16-affine-step00001792.ckptWeights11.8 GB 970d76fddcc6
recovery/rpv16-affine-step00001856.ckptWeights11.8 GB 40601f493370
recovery/rpv16-affine-step00005120.ckptWeights11.8 GB 0d6475e29453
recovery/rpv16-targetfix-step00005248-v5.ckptWeights11.8 GB 010583eb3d33
recovery/rpv16-targetfix-step00029696-v5.ckptWeights11.8 GB 6eb55659660c
recovery/rpv16-targetfix-step00058368-v5.ckptWeights11.8 GB 51b286854fee
recovery/rpv16-targetfix-step00063488-v5.ckptWeights11.8 GB c8c5af288f73
recovery/rpv16-targetfix-step00068608-v5.ckptWeights11.8 GB 46ad09e883e0
recovery/rpv16-targetfix-step00074752-v5.ckptWeights11.8 GB 866a064fcfa6
recovery/rpv16-targetfix-step00075264-v5.ckptWeights11.8 GB 62e8f0541bd5
recovery/rpv16-targetfix-step00077312-v5.ckptWeights11.8 GB a7e17441583a
recovery/rpv16-targetfix-step00080896-v5.ckptWeights11.8 GB 22185bf7fc33
recovery/rpv16-targetfix-step00082944-v5.ckptWeights11.8 GB 625fc04166d5
recovery/rpv16-targetfix-step00086528-v5.ckptWeights11.8 GB 3ee65b0e0832
recovery/rpv16-targetfix-step00089088-v5.ckptWeights11.8 GB 41a82e916327
recovery/rpv16-targetfix-step00091648-v5.ckptWeights11.8 GB a8ab125c9999
recovery/rpv16-targetfix-step00094208-v5.ckptWeights11.8 GB 3371335e5c41
recovery/rpv16-targetfix-step00096859-v8.ckptWeights11.8 GB 5b2ecd5b428f
recovery/rpv16-targetfix-step00098304-v5.ckptWeights11.8 GB 23e383fc83ed
recovery/rpv16-targetfix-step00102912-v5.ckptWeights11.8 GB b9c67e751d7b
recovery/rpv16-targetfix-step00107008-v5.ckptWeights11.8 GB 4f3a03020c17
recovery/rpv16-targetfix-step00107520-v5.ckptWeights11.8 GB 47f6c137c51e
recovery/rpv16-targetfix-step00109568-v5.ckptWeights11.8 GB 51661f965f06
ARCHITECTURE_LOCK.jsonConfiguration6.1 KB
TARGETS.jsonConfiguration3.5 KB
agillm_gb10_1pf.pyConfiguration40.2 KB
config.jsonConfiguration1.1 KB
evidence/1pf_search/final_ridge.jsonConfiguration21.1 KB
evidence/1pf_search/fine_acc.jsonConfiguration24.0 KB
evidence/1pf_search/runtime_geometry.jsonConfiguration37.3 KB
evidence/AGILLM44_compute_status_at_fork.jsonConfiguration3.9 KB
evidence/RESULTS_VERIFIED.jsonConfiguration7.4 KB
evidence/canary/first_step_512.jsonConfiguration333 B
evidence/canary/grad_accum2_512.jsonConfiguration334 B
evidence/canary/stage_local_receipt.jsonConfiguration335 B
evidence/rpv16/headwarm_receipt.jsonConfiguration342 B
evidence/sharedquant/gateup_8192_ab.jsonConfiguration2.0 KB
evidence/sharedquant/live_promotion_step2048_to2112.jsonConfiguration1.4 KB
recovery/gb10-resume-pinned-step2994107-20260914/source_config_files/workspace/agillm43_dataset_hotload.jsonConfiguration13.6 KB
recovery/gb10-resume-pinned-step2994107-20260914/source_config_files/workspace/agillm43_production_v14/contracts/hot_config_owner_v25.jsonConfiguration15.7 KB
recovery/rpv16-targetfix-step00098304-v5.receipt.jsonConfiguration1.9 KB
recovery/rpv16-targetfix-step00107008-v5.receipt.jsonConfiguration1.8 KB
releases/2026-09-16_rpv16_affine/agillm_gb10_1pf.pyConfiguration37.0 KB
releases/ga1-phaseclock-datacursor-v12-20260916/DECISION.jsonConfiguration1.6 KB
releases/ga1-phaseclock-datacursor-v12-20260916/agillm_gb10_1pf.rpv16_affine_sharedquant_phaseclock_datacursor_v1.pyConfiguration46.6 KB
releases/ga1-phaseclock-datacursor-v12-20260916/dblock_b4_ar_after_gate_result.jsonConfiguration1.9 KB
releases/ga1-phaseclock-datacursor-v12-20260916/ga1_datacursor_v4_migration_receipt.jsonConfiguration344 B
releases/ga1-phaseclock-datacursor-v12-20260916/rpv16_ga1_seed20260917_m17.jsonConfiguration640 B
releases/ga1-phaseclock-datacursor-v12-20260916/rpv16_ga1_seed20260918_m85.jsonConfiguration639 B
releases/ga1-phaseclock-datacursor-v12-20260916/rpv16_ga8_seed20260917_m17.jsonConfiguration642 B
releases/rpv16-affine-sharedquant-v1/agillm_gb10_1pf.pyConfiguration40.2 KB
releases/targetfix-v14-20260916/agillm_gb10_1pf.pyConfiguration47.4 KB
releases/targetfix-v14-20260916/target_alignment_migration_receipt.jsonConfiguration1.8 KB
releases/targetfix-v14-20260916/targetfix_migration85_step5632.jsonConfiguration912 B
releases/targetfix-v14-20260916/targetfix_reset85_step5120.jsonConfiguration963 B
ARCHITECTURE.mdDocumentation1.7 KB
LICENSEDocumentation717 B
README.mdDocumentation9.3 KB
releases/ga1-phaseclock-datacursor-v12-20260916/README.mdDocumentation836 B
third_party/gb10_peak_mma/LICENSEDocumentation1.5 KB
evidence/live/OWNER_NOTICE.txtOther542 B
evidence/live/production_tail.jsonlOther43.8 KB
evidence/rpv16/batch12_m4096.logOther5.3 KB
evidence/rpv16/batch48_m16384.logOther5.3 KB
evidence/rpv16/rpv16_affine_headwarm896.logOther32.0 KB
evidence/rpv16/rpv16_affine_postwarm_cycle.logOther76.2 KB
evidence/rpv16/rpv16_fullcycle896.logOther76.1 KB
evidence/sharedquant/baseline_stage4_1857_1864.logOther5.2 KB
evidence/sharedquant/candidate_stage4_1857_1864.logOther5.2 KB
requirements.txtOther53 B
runtime/libfused_quant.soOther1.0 MB 803b56fcf3e8
runtime/libsparse_native.soOther1.3 MB a9bc81033f5e
runtime/src/fused_quant.cuOther6.1 KB
runtime/src/sparse_native.cuOther15.0 KB
supervisor.shOther945 B
third_party/gb10_peak_mma/COMMITOther41 B
third_party/gb10_peak_mma/peak_mma.cuOther7.4 KB
.gitattributesRepository1.9 KB
.gitignoreRepository71 B
recovery/gb10-resume-pinned-step2994107-20260914/pretrain_step02994107_from02954544_20260914T2115Z.pt.tokenizer.jsonTokenizer17.5 MB 75f803b5d04e
tokenizer_bundle.jsonTokenizer17.5 MB 1e1170051da8

License and Download

License
apache-2.0
Access
Open weights, no gate
Download size
298.4 GB
Download from Robert Francis

Released by Robert Francis through its official repository on Hugging Face. Read the license.

Memory Requirements

PrecisionWeights in memory
As published298.4 GB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About AGILLM-GB10-1PF

Can I use AGILLM-GB10-1PF commercially?

Yes. AGILLM-GB10-1PF is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

What is AGILLM-GB10-1PF's context length?

2,048 tokens, from the maximum position embeddings in its published configuration.