RFR: 8334495: Use FFM instead of jdk.internal.misc.Unsafe in java.desktop font implementation [v3]
Andrey Turbanov
aturbanov at openjdk.org
Tue Jul 9 20:08:16 UTC 2024
On Thu, 27 Jun 2024 18:29:55 GMT, Phil Race <prr at 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.
>
> Phil Race has updated the pull request incrementally with one additional commit since the last revision:
>
> 8334495
src/java.desktop/share/classes/sun/font/StrikeCache.java line 147:
> 145: private static final VarHandle topLeftXHandle = getVarHandle(GlyphImageLayout, "topLeftX");
> 146: private static final VarHandle topLeftYHandle = getVarHandle(GlyphImageLayout, "topLeftY");
> 147: private static final VarHandle cellInfoHandle = getVarHandle(GlyphImageLayout, "cellInfo");
Suggestion:
private static final VarHandle cellInfoHandle = getVarHandle(GlyphImageLayout, "cellInfo");
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/19777#discussion_r1671170776
More information about the client-libs-dev
mailing list