Issue metadata
Sign in to add a comment
|
Large performance regression in WebRTC hardware acceleration on multi-GPU with multiple monitors |
||||||||||||||||||||||||
Issue descriptionChrome Version: 67.0.3396.99 OS Version: OS X 10.13.6 What steps will reproduce the problem? 1. Get a MBP 15 Mid-2012 (16GB of RAM). It has a nvidia GeForce GT 650M (1GB) and a Intel 4000 with 1.5Gb allocated to it. 2. Connect 3 monitors 1920x1200, one over HDMI, two over the thunderbolt powers via TB->DVI adaptors. They are in portrait. 3. Use Hangout VC (old or new one, doesn't matter) via Chrome. What is the expected result? Works great. What happens instead of that? Since approximatively two months ago, the kernel CPU usage becomes so high during video conferencing that the video jitters a lot, *independent of the video quality*. With the Activity Monitor I can see that it's doing something dumb in kernel mode as most time is spent there, likely copying data around. It takes a moment to fully degrade in performance, sometimes takes few minutes to fully degrade in performance. I can't pinpoint if it is due to a macOS upgrade (I think it started around 10.13.4) or Chrome upgrade, as I can't revert any of the two. :/ Workaround: - Unplugging two monitors, so that only one external display is used, fixes the problem. Keeping the HDMI one uses significantly more CPU than one over Thunderbolt. My other option I suspect is to get a new one, albeit the touchbar... so I'd like to see if there's a way to resolve this before. :) I know this is a very #firstworldproblem :) I'm reporting because I suspect this may hide a lower level regression in the way GPU resources are allocated for video encoding/decoding.
,
Jul 24
maruel@, could you repro with: https://appr.tc?debug=loopback and https://appr.tc?debug=loopback&vrc=H264&vsc=H264 this would help the WebRTC peeps debug if the codec (h264 is hardware accelerated on Mac) and/or the Hangouts use of the resources has something to do.
,
Jul 24
Both work great with relatively little kernel CPU use. So it looks like it's takes more than just a webrtc connection to reproduce the issue. I forgot to note but I don't think it's material to this issue: I'm using an external Logitech C920 webcam, not the laptop's webcam.
,
Jul 25
I know this may be painful but can you bisect this with the internal per-revision bisect script? https://sites.google.com/a/google.com/chrome-te/home/tools/bisect_builds This operates on official builds.
,
Jul 26
Thanks, will try to do it next week. Taking ownership in the meantime.
,
Jul 30
I'll mark as WontFix, as it's not just WebRTC that is slow, general Chrome browser windowing is sluggish even with low CPU utilization, so I think the fact that VC'ing is unbearable is only a side effect. I'll try to get a new laptop instead.
,
Jul 30
Sorry for the difficulty. For what it's worth ccameron@ and I have both noticed Chrome behaving poorly on these older NVIDIA based MacBook Pros when the discrete GPU is active. It looks like Chris just filed a bug about this so let me duplicate this into it for bookkeeping.
,
Jul 30
FTR, I'll be stuck with this laptop for several weeks as a replacement is not readily available.
,
Jul 30
Out of curiosity, does --disable-gpu-memory-buffer-compositor-resources fix it?
,
Jul 30
Trying. There's definitely something about Chrome browser lifetime as when I restart it it becomes much faster for a certain period of time, which makes debugging this issue more tricky.
,
Jul 30
It definitely increased CPU usage upon startup but I can't assess about jerkiness. Confirmed the flag is active in about:version. Will run with --disable-gpu-memory-buffer-compositor-resources and will report late tomorrow once I've done actual VCs and used it for a while.
,
Jul 30
Are these logs expected? ~/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --disable-gpu-memory-buffer-compositor-resources [9264:775:0730/135232.149667:ERROR:configuration_policy_handler_list.cc(91)] Unknown policy: NTPContentSuggestionsEnabled 2018-07-30 13:52:32.861 Google Chrome[9264:6382097] *** Owner supplied to -[NSTrackingArea initWithRect:options:owner:userInfo:] referenced a deallocating object. Tracking area behavior is undefined. Break on NSTrackingAreaDeallocatingOwnerError to debug. [9264:128003:0730/135238.309581:ERROR:external_policy_data_updater.cc(263)] The fetched data doesn't match the expected hash. [9264:775:0730/135241.932817:ERROR:location_bar_view_mac.mm(212)] Not implemented reached in virtual void LocationBarViewMac::UpdateFindBarIconVisibility() [9264:20739:0730/135242.826853:ERROR:service_manager_context.cc(250)] Attempting to run unsupported native service: /Applications/Google Chrome.app/Contents/Versions/68.0.3440.75/Google Chrome Framework.framework/Resources/chrome_renderer.service [9264:20739:0730/135242.828281:ERROR:service_manager_context.cc(250)] Attempting to run unsupported native service: /Applications/Google Chrome.app/Contents/Versions/68.0.3440.75/Google Chrome Framework.framework/Resources/chrome_renderer.service [9264:20739:0730/135242.830115:ERROR:service_manager_context.cc(250)] Attempting to run unsupported native service: /Applications/Google Chrome.app/Contents/Versions/68.0.3440.75/Google Chrome Framework.framework/Resources/chrome_renderer.service [9264:20739:0730/135242.830882:ERROR:service_manager_context.cc(250)] Attempting to run unsupported native service: /Applications/Google Chrome.app/Contents/Versions/68.0.3440.75/Google Chrome Framework.framework/Resources/chrome_renderer.service [9264:20739:0730/135242.836412:ERROR:service_manager_context.cc(250)] Attempting to run unsupported native service: /Applications/Google Chrome.app/Contents/Versions/68.0.3440.75/Google Chrome Framework.framework/Resources/chrome_renderer.service [9264:20739:0730/135242.837089:ERROR:service_manager_context.cc(250)] Attempting to run unsupported native service: /Applications/Google Chrome.app/Contents/Versions/68.0.3440.75/Google Chrome Framework.framework/Resources/chrome_renderer.service [9264:20739:0730/135242.943201:ERROR:service_manager_context.cc(250)] Attempting to run unsupported native service: /Applications/Google Chrome.app/Contents/Versions/68.0.3440.75/Google Chrome Framework.framework/Resources/chrome_renderer.service [9264:20739:0730/135242.944607:ERROR:service_manager_context.cc(250)] Attempting to run unsupported native service: /Applications/Google Chrome.app/Contents/Versions/68.0.3440.75/Google Chrome Framework.framework/Resources/chrome_renderer.service 2018-07-30 13:52:51.275 Google Chrome[9264:6382097] *** Owner supplied to -[NSTrackingArea initWithRect:options:owner:userInfo:] referenced a deallocating object. Tracking area behavior is undefined. Break on NSTrackingAreaDeallocatingOwnerError to debug. [9264:34819:0730/135252.761322:ERROR:binary_integrity_analyzer_mac.cc(28)] Could not initialize mac signature evaluator [9271:775:0730/135323.699507:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/135323.700297:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/135323.700623:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/135323.700993:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9317:80907:0730/135327.574800:ERROR:peerconnection.cc(4310)] channel label not found [9271:775:0730/135412.185073:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/135412.185193:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/135412.185329:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/135412.185523:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. 2018-07-30 13:54:13.356 Google Chrome Helper[9287:6382401] Couldn't set selectedTextBackgroundColor from default () [9271:775:0730/135422.202718:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/135422.202830:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/135422.202973:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/135422.203191:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/140001.464934:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/140001.466289:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/140001.466582:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/140001.467111:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/140013.602525:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/140013.602744:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/140013.602963:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/140013.603273:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/140014.702159:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/140014.702371:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/140014.702595:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/140014.702833:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/140014.703042:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/140014.703725:ERROR:gles2_cmd_decoder.cc(18008)] [.DisplayCompositor-0x7fb5051fd800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name [9271:775:0730/140014.704045:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. [9271:775:0730/140014.704280:ERROR:gles2_cmd_decoder.cc(10115)] [.DisplayCompositor-0x7fb5051fd800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
,
Jul 30
Yeah, it's issue 864905. |
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by mcasas@chromium.org
, Jul 24