-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
P4
-
Affects Version/s: internal
-
Component/s: javafx
-
generic
-
windows
The D3D12 backend performance is lower than D3D9 (sometimes even much lower) on a discrete GPU system (RTX 4080S, Ryzen 7950X). To summarize:
- 3D examples - ~60% of D3D9 performance (only exception is 3DMesh which happens to confuse the D3D9 driver and make it much slower)
- 2D examples - 20-40% of D3D9 performance
- Text rendering - 5% of D3D9 performance
Cause is not yet known, but it can relate to some things specific to discrete GPUs, notably:
- 2D Ring Buffer being CPU-visible, which can slow down rendering of 2D primitives - Vertex Data resides on RAM instead of VRAM which can slow down processing on GPU side
- Use of only one Command Queue - discrete GPU systems tend to expose multiple hardware processing queues for certain operations, which can parallelize and speed up execution
Thanks to support from the mailing list we saw similar problems on AMD discrete GPUs, so the issues seem to be more discrete GPU focused than tied to a specific vendor.
Investigate and fix causes of low performance.
- 3D examples - ~60% of D3D9 performance (only exception is 3DMesh which happens to confuse the D3D9 driver and make it much slower)
- 2D examples - 20-40% of D3D9 performance
- Text rendering - 5% of D3D9 performance
Cause is not yet known, but it can relate to some things specific to discrete GPUs, notably:
- 2D Ring Buffer being CPU-visible, which can slow down rendering of 2D primitives - Vertex Data resides on RAM instead of VRAM which can slow down processing on GPU side
- Use of only one Command Queue - discrete GPU systems tend to expose multiple hardware processing queues for certain operations, which can parallelize and speed up execution
Thanks to support from the mailing list we saw similar problems on AMD discrete GPUs, so the issues seem to be more discrete GPU focused than tied to a specific vendor.
Investigate and fix causes of low performance.
- blocks
-
JDK-8356858 ☂ JavaFX D3D12: Performance optimization of D3D12 backend
-
- Open
-