Issue metadata
Sign in to add a comment
|
WebGL performance regression in Chrome 64 on macOS
Reported by
satbi...@homelane.com,
Feb 6 2018
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Steps to reproduce the problem: 1. Install Google Chrome version 63 on Mac OS 2. Open https://threejs.org/examples/webgl_lights_rectarealight.html 3. Note the FPS (Frames per second) on the top left of the screen. 4. Update Google Chrome version to Version 64.0.3282.140 (Official Build) (64-bit) 5. Open the same link. 6. The FPS drops significantly. What is the expected behavior? The FPS show remain same. What went wrong? FPS drops significantly after update to version Version 64.0.3282.140 (Official Build) (64-bit) on Mac OSX. Did this work before? Yes 63.0.3239.108 Chrome version: 64.0.3282.140 Channel: stable OS Version: OS X 10.13.2 Flash Version: Attaching a glsl file with function where the code starts getting slow. I compared the fps by doing early returns on line number 24 and 45. The difference in fps is significant even when the operations should not take much time.
,
Feb 6 2018
,
Feb 6 2018
I tested on my mac (10.13.3, AMD Radeon R9) with Chrome 64.0.3282.140 and I can't reproduce this issue. It's probably GPU specific. Reporter, you will need to provide the about:gpu content on the machine where you can reproduce this bug.
,
Feb 7 2018
Attaching the about://gpu log.
,
Feb 7 2018
This is the Intel Integrated GPU in the dual-GPU NVIDIA MacBook Pros. We have one of these in house and could use gfxCardStatus to force it onto the integrated GPU.
,
Feb 7 2018
I have checked with another macbook. Attaching the about://gpu log of that macbook.
,
Feb 7 2018
I checked in another macbook where the issue is reproducible. Attaching about://gpu log of that macbook.
,
Feb 7 2018
Thanks for updating chrome://gpu info. Unable to reproduce this issue on 64.0.3282.140 using Mac 10.13.3 with steps mentioned below. 1. Installed 63.0.3239.132 and navigated to https://threejs.org/examples/webgl_lights_rectarealight.html and observed FPS as 60. 2. Upgraded to 64.0.3282.140 and navigated to https://threejs.org/examples/webgl_lights_rectarealight.html and observed FPS as 60. No FPS drop is seen. Attaching screencast for reference. @zmo: Please check the attached GPU contents of reporter. Thanks!
,
Feb 7 2018
,
Feb 7 2018
I can reproduce when launching Chrome with --force_integrated_gpu=1 on my macbook (dual GPU, AMD Radeon R9 / Intel Iris Pro). This is with Stable and Canary.
,
Feb 7 2018
Can someone do a bisect on a MacBook Pro (Retina, 15-inch, Mid 2015)? Run Chrome with --force_integrated_gpu=1 (and made sure you don't have any other apps running that might trigger discrete GPU, say, another Chrome running WebGL).
,
Feb 7 2018
Rajshree, could you please give a try using the flag mentioned in #11. Looks like you have a Retina in the inventory, but not sure about the GPU card. By any chance if you cannot repro, please route to Inhouse/ MTV.
,
Feb 8 2018
Able to reproduce the issue on mac 10.12.6 MacBook Pro (Retina, 15-inch, Mid 2015) using chrome reported version #64.0.3282.140 and latest canary #66.0.3342.0. Bisect Information: ===================== Good build: 64.0.3271.0 Bad Build : 64.0.3272.0 Change Log URL: https://chromium.googlesource.com/chromium/src/+log/8e638519a02830035b58a02dd23dc5bb86488d34..6eda055fb80e52bd7808e4e5c94755c0bd6e4f9c https://chromium.googlesource.com/angle/angle.git/+log/bb27c3a1483c..2c7f34c833b4 From the above change log suspecting below change Change-Id: Iec727821d8137db56b440ddbe007879b1b55f61f Reviewed-on: https://chromium-review.googlesource.com/707195 oetuaho@ - Could you please check whether this is caused with respect to your change, if not please help us in assigning it to the right owner. Note: Adding stable blocker for M-64 as it seems to be a recent regression. Please feel free to remove the same if not appropriate Thanks...!!
,
Feb 8 2018
I can conform by running Chrome on my Retina with switches --force_integrated_gpu, we see this bug; running with --force_integrated_gpu --dont_use_loops_to_initialize_variables, the bug no longer manifests. Olli, should we just add this driver bug workaround for Mac Intel?
,
Feb 8 2018
By the way, thank you for the bisecting!
,
Feb 8 2018
+ Abdul
,
Feb 9 2018
Interesting that the loops to initialize variables affects performance in a noticable way. I'd say turning on dont_use_loops_to_initialize_variables on Mac Intel is a reasonable solution. Maybe revisiting the loop initialization in general would be a good idea, it might trigger in some cases where it's not reasonable to use it.
,
Feb 9 2018
+ ellyjones@ (Mac TL)to keep her in loop.
,
Feb 9 2018
I'll put in a driver bug list entry.
,
Feb 13 2018
Friendly ping to get an update on update on this issue as it is marked as stable blocker for M65. Thanks..!
,
Feb 13 2018
M65 Stable promotion is coming VERY soon. Your bug is labelled as Stable ReleaseBlock, pls make sure to land the fix and request a merge into the release branch ASAP. Thank you.
,
Feb 13 2018
CL is in queue: https://chromium-review.googlesource.com/c/chromium/src/+/917018
,
Feb 13 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/04dc3fe0ebce31ddfe0249be05e7658177235605 commit 04dc3fe0ebce31ddfe0249be05e7658177235605 Author: Zhenyao Mo <zmo@chromium.org> Date: Tue Feb 13 22:25:50 2018 Turn off "shader var init in a loop" on Mac Intel to avoid perf regression. BUG= 809422 TEST=manual R=kbr@chromium.org,oetuaho@nvidia.com Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I665ae361cc9485c120ca2fdb5d174213e083042b Reviewed-on: https://chromium-review.googlesource.com/917018 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Zhenyao Mo <zmo@chromium.org> Cr-Commit-Position: refs/heads/master@{#536514} [modify] https://crrev.com/04dc3fe0ebce31ddfe0249be05e7658177235605/gpu/config/gpu_driver_bug_list.json
,
Feb 13 2018
,
Feb 13 2018
CL listed at #23 just to landed in trunk. Pls update the bug with canary result tomorrow.
,
Feb 14 2018
The NextAction date has arrived: 2018-02-14
,
Feb 14 2018
Able to reproduce the issue on mac 10.12.6(retina) using chrome reported version #64.0.3282.140 as per comment #0 and #11 Verified the fix on Mac 10.12.6(retina) using Chrome version #66.0.3347.0 as per the comment #0 and #11. Attaching screen cast for reference. Observed that FPS did not drop and remained at 33-60. Hence, the fix is working as expected. Adding the verified labels. Thanks...!!
,
Feb 14 2018
How safe is the change listed at #23 to merge to M65?
,
Feb 14 2018
It's only a driver bug workaround data entry, so I'd say pretty safe.
,
Feb 14 2018
Approving merge to M65 branch 3325 based on comments #27 and #29. Please merge ASAP. Thank you.
,
Feb 14 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/75d633748b03e556edc8443ee7f9c81e5adfb9d6 commit 75d633748b03e556edc8443ee7f9c81e5adfb9d6 Author: Zhenyao Mo <zmo@chromium.org> Date: Wed Feb 14 21:06:00 2018 Turn off "shader var init in a loop" on Mac Intel to avoid perf regression. BUG= 809422 TEST=manual R=kbr@chromium.org, oetuaho@nvidia.com TBR=zmo@chromium.org (cherry picked from commit 04dc3fe0ebce31ddfe0249be05e7658177235605) Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I665ae361cc9485c120ca2fdb5d174213e083042b Reviewed-on: https://chromium-review.googlesource.com/917018 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Zhenyao Mo <zmo@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#536514} Reviewed-on: https://chromium-review.googlesource.com/919424 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Cr-Commit-Position: refs/branch-heads/3325@{#469} Cr-Branched-From: bc084a8b5afa3744a74927344e304c02ae54189f-refs/heads/master@{#530369} [modify] https://crrev.com/75d633748b03e556edc8443ee7f9c81e5adfb9d6/gpu/config/gpu_driver_bug_list.json
,
Feb 16 2018
,
Feb 21 2018
Tested this issue on Mac OS 10.13.3 (Retina, 15-inch, Mid 2015) on the reported version 64.0.3282.140 and latest M-65 Chrome build 65.0.3325.88 by following the steps mentioned in the original comment and #11. Able to reproduce this issue on the reported version 64.0.3282.140 and the issue is fixed on the latest M-65 build 65.0.3325.88. On launching Chrome with the flag '--force_integrated_gpu=1' and navigating to the given html page, can observe no drop in FPS. Attached is the screen cast for reference. Hence adding TE verified labels as the fix is working as intended. Thanks.. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by dtapu...@chromium.org
, Feb 6 2018