|
|
|
|
|
by brenns10
596 days ago
|
|
> I don't understand why frame pointers need to be in by default instead of developers enabling where needed If you enable frame pointers, you need to recompile every library your executable depends on. Otherwise, the unwind will fail at the first function that's not part of your executable. Usually library function calls (like glibc) are at the top of the stack, so for a large portion of the samples in a typical profile, you won't get any stack unwind at all. In many (most?) cases recompiling all those libraries is just infeasible for the application developers, which is why the distro would need to do it. Developers can still choose whether to include frame pointers in their own applications (and so they can still pick up those 1-2% performance gains in their own code). But they're stuck with frame pointers enabled on all the distro provided code. So the choice developers get to make is more along the lines of: should they use a distro with FP or without. Which is definitely not ideal, but that's life. |
|