Slow WebGL and broken video playback
Reported by
thomasdh...@googlemail.com,
Dec 23 2016
|
||||||||
Issue description
Chrome Version : 55.0.2883.95 (64-bit) (OS X)
URLs (if applicable) :
https://threejs.org/examples/#webgl_geometries
https://twitter.com/tdhooper/status/812301715462586368/photo/1
Other browsers tested:
Safari: OK - 9.1.1 (11601.6.17) (OS X)
Firefox: OK - 50.1.0 (OS X)
Observe 4fps on https://threejs.org/examples/#webgl_geometries
Other browsers do 60fps
Observe full glitching over video playback on https://twitter.com/tdhooper/status/812301715462586368/photo/1
See screenshot
I've not been able to reproduce on macs with the same OS and Chrome versions, so I presume the issue is particular to this graphics card: NVIDIA GeForce 9600M GT 256 MB
,
Dec 26 2016
What kind of Mac has that Graphics card in it?
,
Dec 27 2016
Trying launching Chrome with a fresh profile and a different compositing path: """ /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --user-data-dir=/tmp/temptest --disable-webgl-image-chromium """ and let us know if you can reproduce this issue. Also please share the contents of "about://gpu"
,
Dec 29 2016
The model number is A1286
MacBook Pro (15-inch, Late 2008)
Still seeing both issues with fresh profile and different compositing path
chrome://gpu output:
Graphics Feature Status
Canvas: Hardware accelerated
Flash: Hardware accelerated
Flash Stage3D: Hardware accelerated
Flash Stage3D Baseline profile: Hardware accelerated
Compositing: Hardware accelerated
Multiple Raster Threads: Disabled
Native GpuMemoryBuffers: Hardware accelerated
Rasterization: Software only, hardware acceleration unavailable
Video Decode: Hardware accelerated
Video Encode: Hardware accelerated
VPx Video Decode: Hardware accelerated
WebGL: Hardware accelerated
Driver Bug Workarounds
disable_framebuffer_cmaa
disable_multimonitor_multisampling
force_discrete_gpu
get_frag_data_info_bug
needs_offscreen_buffer_workaround
pack_parameters_workaround_with_pack_buffer
regenerate_struct_names
scalarize_vec_and_mat_constructor_args
set_zero_level_before_generating_mipmap
unfold_short_circuit_as_ternary_operation
unpack_alignment_workaround_with_unpack_buffer
unpack_overlapping_rows_separately_unpack_buffer
use_intermediary_for_copy_texture_image
use_shadowed_tex_level_params
Problems Detected
Some GPUs on Mac can perform poorly with GPU rasterization. Disable all known NVidia GPUs other than the Geforce 6xx and 7xx series, which have been tested.: 613272, 614468
Disabled Features: gpu_rasterization
Work around a bug in offscreen buffers on NVIDIA GPUs on Macs: 89557
Applied Workarounds: needs_offscreen_buffer_workaround
Multisampling is buggy on OSX when multiple monitors are connected: 237931
Applied Workarounds: disable_multimonitor_multisampling
Unfold short circuit on Mac OS X: 307751
Applied Workarounds: unfold_short_circuit_as_ternary_operation
Force to use discrete GPU on older MacBookPro models: 113703
Applied Workarounds: force_discrete_gpu
Always rewrite vec/mat constructors to be consistent: 398694
Applied Workarounds: scalarize_vec_and_mat_constructor_args
Mac drivers handle struct scopes incorrectly: 403957
Applied Workarounds: regenerate_struct_names
glGenerateMipmap fails if the zero texture level is not set on some Mac drivers: 560499
Applied Workarounds: set_zero_level_before_generating_mipmap
Pack parameters work incorrectly with pack buffer bound: 563714
Applied Workarounds: pack_parameters_workaround_with_pack_buffer
Alignment works incorrectly with unpack buffer bound: 563714
Applied Workarounds: unpack_alignment_workaround_with_unpack_buffer
copyTexImage2D fails when reading from IOSurface on multiple GPU types.: 581777
Applied Workarounds: use_intermediary_for_copy_texture_image
Unpacking overlapping rows from unpack buffers is unstable on NVIDIA GL driver: 596774
Applied Workarounds: unpack_overlapping_rows_separately_unpack_buffer
Mac Drivers store texture level parameters on int16_t that overflow: 610153
Applied Workarounds: use_shadowed_tex_level_params
Limited enabling of Chromium GL_INTEL_framebuffer_CMAA: 535198
Applied Workarounds: disable_framebuffer_cmaa
glGetFragData{Location|Index} works incorrectly on Max: 638340
Applied Workarounds: get_frag_data_info_bug
Raster is using a single thread.
Disabled Features: multiple_raster_threads
Version Information
Data exported 12/29/2016, 11:51:22 AM
Chrome version Chrome/55.0.2883.95
Operating system Mac OS X 10.11.5
Software rendering list version 11.17
Driver bug list version 9.15
ANGLE commit id 4d208abb1926
2D graphics backend Skia/55 d1740f81c843c65acd58d1b571ce94b90fee99d0
Command Line Args Chrome.app/Contents/MacOS/Google Chrome --user-data-dir=/tmp/temptest --disable-webgl-image-chromium --flag-switches-begin --flag-switches-end
Driver Information
Initialization time 11
In-process GPU false
Sandboxed true
GPU0 VENDOR = 0x10de, DEVICE= 0x0647 *ACTIVE*
GPU1 VENDOR = 0x10de, DEVICE= 0x0863
Optimus false
AMD switchable false
Driver vendor
Driver version 10.0.48 310.90.10.05b12
Driver date
Pixel shader version 3.30
Vertex shader version 3.30
Max. MSAA samples 8
Machine model name MacBookPro
Machine model version 5.1
GL_VENDOR NVIDIA Corporation
GL_RENDERER NVIDIA GeForce 9600M GT OpenGL Engine
GL_VERSION 3.3 NVIDIA-10.0.48 310.90.10.05b12
GL_EXTENSIONS GL_ARB_blend_func_extended GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_instanced_arrays GL_ARB_internalformat_query GL_ARB_occlusion_query2 GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shading_language_include GL_ARB_texture_rgb10_a2ui GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_viewport_array GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_depth_bounds_test GL_EXT_framebuffer_multisample_blit_scaled GL_EXT_texture_compression_s3tc GL_EXT_texture_filter_anisotropic GL_EXT_texture_mirror_clamp GL_EXT_texture_sRGB_decode GL_APPLE_client_storage GL_APPLE_container_object_shareable GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_texture_range GL_ATI_texture_mirror_once GL_NV_texture_barrier
Disabled Extensions
Window system binding vendor
Window system binding version
Window system binding extensions
Direct rendering Yes
Reset notification strategy 0x0000
GPU process crash count 0
Compositor Information
Tile Update Mode Zero-copy
Partial Raster Enabled
GpuMemoryBuffers Status
ATC Software only
ATCIA Software only
DXT1 Software only
DXT5 Software only
ETC1 Software only
R_8 GPU_READ_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE_PERSISTENT
RG_88 Software only
BGR_565 Software only
RGBA_4444 Software only
RGBX_8888 Software only
RGBA_8888 GPU_READ, SCANOUT
BGRX_8888 GPU_READ, SCANOUT
BGRA_8888 GPU_READ, SCANOUT, GPU_READ_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE_PERSISTENT
YVU_420 Software only
YUV_420_BIPLANAR GPU_READ_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE_PERSISTENT
UYVY_422 GPU_READ_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE_PERSISTENT
Log Messages
[2141:1295:1229/115013:ERROR:gles2_cmd_decoder.cc(16349)] : [.DisplayCompositor-0x7f9cd9395800]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[2141:1295:1229/115013:ERROR:gles2_cmd_decoder.cc(9063)] : [.DisplayCompositor-0x7f9cd9395800]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[2141:1295:1229/115116:ERROR:gles2_cmd_decoder.cc(16349)] : [.DisplayCompositor-0x7f9cd8c54c00]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[2141:1295:1229/115116:ERROR:gles2_cmd_decoder.cc(9063)] : [.DisplayCompositor-0x7f9cd8c54c00]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
,
Jan 4 2017
I'm sorry, but this Mac is so old that we don't even have one in the office to test with. Please consider upgrading; newer machines will surely work much better.
,
Jan 11 2017
Thank you for providing more feedback. Adding requester "erikchen@chromium.org" for another review and adding "Needs-Review" label for tracking. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jan 11 2017
This is the same problem as Issue 676975 . Once the suppression for that bug has landed, I'll expand it to cover these NVIDIA GPUS (device IDs 0x0647 and 0x0863).
,
Jan 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6c75f8a31994a80d6e0b36d27d8885c9ca5d607a commit 6c75f8a31994a80d6e0b36d27d8885c9ca5d607a Author: kbr <kbr@chromium.org> Date: Thu Jan 12 04:00:26 2017 Blacklist GPU usage on more old NVIDIA GPUs on macOS. BUG= 676829 CQ_INCLUDE_TRYBOTS=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 Review-Url: https://codereview.chromium.org/2629513002 Cr-Commit-Position: refs/heads/master@{#443147} [modify] https://crrev.com/6c75f8a31994a80d6e0b36d27d8885c9ca5d607a/gpu/config/software_rendering_list_json.cc
,
Jan 13 2017
,
Jan 13 2017
,
Jan 16 2017
Thank you for looking into this further, kbr. The workaround you suggested on the related issue (https://bugs.chromium.org/p/chromium/issues/detail?id=672998#c25) also fixes my issues. |
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by hdodda@chromium.org
, Dec 26 2016Labels: TE-NeedsTriageFromMTV