RFR: 8238954: Improve performance of tiled snapshot rendering

thevenet.fred at free.fr thevenet.fred at free.fr
Fri Jun 26 09:13:20 UTC 2020

Hi everyone,

I think this is now ready for another (and hopefully final) round of reviews.


-- Fred

----- Mail original -----
De: "Frederic Thevenet" <github.com+7450507+fthevenet at openjdk.java.net>
À: "openjfx-dev" <openjfx-dev at openjdk.java.net>
Envoyé: Vendredi 28 Février 2020 18:58:00
Objet: RFR: 8238954: Improve performance of tiled snapshot rendering

Issue JDK-8088198, where an exception would be thrown when trying to capture 
a snapshot whose final dimensions would be larger than the running 
platform's maximum supported texture size, was addressed in openjfx14.
The fix, based around the idea of capturing as many tiles of the maximum 
possible size and re-compositing the final snapshot out of these, is 
currently only attempted after the original, non-tiled, strategy has already 
This was decided to avoid any risk of regressions, either in terms of 
performances and correctness, while still offering some relief to the 
original issue.

This follow-on issue aims to propose a fix to the original issue, that is 
able to correctly decide on the best snapshot strategy (tiled or not) to 
adopt before applying it and ensure best performances possible when tiling 
is necessary while still introducing no regressions compared to the original 


 - e13b5a06: Use tiling in QuantumToolkit::renderToImage when requested 
image is larger than max texture size
 - b914a48d: Revert "8088198: Exception thrown from snapshot if dimensions 
are larger than max texture size"

Changes: https://git.openjdk.java.net/jfx/pull/112/files
 Webrev: https://webrevs.openjdk.java.net/jfx/112/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8238954
  Stats: 173 lines in 2 files changed: 84 ins; 50 del; 39 mod
  Patch: https://git.openjdk.java.net/jfx/pull/112.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/112/head:pull/112

PR: https://git.openjdk.java.net/jfx/pull/112

More information about the openjfx-dev mailing list