JDK-8355813 : Optimize updating the texture content
  • Type: Sub-task
  • Component: javafx
  • Sub-Component: graphics
  • Affected Version: internal
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: os_x
  • Submitted: 2025-04-29
  • Updated: 2025-04-29
  • Resolved: 2025-04-29
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.
Other
internalFixed
Description
Texture content is updated by passing the texture data in a buffer.
We copy the entire texture buffer into RingBuffer for to be update later when BlitEncoder executes.
The copying of entire buffer can be optimized by only complying the required data based on exact texture rectangle that will be updated.
This will reduce memory churning and effectively number of CommandBuffers
Comments
This change improves several test but with minor gains. For instance on M2 machine, few gains in FPS are: Circle: 23.5 to 24.7 Image: 20.3 to 21.8 WhiteText: 20.9 to 21.6 LargeText: 17.4. to 18 Changeset: 99b3a7b7 Branch: metal Author: Ambarish Rapte <arapte@openjdk.org> Date: 2025-04-29 11:46:38 +0000 URL: https://git.openjdk.org/jfx-sandbox/commit/99b3a7b7041d59809567e15c1549393c59504f13
29-04-2025