JDK-8220231 : Cache HarfBuzz face object for same font's text layout calls
  • Type: Enhancement
  • Component: client-libs
  • Sub-Component: 2d
  • Affected Version: 11,12,13
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2019-03-06
  • Updated: 2019-11-21
  • Resolved: 2019-04-11
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 11 JDK 13
11.0.6-oracleFixed 13 b18Fixed
Related Reports
Relates :  
Relates :  
Description
Currently each text layout operation includes the creation of Harfbuzz face object (hb_face_t). By creating it
only once per Font2D instance, a notable (couple of times) speedup of repeated layout operations for the same font can be achieved.
Harfbuzz face object is claimed to be 'threadsafe beyond construction'
(https://lists.freedesktop.org/archives/harfbuzz/2009-August/000359.html), so there shouldn't be a problem with
concurrent layout operations.
Comments
Fix request (11u) I would like to downport this for parity with 11.0.6-oracle. I had to resolve two files: webrev: http://cr.openjdk.java.net/~goetz/wr19/8220231-cache_harfbuzz-jdk11/01/ mail thread: http://mail.openjdk.java.net/pipermail/jdk-updates-dev/2019-November/002116.html
18-11-2019

http://mail.openjdk.java.net/pipermail/2d-dev/2019-March/009927.html
06-03-2019