Puro-2B: Poor Lab's Qwen2-1.5B Trained on RTX 5090 within $5090
Kairong Luo, Jiarui Cui, Yaorui Yin, Shengqi Chen, Yiming Yang, Linxiang Gao, Yanmohan Wang, Mingzhe Zhang, Kaiyue Wen, Kaifeng Lyu, Wenguang Chen
cs.CL, cs.LG
2026-08-28
From-scratch ~2B on 1.4T tokens via RTX 5090s, FP8 and MuonH costs $6,891 GPU-side and scores 57.81 on 15 tasks, above Qwen2-1.5B (55.14), below Qwen2.5-1.5B (60.73).
Open weights are common. Fully reconstructible pretraining still tends to be expensive. Under this paper's rental-equivalent ledger, Llama-3.2-3B sits above $1.5M, SmolLM3-3B around $719K, and OLMoE-1B-7B around $200K. A public recipe can still be out of reach for a small lab.
Tsinghua PACMAN and Pengcheng Laboratory publish a from-scratch recipe aimed at that gap and train a family of 2B PuRo-2B (普罗-2B) checkpoints on consumer RTX 5090 GPUs. The comparison anchors are Qwen2-1.5B and Qwen2.5-1.5B. Weights, data manifests, Megatron training code, and Kaiyuan-Spark processing are released under Apache 2.0; upstream data licenses stay component-specific.
The backbone follows the Qwen3-1.7B layout with untied embeddings and LM head, which lands near 2B parameters. Sequence length is 4,096 and the global batch is 1,536 sequences. Phase 1 runs 438.8B tokens on 24 GPUs. Phase 2 continues for 960B tokens on 96 GPUs. The scheduled total is about 1.4T tokens.
Five pieces share the savings, and they were co-designed rather than stacked blindly.
There is no tensor parallelism. Phase 1 uses PP=2 and DP=12 and reports about 73% mixed-precision MFU.
The dollar figure counts only active GPU-hours of the final two-phase run. It excludes data prep, proxy sweeps, failed jobs, post-training, and labor. The canonical run is 22,514 GPU-hours and $6,891. A uniform Phase 2 variant that already clears Qwen2 uses 14,262 GPU-hours and $4,370.
On the unweighted 15-task mean, PuRo-2B scores 57.81, Qwen2-1.5B 55.14, Qwen2.5-1.5B 60.73. The Qwen dollar values on the same plot are 6ND plus H100-equivalent estimates (about $84K and $217K), so they are not the same kind of invoice as the measured 5090 hours.
| Model | GSM8K | MATH | HumanEval | MMLU | 15-task mean |
| Qwen2-1.5B | 59.82 | 23.70 | 27.44 | 56.39 | 55.14 |
| PuRo-2B ($4.4K) | 56.03 | 27.86 | 20.73 | 54.82 | 55.54 |
| PuRo-2B | 59.67 | 30.30 | 31.10 | 57.44 | 57.81 |
| Qwen2.5-1.5B | 67.70 | 32.28 | 31.71 | 61.56 | 60.73 |
The four-task math and code average is 43.50, 3.21 above Qwen2 and 4.02 below Qwen2.5. The eleven-task reasoning set is 63.02, 2.48 above Qwen2 and 2.51 below Qwen2.5. Under the same protocol the model still trails SmolLM3-3B (65.85) and Qwen3-1.7B-Base (65.27); those estimated reproduction costs are one to two orders of magnitude higher.
Curriculum ordering beats a uniform shuffle by about 1.2 to 1.6 points on the 15-task mean. The gap survives SFT: focused-math GSM8K 68.66 vs 66.89, scaled-math 76.12 vs 74.10, broad instruction 56.58 vs 54.99.
The fitted Puro Cost Scaling Law is a 2B, recipe-specific scale-down curve. Inverting it puts the Qwen2 aggregate near $4.4K.
For a group that actually wants to rerun pretraining, this is a rare package of consumer GPUs, trillion-token scale, an inspectable recipe, and an explicit dollar boundary. The 5090 compute-per-dollar edge is real. Hitting the reported throughput still needs driver patches, pipeline layout work, and a willingness to live with 32 GB.
"Approaches Qwen2.5" means a roughly 3-point gap on this 15-task protocol, not a tie. The $5,090 in the title is the claim that matching Qwen2-1.5B can fit under that number on their scale-down fit.
The cost is marginal accelerator spend, not the bill for standing up the lab. Many comparator dollars are 6ND estimates, so the x-axis is not a price list. Most of the mixture is already-filtered public data, and there is no corpus-wide decontamination audit against the evals; some of the curriculum gain could be leakage. The authors point to the post-training gap as evidence the ordering still helps, but the audit is missing. Chinese tokens are in the mix and then left out of the headline tables. The run is an overtrained 700 tokens-per-parameter dense model, not compute-optimal, and the cost law does not extend to larger models. 32 GB and no NVLink will bite first if the architecture grows.