Details
-
Enhancement
-
Resolution: Unresolved
-
P4
-
fx2.0
Description
A very simple animation shows that the render thread spends significant time in com.sun.prism.d3d.D3DSwapChain.nPresent().
The fact that the length of those delays increases linearly and resets periodically suggests that the pulse is out of sync with VSync and occurs at a lower frequency (approx. 16ms vs 16.66 ms). Since the user thread waits for the renderer to finish its job, time spent in nPresent() affects the number of frames that could be created and rendered per second for computationally intensive applications. (See attached timeline view for the user and render threads).
The fact that the length of those delays increases linearly and resets periodically suggests that the pulse is out of sync with VSync and occurs at a lower frequency (approx. 16ms vs 16.66 ms). Since the user thread waits for the renderer to finish its job, time spent in nPresent() affects the number of frames that could be created and rendered per second for computationally intensive applications. (See attached timeline view for the user and render threads).
Attachments
Issue Links
- blocks
-
JDK-8100864 Quantum threading
- Closed
- duplicates
-
JDK-8100622 Allow QuantumRenderer thread and FX Application thread to run in parallel
- Closed
- relates to
-
JDK-8104684 Animation stutters
- Closed
-
JDK-8101330 QuantumToolkit can schedule the pulse better to improve performance
- Closed
-
JDK-8113170 A simple animation is jerky
- Resolved
-
JDK-8100622 Allow QuantumRenderer thread and FX Application thread to run in parallel
- Closed
(1 relates to)