RFR: JDK-8337681: PNGImageWriter uses more memory than necessary

Daniel Gredler duke at openjdk.org
Thu Aug 1 19:12:05 UTC 2024


At some point the `JPEGImageWriter` was optimized to reduce duplication / copying of rasters and data buffers (see `JDK-6266748`). However, `PNGImageWriter` never received a similar optimization, and is making unnecessary copies of raster and data buffers whenever PNG images are written.

Measurements: In a local test, `PNGImageWriter.write( )` and callees were initially showing up as an allocation hotspot (~400k objects / ~65 MB allocated), but after these optimizations I'm seeing much better numbers (~400 objects / ~740 KB allocated).

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

Commit messages:
 - JDK-8337681: PNGImageWriter uses more memory than necessary

Changes: https://git.openjdk.org/jdk/pull/20432/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20432&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8337681
  Stats: 193 lines in 2 files changed: 188 ins; 1 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/20432.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/20432/head:pull/20432

PR: https://git.openjdk.org/jdk/pull/20432


More information about the client-libs-dev mailing list