Out-Fibbing CPython with the Plush Interpreter
9 months ago
- #programming
- #benchmarking
- #optimization
- Plush是一种基于参与者模型的玩具编程语言,具有并行特性。
- 作者致力于优化Plush解释器以提升其性能表现。
- 递归斐波那契数列(fib)基准测试被用来衡量性能指标。
- Plush初始运行fib(38)耗时9.10秒,比Python的5.70秒更慢。
- 优化措施包括将push和call指令合并为call_direct,使时间降至8.44秒。
- 通过perf工具分析,作者发现函数调用中哈希查找的开销较大。
- 引入call_pc指令配合自修改代码技术后,时间缩减至5.13秒。
- 新增add_i64指令优化整数运算,进一步将时间降低到4.57秒。
- 这些优化对并行光线追踪程序无显著影响,揭示了微基准测试的局限性。