|
From: | Firl, Tanner |
Subject: | Increasing speed of unw_backtrace |
Date: | Thu, 18 Aug 2022 19:58:48 +0000 |
Attachment removed as per the following specifications: https://hpe.sharepoint.com/sites/WW/globalsecurity/Pages/global-security-policy.aspx?ID=2884 Hello! I’m trying to build libunwind (for x86_64 and aarch64) so unw_backtrace is as close to the 10ns/frame that’s advertised. The closest I’ve gotten is building with the 4 flags mentioned here:
https://lists.nongnu.org/archive/html/libunwind-devel/2021-03/msg00004.html. This gets me down to ~100ns/frame in my own standalone tests (attached), so in theory I should be another ~10x speed increase possible.
Any ideas what else I might do to increase unw_backtrace performance? I only care about using this outside of exceptions, in a normal local executing program (though I don’t want to assume framepointers will always be present). More than
happy to answer any other questions you might have about constraints. If you’re interested in running my standalone performance tests, it should be as easy as putting those files in a directory, modifying variable UNWIND_INSTALL in make_c_nested_calls.sh, and call `bash make_c_nested_calls.sh`. Let me know
if there are issues doing this. Thanks! Tanner Tanner Firl Software Engineer Performance Tools Developer Hewlett Packard Enterprise 2131 Lindau Lane, Suite 1000 Bloomington, MN 55425 |
make_c_nested_calls.sh
Description: make_c_nested_calls.sh
[Prev in Thread] | Current Thread | [Next in Thread] |