用 64 位字替换 Rust 枚举,作者让解释器提速 17%
blaizedsouza · x · 2026-09-15
Plush 语言作者分享了解释器优化的第六篇博客:将 Rust 的 tagged enum 类型 Value 替换为 tagged 64 位字表示,带来 17% 的性能提升。
- Plush 是动态类型语言(类似 Python/JS/Lua),解释器需要一个能表示所有值的 Value 类型;原实现用 Rust 枚举 + match 分发,改为打包进 64 位字后省去了内存间接开销
- 这是该系列持续优化的最新一步:上一篇通过简单改动把复制式 GC 提速 16 倍以上,百万对象回收时间降到约 7 ms
- 作者目标是让这门解释型语言足够快,能实时渲染 3D 动画
- 文章对想写快速解释器或 JIT 编译器的人是很好的概念入门,涵盖 NaN boxing/tagged pointer 等关键技术
「研究」频道最新
- ImageNet 表征相似只是计算层发现,大脑并非靠分类学视觉 — ShahabBakht · 2026-09-15
- 神经 AI 研究者:反向传播把进化、发育与终身学习混为一谈 — ShahabBakht · 2026-09-15
- k-server 猜想被证明,在线算法理论再下一城 — minilek · 2026-09-15
- 耶鲁物理学家重评前沿模型:多数物理基准被评错,几乎全部饱和 — inductionheads · 2026-09-15
- Negative Self-Distillation:无标签训练让 LLM 学会「避开错误」 — kastnerkyle · 2026-09-15
- 播客:微软研究员用微型网络在 ARC-AGI 拿约 45% — ziv_ravid · 2026-09-15