汇编耻辱堂:反向竞赛,寻找单条指令的性能地板
来源:github.com — 2026-08
📋 概述
Chris Domas(xoreaxeaxeax)发起了一个反其道而行之的竞赛:传统指令延迟分析追求让代码跑得最快,而这个"Assembly Hall of Shame"专门寻找单条指令性能的绝对下限——即让一条指令尽可能慢。目前 x86 冠军是 fxrstor64,通过从高延迟的 PCIe MMIO 区域加载 512 字节 FPU/MMX/XMM 状态,并用一群"锤子核心"饱和 PCIe 根复合体,让这条指令创下约 1980 亿周期、耗时 62 秒的记录。项目还收录了 nop、rdtsc、idiv、enter 等指令按最慢程度的排行榜,并有严格规则(指令不可被中断、需工厂默认配置等)。
🔑 核心要点
- 项目宗旨与常规优化相反:不追求最快,而追求单条指令能有多慢,专门搜索性能的地板。
- x86 现役冠军是 fxrstor64,通过从高延迟 MMIO 区域加载 512 字节状态,并用多核饱和 PCIe 总线,创下 198,002,498,236 周期、62 秒的成绩。
- 排行榜按最慢程度收录了 nop(1 周期)到 mfence、mov cr3 等指令,附上触发策略与硬件平台。
- 有明确规则:只允许单条指令被计时、不允许可中断指令(rep movs、pause 等出局)、按 CPU 基准频率归一化、所有平台必须是出厂默认配置。
- 作者把它定义为纯粹"看看能不能做到"的概念验证,没有严肃的实际用途。
💡 金句
我们寻找单指令性能的绝对下限——让一条指令慢到不能再慢。
👍 0
👎 0
← 返回 Lobsters 首页