Bold just got faster!
Compared to v0.1.0, we notice a 1.19x speed-up when linking Zig stage3 compiler:
Benchmark 1: ./bold.sh
Time (mean ± σ): 968.2 ms ± 4.5 ms [User: 3015.3 ms, System: 959.4 ms]
Range (min … max): 960.0 ms … 972.8 ms 10 runs
Benchmark 2: ./bold-0.1.0.sh
Time (mean ± σ): 1.148 s ± 0.016 s [User: 4.639 s, System: 0.903 s]
Range (min … max): 1.129 s … 1.182 s 10 runs
Summary
./bold.sh ran
1.19 ± 0.02 times faster than ./bold-0.1.0.sh
With this, we have now officially overtaken LLD for this benchmark, but are still behind Apple's rewritten ld64:
Benchmark 1: ./bold.sh
Time (mean ± σ): 969.4 ms ± 7.5 ms [User: 3014.2 ms, System: 955.4 ms]
Range (min … max): 952.4 ms … 978.2 ms 10 runs
Benchmark 2: ./bold-0.1.0.sh
Time (mean ± σ): 1.150 s ± 0.012 s [User: 4.680 s, System: 0.894 s]
Range (min … max): 1.135 s … 1.171 s 10 runs
Benchmark 3: ./ld.sh
Time (mean ± σ): 445.1 ms ± 7.7 ms [User: 1773.4 ms, System: 292.3 ms]
Range (min … max): 438.6 ms … 464.2 ms 10 runs
Benchmark 4: ./lld.sh
Time (mean ± σ): 1.062 s ± 0.024 s [User: 1.213 s, System: 0.237 s]
Range (min … max): 1.043 s … 1.122 s 10 runs
Summary
./ld.sh ran
2.18 ± 0.04 times faster than ./bold.sh
2.39 ± 0.07 times faster than ./lld.sh
2.58 ± 0.05 times faster than ./bold-0.1.0.sh
What's Changed
- Add zacho via nix flake by @kubkon in #172
- Update to zig 0.14 by @kubkon in #173
- Make Atom.Index safe by @kubkon in #174
- Migrate remaining unsafe indexes to safe indexes except File by @kubkon in #175
- Migrate to safe File.Index by @kubkon in #176
Full Changelog: v0.1.0...v0.2.0