New issue
Advanced search Search tips

Issue 898674 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug


Sign in to add a comment

WebglConformance_conformance_extensions_oes_texture_float_with_video flaky on NVIDIA Win Debug.

Project Member Reported by dalecur...@chromium.org, Oct 24

Issue description

gpu_tests.webgl_conformance_integration_test.WebGLConformanceIntegrationTest.WebglConformance_conformance_extensions_oes_texture_float_with_video failed unexpectedly 5.3150s:
  
  Traceback (most recent call last):
    _RunGpuTest at content\test\gpu\gpu_tests\gpu_integration_test.py:138
      self.RunActualGpuTest(url, *args)
    RunActualGpuTest at content\test\gpu\gpu_tests\webgl_conformance_integration_test.py:188
      getattr(self, test_name)(test_path, *args[1:])
    _RunConformanceTest at content\test\gpu\gpu_tests\webgl_conformance_integration_test.py:202
      self._CheckTestCompletion()
    _CheckTestCompletion at content\test\gpu\gpu_tests\webgl_conformance_integration_test.py:198
      self.fail(self._WebGLTestMessages(self.tab))
    fail at .swarming_module\bin\Lib\unittest\case.py:410
      raise self.failureException(msg)
  AssertionError: shouldBe 0,255,0
  at (4, 4) expected: 0,255,0 was 0,0,0
  
https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Win10%20Debug%20%28NVIDIA%29/9111

Seems to be the only failure, FindIt nor my own inspection of changelog reveal anything interesting. Next builds passed.
 
Blocking: 599272 891456 825338 750896
Components: Internals>Media>Video
Labels: -Pri-3 Pri-2
Status: Available (was: Untriaged)
The failure was this one:
https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Win10%20Debug%20%28NVIDIA%29/9111

This test has been found flaky in some other bugs (linked).

In this case, the failure seems to be in the VP9 decoding path; the decoded video frame is black.

  testing: video/mp4; codecs="avc1.42E01E, mp4a.40.2"
  requestAnimationFrame
  Testing texImage2D with flipY=true bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  Testing texImage2D with flipY=false bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  Testing texSubImage2D with flipY=true bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  Testing texSubImage2D with flipY=false bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  
  testing: video/webm; codecs="vp8, vorbis"
  Testing texImage2D with flipY=true bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  Testing texImage2D with flipY=false bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  Testing texSubImage2D with flipY=true bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  Testing texSubImage2D with flipY=false bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  
  testing: video/webm; codecs="vp9"
  Testing texImage2D with flipY=true bindingTarget=TEXTURE_2D
  Checking lower left corner
  FAIL shouldBe 0,255,0
  at (4, 4) expected: 0,255,0 was 0,0,0
  Checking upper left corner
  shouldBe 255,0,0
  at (4, 24) expected: 255,0,0 was 0,0,0
  FAIL shouldBe 255,0,0
  at (4, 24) expected: 255,0,0 was 0,0,0
  Testing texImage2D with flipY=false bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  Testing texSubImage2D with flipY=true bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner
  Testing texSubImage2D with flipY=false bindingTarget=TEXTURE_2D
  Checking lower left corner
  Checking upper left corner

Could there be synchronization errors in the software-decoded video path?

What GPU is this? It might have hardware vp9.
NVIDIA Quadro P400. Here's the GPU information from the beginning of the failing shard.


