-
Bug
-
Resolution: Fixed
-
P3
-
fx2.1
Performance of Controls.Buttons benchmark run in mouse-nodes1008-skipAll configuration
dropped in twice in 2.1-controls-scrum build #166 comparing to build #165.
The regression is not fully seen in Aurora if you look at FPS metric.
The drop is just few fps:
b165: 59.6 fps
b166: 54.4 fps
But CPU % shows big increase which indicates the regression is much bigger:
b165: 3.8 %
b166: 13.7 %
If you run the benchmark in fullspeed mode you will see the regression.
The results are almost in twice worse. Here is what I see on my laptop:
b165: 210 fps
b166: 105 fps
b180: 112 fps // the latest available build
JPA shows that we started to spend 19% (7.4 sec) of time in TilePane.layoutChildren() instead of 2% (0.6 sec).
Instrumenting TilePane.layoutChildren shows that we call this method just 2 times in case of b165.
If I run Controls.Buttons with b180 for 30 seconds I get around 107 fps and
TilePane.layoutChildren() is called ~3,220 times.
This means TilePane.layoutChildren() started to be called on every pulse.
Looks like there is some functional bug.
Arguments to run the benchmark:
> cd jfx_ws/jfx/tests/performance/MouseResponseTest/
> ant build
> java -Djavafx.animation.fullspeed=true
-cp "$JFX_HOME/rt/lib/jfxrt.jar;./dist/MouseResponseTest.jar;../FXBenchmark/dist/FXBenchmark.jar;../../../import/benchmarks-2.1.1/benchmarks-2.1.1.jar"
jrockit.bm.Main uiresponse.bm.MouseResponseFpsBenchmark
-i 1 -wt 0 -tr 30 -nodes 1008 -skip 1007 -click-mode first-last
Perhaps the issue is more generic and not only Buttons benchmark specific.
dropped in twice in 2.1-controls-scrum build #166 comparing to build #165.
The regression is not fully seen in Aurora if you look at FPS metric.
The drop is just few fps:
b165: 59.6 fps
b166: 54.4 fps
But CPU % shows big increase which indicates the regression is much bigger:
b165: 3.8 %
b166: 13.7 %
If you run the benchmark in fullspeed mode you will see the regression.
The results are almost in twice worse. Here is what I see on my laptop:
b165: 210 fps
b166: 105 fps
b180: 112 fps // the latest available build
JPA shows that we started to spend 19% (7.4 sec) of time in TilePane.layoutChildren() instead of 2% (0.6 sec).
Instrumenting TilePane.layoutChildren shows that we call this method just 2 times in case of b165.
If I run Controls.Buttons with b180 for 30 seconds I get around 107 fps and
TilePane.layoutChildren() is called ~3,220 times.
This means TilePane.layoutChildren() started to be called on every pulse.
Looks like there is some functional bug.
Arguments to run the benchmark:
> cd jfx_ws/jfx/tests/performance/MouseResponseTest/
> ant build
> java -Djavafx.animation.fullspeed=true
-cp "$JFX_HOME/rt/lib/jfxrt.jar;./dist/MouseResponseTest.jar;../FXBenchmark/dist/FXBenchmark.jar;../../../import/benchmarks-2.1.1/benchmarks-2.1.1.jar"
jrockit.bm.Main uiresponse.bm.MouseResponseFpsBenchmark
-i 1 -wt 0 -tr 30 -nodes 1008 -skip 1007 -click-mode first-last
Perhaps the issue is more generic and not only Buttons benchmark specific.