JDK-8214323 : SwingMark TextArea 6% regression in 12-b17 on Linux client
  • Type: Bug
  • Component: client-libs
  • Affected Version: 12
  • Priority: P4
  • Status: Closed
  • Resolution: Cannot Reproduce
  • OS: linux
  • Submitted: 2018-11-26
  • Updated: 2019-03-04
  • Resolved: 2018-12-10
Related Reports
Relates :  
Description
Happened on the promo build on into the retriage build.

Comments
I'm not seeing it ~/Downloads/jdk12b16/bin/java -jar SwingMark.jar SwingMark -repeat 5 -q Starting SwingMark SwingMark Test started at Mon Dec 10 13:34:39 PST 2018 Will run test 5 times in the same VM Program will automatically terminate after last run Startup Time: 545 Sub-Menus = 1291 (Paint = 0) TextArea = 512 (Paint = 692) Sliders = 343 (Paint = 502) Lists = 385 (Paint = 493) Table Rows = 572 (Paint = 178) Tree = 660 (Paint = 813) **** Starting run 2**** Sub-Menus = 1131 (Paint = 0) TextArea = 401 (Paint = 692) Sliders = 283 (Paint = 502) Lists = 260 (Paint = 493) Table Rows = 419 (Paint = 176) Tree = 628 (Paint = 813) **** Starting run 3**** Sub-Menus = 969 (Paint = 0) TextArea = 390 (Paint = 692) Sliders = 309 (Paint = 502) Lists = 240 (Paint = 493) Table Rows = 367 (Paint = 178) Tree = 600 (Paint = 814) **** Starting run 4**** Sub-Menus = 752 (Paint = 0) TextArea = 382 (Paint = 692) Sliders = 273 (Paint = 502) Lists = 262 (Paint = 493) Table Rows = 341 (Paint = 177) Tree = 593 (Paint = 814) **** Starting run 5**** Sub-Menus = 760 (Paint = 0) TextArea = 381 (Paint = 692) Sliders = 255 (Paint = 502) Lists = 213 (Paint = 493) Table Rows = 340 (Paint = 178) Tree = 595 (Paint = 814) Score: 15928 ==== ~/Downloads/jdk12b17/bin/java -jar SwingMark.jar SwingMark -repeat 5 -q Starting SwingMark SwingMark Test started at Mon Dec 10 13:35:50 PST 2018 Will run test 5 times in the same VM Program will automatically terminate after last run Startup Time: 516 Sub-Menus = 1297 (Paint = 0) TextArea = 537 (Paint = 692) Sliders = 334 (Paint = 502) Lists = 324 (Paint = 493) Table Rows = 662 (Paint = 178) Tree = 676 (Paint = 814) **** Starting run 2**** Sub-Menus = 1135 (Paint = 0) TextArea = 444 (Paint = 692) Sliders = 309 (Paint = 502) Lists = 257 (Paint = 493) Table Rows = 421 (Paint = 177) Tree = 612 (Paint = 813) **** Starting run 3**** Sub-Menus = 992 (Paint = 0) TextArea = 380 (Paint = 692) Sliders = 322 (Paint = 502) Lists = 248 (Paint = 493) Table Rows = 369 (Paint = 178) Tree = 604 (Paint = 814) **** Starting run 4**** Sub-Menus = 705 (Paint = 0) TextArea = 405 (Paint = 692) Sliders = 287 (Paint = 502) Lists = 235 (Paint = 493) Table Rows = 347 (Paint = 177) Tree = 590 (Paint = 814) **** Starting run 5**** Sub-Menus = 503 (Paint = 0) TextArea = 355 (Paint = 692) Sliders = 292 (Paint = 502) Lists = 250 (Paint = 493) Table Rows = 394 (Paint = 178) Tree = 597 (Paint = 814) Score: 15845 ------ Also I did a build without the new native call + compared to the same except with the native call and no difference WITHOUT (a la b16) TextArea = 530 (Paint = 692) TextArea = 447 (Paint = 692) TextArea = 399 (Paint = 692) TextArea = 430 (Paint = 692) TextArea = 393 (Paint = 692) Score: 16684 WITH (a la b17) TextArea = 534 (Paint = 692) TextArea = 438 (Paint = 692) TextArea = 398 (Paint = 692) TextArea = 421 (Paint = 692) TextArea = 405 (Paint = 692) Score: 16713
10-12-2018

The LCD filter applied by https://bugs.openjdk.java.net/browse/JDK-8212071 is applied before caching the glyph. The glyph will then be rendered many times from the cache, so it is surprising if this slows rendering .. however if it is the culprit, there may be nothing to be done, the call is required.
09-12-2018

please look at this regression
29-11-2018

Thanks for the confirmation that it is a regression of regression of JDK-8212071. I also thought so as the other one JDK-8014503 just introduced a check, whereas for this one, we are calling native OS method which might be slow.
29-11-2018

[~ecaspole] is it only regressing in linux? Were you able to find the changeset? Can you tell me how run this SwingMark test? Based on client commits https://bugs.openjdk.java.net/browse/JDK-8208638?jql=project%20%3D%20JDK%20AND%20resolution%20%3D%20Fixed%20AND%20fixVersion%20%3D%20%2212%22%20AND%20component%20%3D%20client-libs%20AND%20%22Resolved%20In%20Build%22%20%3D%20b17%20ORDER%20BY%20assignee%20ASC%2C%20priority%20DESC%2C%20key%20DESC affecting only linux, this bugfix JDK-8014503 or JDK-8212071 can be the culprit.
28-11-2018