INFO:root:GPU device 0: VENDOR = 0x10de (Nvidia), DEVICE = 0x1cb3
INFO:root:GPU device 1: VENDOR = 0x102b, DEVICE = 0x534
INFO:root:GPU Attributes:
INFO:root:  amd_switchable      : False
INFO:root:  can_support_threaded_texture_mailbox: False
INFO:root:  direct_composition_overlays: False
INFO:root:  direct_rendering    : True
INFO:root:  dx12_feature_level  : 0
INFO:root:  encrypted_only      : False
INFO:root:  gl_extensions       : GL_ANGLE_client_arrays GL_ANGLE_depth_texture GL_ANGLE_explicit_context GL_ANGLE_explicit_context_gles1 GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_memory_size GL_ANGLE_multiview_multisample GL_ANGLE_pack_reverse_row_order GL_ANGLE_program_cache_control GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_color_buffer_float_rgb GL_CHROMIUM_color_buffer_float_rgba GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_frag_depth GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_bptc GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc_srgb GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_KHR_parallel_shader_compile GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_surfaceless_context GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object OES_compressed_EAC_R11_signed_texture OES_compressed_EAC_R11_unsigned_texture OES_compressed_EAC_RG11_signed_texture OES_compressed_EAC_RG11_unsigned_texture OES_compressed_ETC2_RGB8_texture OES_compressed_ETC2_RGBA8_texture OES_compressed_ETC2_punchthroughA_RGBA8_texture OES_compressed_ETC2_punchthroughA_sRGB8_alpha_texture OES_compressed_ETC2_sRGB8_alpha8_texture OES_compressed_ETC2_sRGB8_texture 
INFO:root:  gl_renderer         : ANGLE (NVIDIA Quadro P400 Direct3D11 vs_5_0 ps_5_0)
INFO:root:  gl_reset_notification_strategy: 33362
INFO:root:  gl_vendor           : Google Inc.
INFO:root:  gl_version          : OpenGL ES 2.0 (ANGLE 2.1.0.19603b9e7b20)
INFO:root:  gl_ws_extensions    : EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_ANGLE_direct_composition EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_CHROMIUM_sync_control EGL_EXT_pixel_format_float EGL_KHR_surfaceless_context EGL_ANGLE_display_texture_share_group EGL_ANGLE_create_context_client_arrays EGL_ANGLE_program_cache_control EGL_ANGLE_robust_resource_initialization EGL_ANGLE_create_context_extensions_enabled EGL_ANDROID_blob_cache 
INFO:root:  gl_ws_vendor        : Google Inc. (adapter LUID: 0000000000006519)
INFO:root:  gl_ws_version       : 1.4 (ANGLE 2.1.0.19603b9e7b20)
INFO:root:  in_process_gpu      : False
INFO:root:  initialization_time : 7.866346
INFO:root:  jpeg_decode_accelerator_supported: False
INFO:root:  max_framerate_denominator: 1
INFO:root:  max_framerate_numerator: 30
INFO:root:  max_msaa_samples    : 8
INFO:root:  max_resolution_height: 2176
INFO:root:  max_resolution_width: 3840
INFO:root:  min_resolution_height: 16
INFO:root:  min_resolution_width: 16
INFO:root:  oop_rasterization_supported: True
INFO:root:  optimus             : False
INFO:root:  passthrough_cmd_decoder: True
INFO:root:  pixel_shader_version: 5.0
INFO:root:  process_crash_count : 0
INFO:root:  profile             : 3
INFO:root:  sandboxed           : True
INFO:root:  software_rendering  : False
INFO:root:  supports_dx12       : False
INFO:root:  supports_vulkan     : False
INFO:root:  vertex_shader_version: 5.0
INFO:root:  video_decode_accelerator_flags: 0
INFO:root:  vulkan_version      : 0
INFO:root:Feature Status:
INFO:root:  2d_canvas           : enabled
INFO:root:  flash_3d            : enabled
INFO:root:  flash_stage3d       : enabled
INFO:root:  flash_stage3d_baseline: enabled
INFO:root:  gpu_compositing     : enabled
INFO:root:  multiple_raster_threads: enabled_on
INFO:root:  native_gpu_memory_buffers: disabled_software
INFO:root:  oop_rasterization   : disabled_off
INFO:root:  protected_video_decode: unavailable_off
INFO:root:  rasterization       : enabled
INFO:root:  skia_deferred_display_list: disabled_off
INFO:root:  skia_renderer       : disabled_off
INFO:root:  surface_control     : disabled_off
INFO:root:  surface_synchronization: enabled_on
INFO:root:  video_decode        : enabled
INFO:root:  viz_display_compositor: enabled_on
INFO:root:  webgl               : enabled
INFO:root:  webgl2              : enabled
INFO:root:Driver Bug Workarounds:
INFO:root:  clear_uniforms_before_first_program_use
INFO:root:  decode_encode_srgb_for_generatemipmap
INFO:root:  disable_delayed_copy_nv12
INFO:root:  disable_discard_framebuffer
INFO:root:  disable_framebuffer_cmaa
INFO:root:  exit_on_context_lost
INFO:root:  force_cube_complete
INFO:root:  scalarize_vec_and_mat_constructor_args
INFO:root:  disabled_extension__gl__khr_blend_equation_advanced
INFO:root:  disabled_extension__gl__khr_blend_equation_advanced_coherent
[
Description: Show this description
Cc: tmathmeyer@chromium.org liber...@chromium.org
Whoops, sorry about the wrong initial link -- everything's on fire today.

That could be hardware decode per:
https://developer.nvidia.com/video-encode-decode-gpu-support-matrix

... but per the logs it shouldn't be:
[196:7248:1024/134917.976:ERROR:gpu_video_decode_accelerator.cc(369)] HW video decode not available for profile vp9 profile0

So, yes seems like some sort of sync issue on the software path, but we shouldn't even be using GPU memory buffers here so upload happens in VideoResourceUpdater.

Sign in to add a comment