Token Lab搜索

← 全部研究工具
仅本地处理 · 不调用模型

GPU 显存估算

在启动实验前拆解权重、KV cache 与全量训练状态的显存预算。

学习指南与本课目录LEARNING CONTRACT

理解 → 实现 → 研究

目标:解释本课机制、复现一个例子、测试一个失败案例。读完不自动代表掌握。

01设置参数

02填入输入

设置参数、载入示例,或粘贴自己的输入。

03查看结果

设置参数、载入示例,或粘贴自己的输入。

页面可能仅展示部分内容;导出的 JSON 报告包含全部计算结果。

如何理解结果

单设备规划估算。推理采用理想打包权重与稠密 KV cache;量化元数据、分配器、算子和激活仍有额外开销。全量训练使用常见的混合精度 AdamW 18 字节/参数基线,另加你填写的激活与运行时预算。不代表所有框架,也不模拟 LoRA、分片、卸载或实测峰值显存。

GiB = 2³⁰ 字节。训练状态 = 参数量 × 18 字节。KV = 2 × 层数 × KV 头数 × 头维度 × 序列长度 × 并发数 × 字节。安全余量按含额外开销的小计计算。

方法参考

MATHEMATICAL REVIEW · 2026-10-26

假设、参考实现与验收

每参数 18 字节基线为 2 字节工作权重+4 主权重+4 梯度+8 Adam 动量。这是一种 dtype 布局,不是通用框架常量或实测峰值。

已复核计数单位、统计假设及数值例子;提供商计费和真实 GPU 分配仍须实测。

权重与优化器 dtype 布局 → KV 缓存与激活估计 → 运行时开销与安全余量 → GiB 估计与设备容量
机制图:从上到下跟踪每次变换。

运行前:预测一个边界情况

每参数 18 字节基线为 2 字节工作权重+4 主权重+4 梯度+8 Adam 动量。这是一种 dtype 布局,不是通用框架常量或实测峰值。

提示:隔离假设

固定基线输入,只改变一个参数或边界;同时比较数值与声明单位。单例通过仅验证该样例。

最小可运行算例

将算例及所链接模块保存在同一目录。使用 Node.js 22 或更高版本,然后运行 node vram-calculator.mjs. npm install gpt-tokenizer@4.1.0

import {encode as rawEncode} from 'gpt-tokenizer/encoding/cl100k_base';
import {promptDiff,inspectDataset,chunkDocument,compareScores,estimateVRAM,samplingLab,speculativeLab} from './research-core.mjs';
const encode=s=>rawEncode(s,{disallowedSpecial:new Set()});
const result=estimateVRAM({mode:'inference',params:7,weightBits:16,layers:32,kvHeads:8,headDim:128,sequence:4096,batch:1,kvBytes:2,runtime:2,activation:4,margin:15,capacity:24});
console.log(result.components.cache); // 0.5 GiB

测试与迁移

每参数 18 字节基线为 2 字节工作权重+4 主权重+4 梯度+8 Adam 动量。这是一种 dtype 布局,不是通用框架常量或实测峰值。

在下方笔记记录输入、代码版本、期望值和实测值;再构造违反上述假设的反例,解释原结论为何不再成立。

下载完整代码包(.tar.gz) · 完整参考代码与回归检查

预测、检验与证据记录

展开答案前先预测一个结果;练习后记录差异和迁移测试。记录仅存本地,在不同语言版本间共用。

打开记录/导出/清除 →

数学复核范围逐篇记录,不代表完成论文实证复现;可在笔记中记录疑似错误。 复核范围