RFR: 8334866: Improve Speed of ElfDecoder source search [v9]

duke duke at openjdk.org
Tue Nov 4 17:42:25 UTC 2025


On Tue, 4 Nov 2025 14:47:18 GMT, Kerem Kat <krk at openjdk.org> wrote:

>> Right now, looking up source file and line number info is slow because we do a full linear scan of the `.debug_aranges` section for every single call. This can be a major bottleneck on large binaries, especially during frequent native stack walking, e.g. while writing an hs_err.
>> 
>> This change fixes that by caching the address ranges on the first lookup, and keeping it in memory for the lifetime of the `DwarfFile` object.
>> 
>> All subsequent lookups on that object now use a binary search instead of the slow linear scan. If caching fails for any reason, it just falls back to the old method.
>
> Kerem Kat has updated the pull request incrementally with one additional commit since the last revision:
> 
>   move destroy and rename var

@krk 
Your change (at version ab20ce3b755f64d069f9f1f06e10bdcb7e42ca6b) is now ready to be sponsored by a Committer.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/27337#issuecomment-3487285662


More information about the hotspot-dev mailing list