4 ms·
> In any case, the runtime performance hit of frame pointers is quite high That's not true at all. It's in some very rare cases. Firefox I think at this point
by the_mitsuhiko 4y ago
> In any case, the runtime performance hit of frame pointers is quite high
That's not true at all. It's in some very rare cases. Firefox I think at this point ships with framepointers enabled and so does every M1/M2 mac app and all iOS applications as it's mandatory for the calling convention on Apple.
- remexre 4y agoOn AArch64 I think it's cheaper because losing one register doesn't hurt as much, since you've got twice as many.
- nneonneo 4y agoThe ORC documentation [1] cites a 5-10% perf hit [2] on x86. Now, granted, we're talking about an architecture that has only 8 logical registers to begin with, so losing one is going to hurt a lot more than x86-64 (16 logical registers) or AARCH64 (32 logical registers). But, 5-10% is definitely a noticeable perf hit. Phoronix [3] did a test of "-fno-omit-frame-pointer" during the discussion on whether to enable the flag for Fedora, this time on x86-64. They found an average 14% performance hit on a wide variety of benchmarks. [1] https://www.kernel.org/doc/html/latest/x86/orc-unwinder.html https://www.kernel.org/doc/html/latest/x86/orc-unwinder.html [2] https://lore.kernel.org/all/20170602104048.jkkzssljsompjdwy@suse.de/ https://lore.kernel.org/all/20170602104048.jkkzssljsompjdwy@... [3] https://www.phoronix.com/review/fedora-frame-pointer/5 https://www.phoronix.com/review/fedora-frame-pointer/5
- zznzz 4y agoSee also https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/QNCVIZCVSJ4M7ILCBPP23R77QE4YLASO/ https://lists.fedoraproject.org/archives/list/devel@lists.fe... - the botan phoronix results with frame pointers were probably measuring debug builds.