Re:Frame pointers vs. DWARF – my verdict
by remexre on Wednesday February 15, 2023 @10:16AM
(#34804899)
On AArch64 I think it's cheaper because losing one register doesn't hurt as much, since you've got twice as many.
Re:Frame pointers vs. DWARF – my verdict
by yvdriess on Wednesday February 15, 2023 @11:11AM
(#34805782)
nitpick: it's the number of physical registers that matter more here, not ISA registers
Re:Frame pointers vs. DWARF – my verdict
by remexre on Wednesday February 15, 2023 @11:50AM
(#34806653)
Why wouldn't the lower ISA register count lead to more spills, regardless of the physical count? Is store forwarding really that effective?
Re:Frame pointers vs. DWARF – my verdict
by gpderetta on Wednesday February 15, 2023 @01:11PM
(#34808075)
It isn't.
Re:Frame pointers vs. DWARF – my verdict
by nneonneo on Wednesday February 15, 2023 @11:56AM
(#34806766)
The 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 [2] https://lore.kernel.org/all/20170602104048.jkkzssljsompjdwy@... [3] https://www.phoronix.com/review/fedora-frame-pointer/5
Re:Frame pointers vs. DWARF – my verdict
by zznzz on Wednesday February 15, 2023 @12:11PM
(#34807048)
See also https://lists.fedoraproject.org/archives/list/[email protected]... - the botan phoronix results with frame pointers were probably measuring debug builds.
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.