On Tue, 18 Jun 2024 20:31:58 GMT, Phil Race <p...@openjdk.org> wrote:
> Migrate font code from jdk.internal.misc.Unsafe to using FFM. > This reduces the coupling between the java.desktop module and the internals > of the java.base module. > > The code being changed here is not particularly performance sensitive, and it > is not executed in the most common cases. > The main impact performance-wise is a total of around 37ms in initialisation > costs on my x64 macbook. > A minimal program that just draws a string to an image - does not even put up > a window - runs at around 690-700ms. > There's variability in that number and the overall time for a JDK without the > change is around (660-670ms) > In the small test, this is the first and only use of FFM, so the one-off part > cost should move elsewhere when FFM starts > to be used earlier in the JDK itself. src/java.desktop/share/classes/sun/font/StrikeCache.java line 257: > 255: byte[] bytes = new byte[sz]; > 256: MemorySegment.copy(pixelData, ValueLayout.JAVA_BYTE, 0, bytes, > 0, sz); > 257: return bytes; You could use `toArray` here: Suggestion: return pixelData.toArray(ValueLayout.JAVA_BYTE); ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19777#discussion_r1651481722