On Tue, 7 Jan 2025 10:39:18 GMT, Shaojin Wen <s...@openjdk.org> wrote:
> In PR #22928, UUID introduced long-based vectorized hexadecimal to string > conversion, which can also be used in Integer::toHexString and > Long::toHexString to eliminate table lookups. The benefit of eliminating > table lookups is that the performance is better when cache misses occur. Running it on my machine (Ryzen 9 3900X): baseline (91db7c0877a68ad171da2b4501280fc24630ae83): Integers.toHexString 500 avgt 15 5.717 ± 0.274 us/op Longs.toHexString 500 avgt 15 6.851 ± 0.214 us/op this change (1788d09787cadfe6ec23b9b10bef87a2cdc029a3): Integers.toHexString 500 avgt 15 21.334 ± 0.268 us/op Longs.toHexString 500 avgt 15 38.907 ± 0.589 us/op I know that this processor has an extremely slow implementation of the `PDEP` instruction, but I'm kinda surprised you're seeing better results on aarch64. But I think Zen1 and Zen2 should considered here to avoid regressions on those architectures. ------------- PR Comment: https://git.openjdk.org/jdk/pull/22942#issuecomment-2577153462