見出し画像

chrome のアドレスバーに chrome://gpu と入力すると・・・

chrome目線のgpuが見えます。


どんな値が見えてるのでしょうか。
Graphics Feature Status

  • Canvas: Hardware accelerated

  • Canvas out-of-process rasterization: Disabled

  • Direct Rendering Display Compositor: Disabled

  • Compositing: Hardware accelerated

  • Multiple Raster Threads: Enabled

  • OpenGL: Enabled

  • Rasterization: Unavailable

  • Raw Draw: Disabled

  • Video Decode: Hardware accelerated

  • Video Encode: Hardware accelerated

  • Vulkan: Disabled

  • WebGL: Hardware accelerated

  • WebGL2: Hardware accelerated

  • WebGPU: Hardware accelerated

Driver Bug Workarounds

  • adjust_src_dst_region_for_blitframebuffer

  • clamp_texture_base_level_and_max_level

  • decode_encode_srgb_for_generatemipmap

  • disable_2d_canvas_auto_flush

  • dont_use_loops_to_initialize_variables

  • enable_webgl_timer_query_extensions

  • flush_on_framebuffer_change

  • force_enable_color_buffer_float

  • get_frag_data_info_bug

  • pack_parameters_workaround_with_pack_buffer

  • regenerate_struct_names

  • remove_dynamic_indexing_of_swizzled_vector

  • remove_invariant_and_centroid_for_essl3

  • set_zero_level_before_generating_mipmap

  • unfold_short_circuit_as_ternary_operation

  • unpack_alignment_workaround_with_unpack_buffer

  • use_intermediary_for_copy_texture_image

  • use_unused_standard_shared_blocks

  • disabled_extension_GL_KHR_blend_equation_advanced

  • disabled_extension_GL_KHR_blend_equation_advanced_coherent

  • disabled_extension_GL_MESA_framebuffer_flip_y

Problems Detected

  • Some GPUs on Mac can perform poorly with GPU rasterization. Disable all known Intel GPUs other than Intel 6th and 7th Generation cards, which have been tested.: 613272, 614468
    Disabled Features: gpu_rasterization

  • Some GPUs on Mac can perform poorly with GPU rasterization. Disable all known AMD GPUs other than the R200, R300, and D series, which have been tested.: 613272, 614468
    Disabled Features: gpu_rasterization

  • Unfold short circuit on Mac OS X: 307751
    Applied Workarounds: unfold_short_circuit_as_ternary_operation

  • 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

  • glGetFragData{Location|Index} works incorrectly on Max: 638340
    Applied Workarounds: get_frag_data_info_bug

  • Decode and encode before generateMipmap for srgb format textures on macosx: 634519
    Applied Workarounds: decode_encode_srgb_for_generatemipmap

  • Insert statements to reference all members in unused std140/shared blocks on Mac: 618464
    Applied Workarounds: use_unused_standard_shared_blocks

  • adjust src/dst region if blitting pixels outside framebuffer on Mac: 644740
    Applied Workarounds: adjust_src_dst_region_for_blitframebuffer

  • Mac driver GL 4.1 requires invariant and centroid to match between shaders: 639760, 641129
    Applied Workarounds: remove_invariant_and_centroid_for_essl3

  • Disable KHR_blend_equation_advanced until cc shaders are updated: 661715
    Applied Workarounds: disable(GL_KHR_blend_equation_advanced), disable(GL_KHR_blend_equation_advanced_coherent)

  • Switching framebuffers without a flush can lead to crashes on Intel 9th Generation GPU Macs.: 783979
    Applied Workarounds: flush_on_framebuffer_change

  • Expose WebGL's disjoint_timer_query extensions on platforms with site isolation: 808744, 870491
    Applied Workarounds: enable_webgl_timer_query_extensions

  • Shader variable initialization in a loop caused perf regression on Mac Intel.: 809422
    Applied Workarounds: dont_use_loops_to_initialize_variables

  • glFlush error on Mac: 841755
    Applied Workarounds: disable_2d_canvas_auto_flush

  • Clamp texture's BASE_LEVEL/MAX_LEVEL for GenerateMipmap: 913301
    Applied Workarounds: clamp_texture_base_level_and_max_level

  • Disable GL_MESA_framebuffer_flip_y for desktop GL: 964010
    Applied Workarounds: disable(GL_MESA_framebuffer_flip_y)

  • Remove dynamic indexing for swizzled vectors on Mac: 709351
    Applied Workarounds: remove_dynamic_indexing_of_swizzled_vector

  • Always assume float formats are renderable on Mac AMD: 1127387
    Applied Workarounds: force_enable_color_buffer_float

ANGLE Features

  • allowCompressedFormats (Frontend workarounds): Enabled: true
    Allow compressed formats

  • cacheCompiledShader (Frontend features) anglebug:7036: Disabled
    Enable to cache compiled shaders

  • disableAnisotropicFiltering (Frontend workarounds): Disabled
    Disable support for anisotropic filtering

  • disableDrawBuffersIndexed (Frontend features) anglebug:7724: Disabled
    Disable support for OES_draw_buffers_indexed and EXT_draw_buffers_indexed

  • disableProgramBinary (Frontend features) anglebug:5007: Disabled: IsPowerVrRogue(functions)
    Disable support for GL_OES_get_program_binary

  • disableProgramCachingForTransformFeedback (Frontend workarounds): Disabled: IsAndroid() && isQualcomm
    On some GPUs, program binaries don't contain transform feedback varyings

  • dumpShaderSource (Frontend features) anglebug:7760: Disabled
    Write shader source to temp directory

  • emulatePixelLocalStorage (Frontend features) anglebug:7279: Disabled: false
    Emulate ANGLE_shader_pixel_local_storage using shader images

  • enableCaptureLimits (Frontend features) anglebug:5750: Disabled
    Set the context limits like frame capturing was enabled

  • enableProgramBinaryForCapture (Frontend features) anglebug:5658: Disabled
    Even if FrameCapture is enabled, enable GL_OES_get_program_binary

  • enableShaderSubstitution (Frontend workarounds) anglebug:7761: Disabled
    Check the filesystem for shaders to use instead of those provided through glShaderSource

  • forceDepthAttachmentInitOnClear (Frontend workarounds) anglebug:7246: Disabled
    Force depth attachment initialization on clear ops

  • forceGlErrorChecking (Frontend features) https://issuetracker.google.com/220069903: Disabled
    Force GL error checking (i.e. prevent applications from disabling error checking

  • forceInitShaderVariables (Frontend features): Disabled
    Force-enable shader variable initialization

  • forceRobustResourceInit (Frontend features) anglebug:6041: Disabled
    Force-enable robust resource init

  • loseContextOnOutOfMemory (Frontend workarounds): Enabled: true
    Some users rely on a lost context notification if a GL_OUT_OF_MEMORY error occurs

  • scalarizeVecAndMatConstructorArgs (Frontend workarounds) 1165751: Disabled: false
    Always rewrite vec/mat constructors to be consistent

  • singleThreadedTextureDecompression (Frontend workarounds): Disabled
    Disables multi-threaded decompression of compressed texture formats

  • RGBA4IsNotSupportedForColorRendering (OpenGL workarounds): Disabled: functions->standard == STANDARD_GL_DESKTOP && isIntel
    GL_RGBA4 is not color renderable

  • RGBDXT1TexturesSampleZeroAlpha (OpenGL workarounds) anglebug:3729: Enabled: IsApple()
    Sampling BLACK texels from RGB DXT1 textures returns transparent black on Mac.

  • addAndTrueToLoopCondition (OpenGL workarounds): Disabled: IsApple() && isIntel
    Calculation of loop conditions in for and while loop has bug

  • adjustSrcDstRegionForBlitFramebuffer (OpenGL workarounds) 830046: Disabled: IsLinux() || (IsAndroid() && isNvidia) || (IsWindows() && isNvidia) || (IsApple() && functions->standard == STANDARD_GL_ES)
    Many platforms have issues with blitFramebuffer when the parameters are large.

  • allowAstcFormats (OpenGL workarounds): Enabled: !isMesa || isIntel && (Is9thGenIntel(device) || IsGeminiLake(device) || IsCoffeeLake(device) || Is11thGenIntel(device) || Is12thGenIntel(device))
    Enable ASTC on desktop OpenGL

  • allowClearForRobustResourceInit (OpenGL workarounds) 848952: Enabled: IsApple()
    Using glClear for robust resource initialization is buggy on some drivers and leads to texture corruption. Default to data uploads except on MacOS where it is very slow.

  • allowETCFormats (OpenGL workarounds): Disabled: isIntel && !IsSandyBridge(device) && !IsIvyBridge(device) && !IsHaswell(device)
    Enable ETC2/EAC on desktop OpenGL

  • alwaysCallUseProgramAfterLink (OpenGL workarounds) 110263: Enabled: true
    Always call useProgram after a successful link to avoid a driver bug

  • alwaysUnbindFramebufferTexture2D (OpenGL workarounds) anglebug:5536: Disabled: isNvidia && (IsWindows() || IsLinux())
    Force unbind framebufferTexture2D before binding renderbuffer to work around driver bug.

  • avoid1BitAlphaTextureFormats (OpenGL workarounds): Enabled: functions->standard == STANDARD_GL_DESKTOP && isAMD
    Issue with 1-bit alpha framebuffer formats

  • bindTransformFeedbackBufferBeforeBindBufferRange (OpenGL workarounds) anglebug:5140: Enabled: IsApple()
    Bind transform feedback buffers to the generic binding point before calling glBindBufferBase or glBindBufferRange.

  • clampArrayAccess (OpenGL workarounds) anglebug:2978: Enabled: IsAndroid() || isAMD || !functions->hasExtension("GL_KHR_robust_buffer_access_behavior")
    Clamp uniform array access to avoid reading invalid memory.

  • clampFragDepth (OpenGL workarounds): Disabled: isNvidia
    gl_FragDepth is not clamped correctly when rendering to a floating point depth buffer

  • clampMscRate (OpenGL workarounds) 1042393: Disabled: IsLinux() && IsWayland()
    Some drivers return bogus values for GetMscRate, so we clamp it to 30Hz

  • clampPointSize (OpenGL workarounds): Disabled: IsAndroid() || isNvidia
    The point size range reported from the API is inconsistent with the actual behavior

  • clearToZeroOrOneBroken (OpenGL workarounds) 710443: Disabled: IsApple() && isIntel && GetMacOSVersion() < OSVersion(10, 12, 6)
    Clears when the clear color is all zeros or ones do not work.

  • clipSrcRegionForBlitFramebuffer (OpenGL workarounds) 830046: Enabled: IsApple() || (IsLinux() && isAMD)
    Issues with blitFramebuffer when the parameters don't match the framebuffer size.

  • decodeEncodeSRGBForGenerateMipmap (OpenGL workarounds) anglebug:4646: Enabled: IsApple()
    Decode and encode before generateMipmap for srgb format textures.

  • disableBlendFuncExtended (OpenGL workarounds) anglebug:1085: Enabled: isAMD || isIntel
    ARB_blend_func_extended does not pass the tests

  • disableDrawBuffersIndexed (OpenGL workarounds): Disabled: IsWindows() && isAMD
    Disable OES_draw_buffers_indexed extension.

  • disableGPUSwitchingSupport (OpenGL workarounds) 1091824: Disabled: isDualGPUMacWithNVIDIA
    Disable GPU switching support (use only the low-power GPU) on older MacBook Pros.

  • disableMultisampledRenderToTexture (OpenGL workarounds) anglebug:2894: Disabled: isAdreno4xxOnAndroidLessThan51 || isAdreno4xxOnAndroid70 || isAdreno5xxOnAndroidLessThan70 || isAdreno5xxOnAndroid71 || isLinuxVivante
    Many drivers have bugs when using GL_EXT_multisampled_render_to_texture

  • disableNativeParallelCompile (OpenGL workarounds) 1094869: Disabled: isTSANBuild && IsLinux() && isNvidia
    Do not use native KHR_parallel_shader_compile even when available.

  • disableSemaphoreFd (OpenGL workarounds) 1046462: Disabled: IsLinux() && isAMD && isMesa && mesaVersion < (std::array<int, 3>{19, 3, 5})
    Disable GL_EXT_semaphore_fd extension

  • disableSyncControlSupport (OpenGL workarounds) 1137851: Disabled: IsLinux() && isIntel && isMesa && mesaVersion[0] == 20
    Speculative fix for issues on Linux/Wayland where exposing GLX_OML_sync_control renders Chrome unusable

  • disableTextureClampToBorder (OpenGL workarounds) anglebug:7405: Disabled: isImagination
    Imagination devices generate INVALID_ENUM when setting the texture border color.

  • disableTimestampQueries (OpenGL workarounds) 811661: Disabled: (IsLinux() && isVMWare) || (IsAndroid() && isNvidia) || (IsAndroid() && GetAndroidSdkLevel() < 27 && IsAdreno5xxOrOlder(functions)) || (IsAndroid() && IsMaliT8xxOrOlder(functions)) || (IsAndroid() && IsMaliG31OrOlder(functions))
    Disable GL_EXT_disjoint_timer_query extension

  • disableWorkerContexts (OpenGL workarounds) 849576: Disabled: (IsWindows() && (isIntel || isAMD)) || (IsLinux() && isNvidia) || IsIOS() || IsAndroid() || IsAndroidEmulator(functions)
    Some tests have been seen to fail using worker contexts

  • doWhileGLSLCausesGPUHang (OpenGL workarounds) 644669: Disabled: IsApple() && functions->standard == STANDARD_GL_DESKTOP && GetMacOSVersion() < OSVersion(10, 11, 0)
    Some GLSL constructs involving do-while loops cause GPU hangs

  • doesSRGBClearsOnLinearFramebufferAttachments (OpenGL workarounds): Enabled: isIntel || isAMD
    Issue clearing framebuffers with linear attachments when GL_FRAMEBUFFER_SRGB is enabled

  • dontInitializeUninitializedLocals (OpenGL workarounds) anglebug:2046: Disabled: IsAndroid() && isQualcomm
    Initializing uninitialized locals caused odd behavior in a few WebGL 2 tests

  • dontRelinkProgramsInParallel (OpenGL workarounds) anglebug:3045: Disabled: IsAndroid() || (IsWindows() && isIntel)
    Relinking a program in parallel is buggy

  • dontUseLoopsToInitializeVariables (OpenGL workarounds) 809422: Disabled: (IsAndroid() && isQualcomm) || (isIntel && IsApple())
    For loops used to initialize variables hit native GLSL compiler bugs

  • emulateAbsIntFunction (OpenGL workarounds) 642227: Disabled: IsApple() && isIntel
    abs(i) where i is an integer returns unexpected result

  • emulateAtan2Float (OpenGL workarounds) 672380: Disabled: isNvidia
    atan(y, x) may return a wrong answer

  • emulateClipDistanceState (OpenGL workarounds): Disabled: isQualcomm
    Some drivers ignore GL_CLIP_DISTANCEi_EXT state.

  • emulateCopyTexImage2D (OpenGL workarounds): Disabled: isApple
    Replace CopyTexImage2D with TexImage2D + CopyTexSubImage2D.

  • emulateCopyTexImage2DFromRenderbuffers (OpenGL workarounds) anglebug:4674: Disabled: IsApple() && functions->standard == STANDARD_GL_ES && !(isAMD && IsWindows())
    CopyTexImage2D spuriously returns errors on iOS when copying from renderbuffers.

  • emulateImmutableCompressedTexture3D (OpenGL workarounds) 1060012: Disabled: isQualcomm
    Use non-immutable texture allocation to work around a driver bug.

  • emulateIsnanFloat (OpenGL workarounds) 650547: Disabled: isIntel && IsApple() && IsSkylake(device) && GetMacOSVersion() < OSVersion(10, 13, 2)
    Using isnan() on highp float will get wrong answer

  • emulateMaxVertexAttribStride (OpenGL workarounds) anglebug:1936: Disabled: IsLinux() && functions->standard == STANDARD_GL_DESKTOP && isAMD
    Some drivers return 0 when MAX_VERTEX_ATTRIB_STRIED queried

  • emulatePackSkipRowsAndPackSkipPixels (OpenGL workarounds) anglebug:4849: Enabled: IsApple()
    GL_PACK_SKIP_ROWS and GL_PACK_SKIP_PIXELS are ignored in Apple's OpenGL driver.

  • emulatePrimitiveRestartFixedIndex (OpenGL workarounds) anglebug:3997: Enabled: functions->standard == STANDARD_GL_DESKTOP && functions->isAtLeastGL(gl::Version(3, 1)) && !functions->isAtLeastGL(gl::Version(4, 3))
    When GL_PRIMITIVE_RESTART_FIXED_INDEX is not available, emulate it with GL_PRIMITIVE_RESTART and glPrimitiveRestartIndex.

  • emulateRGB10 (OpenGL workarounds) 1300575: Enabled: functions->standard == STANDARD_GL_DESKTOP
    Emulate RGB10 support using RGB10_A2.

  • finishDoesNotCauseQueriesToBeAvailable (OpenGL workarounds): Disabled: functions->standard == STANDARD_GL_DESKTOP && isNvidia
    glFinish doesn't cause all queries to report available result

  • flushBeforeDeleteTextureIfCopiedTo (OpenGL workarounds) anglebug:4267: Disabled: IsApple() && isIntel
    Some drivers track CopyTex{Sub}Image texture dependencies incorrectly. Flush before glDeleteTextures in this case

  • flushOnFramebufferChange (OpenGL workarounds) 1181068: Enabled: IsApple() && Has9thGenIntelGPU(systemInfo)
    Switching framebuffers without a flush can lead to crashes on Intel 9th Generation GPU Macs.

  • initFragmentOutputVariables (OpenGL workarounds) 1171371: Disabled: IsAdreno42xOr3xx(functions)
    No init gl_FragColor causes context lost

  • initializeCurrentVertexAttributes (OpenGL workarounds): Disabled: isNvidia
    During initialization, assign the current vertex attributes to the spec-mandated defaults

  • keepBufferShadowCopy (OpenGL workarounds): Disabled: !CanMapBufferForRead(functions)
    Maintain a shadow copy of buffer data when the GL API does not permit reading data back.

  • limitMax3dArrayTextureSizeTo1024 (OpenGL workarounds) 927470: Disabled: limitMaxTextureSize
    Limit max 3d texture size and max array texture layers to 1024 to avoid system hang

  • limitMaxMSAASamplesTo4 (OpenGL workarounds) 797243: Enabled: IsAndroid() || (IsApple() && (isIntel || isAMD || isNvidia))
    Various rendering bugs have been observed when using higher MSAA counts

  • limitWebglMaxTextureSizeTo4096 (OpenGL workarounds) 927470: Disabled: IsAndroid() || limitMaxTextureSize
    Limit webgl max texture size to 4096 to avoid frequent out-of-memory errors

  • packLastRowSeparatelyForPaddingInclusion (OpenGL workarounds) anglebug:1512: Enabled: IsApple() || isNvidia
    When uploading textures from an pack buffer, some drivers count an extra row padding

  • packOverlappingRowsSeparatelyPackBuffer (OpenGL workarounds): Disabled: isNvidia
    In the case of packing to a pixel pack buffer, pack overlapping rows row by row

  • passHighpToPackUnormSnormBuiltins (OpenGL workarounds) anglebug:7527: Disabled: isQualcomm
    packUnorm4x8 fails on Pixel 4 if it is not passed a highp vec4.

  • preAddTexelFetchOffsets (OpenGL workarounds) 642605: Disabled: IsApple() && isIntel
    Intel Mac drivers mistakenly consider the parameter position of nagative vaule as invalid even if the sum of position and offset is in range, so we need to add workarounds by rewriting texelFetchOffset(sampler, position, lod, offset) into texelFetch(sampler, position + offset, lod).

  • promotePackedFormatsTo8BitPerChannel (OpenGL workarounds) anglebug:5469: Enabled: IsApple() && hasAMD
    Packed color formats are buggy on Macs with AMD GPUs

  • queryCounterBitsGeneratesErrors (OpenGL workarounds) anglebug:3027: Disabled: IsNexus5X(vendor, device)
    Drivers generate errors when querying the number of bits in timer queries

  • readPixelsUsingImplementationColorReadFormatForNorm16 (OpenGL workarounds) anglebug:4214: Disabled: !isIntel && functions->standard == STANDARD_GL_ES && functions->isAtLeastGLES(gl::Version(3, 1)) && functions->hasGLESExtension("GL_EXT_texture_norm16")
    Quite some OpenGL ES drivers don't implement readPixels for RGBA/UNSIGNED_SHORT from EXT_texture_norm16 correctly

  • reapplyUBOBindingsAfterUsingBinaryProgram (OpenGL workarounds) anglebug:1637: Enabled: isAMD || IsAndroid()
    Some drivers forget about UBO bindings when using program binaries

  • regenerateStructNames (OpenGL workarounds) 403957: Enabled: IsApple()
    All Mac drivers do not handle struct scopes correctly. This workaround overwrites a structname with a unique prefix.

  • removeDynamicIndexingOfSwizzledVector (OpenGL workarounds) 709351: Enabled: IsApple() || IsAndroid() || IsWindows()
    Dynamic indexing of swizzled l-values doesn't work correctly on various platforms.

  • removeInvariantAndCentroidForESSL3 (OpenGL workarounds): Enabled: functions->isAtMostGL(gl::Version(4, 1)) || (functions->standard == STANDARD_GL_DESKTOP && isAMD)
    Fix spec difference between GLSL 4.1 or lower and ESSL3

  • resetTexImage2DBaseLevel (OpenGL workarounds) 705865: Disabled: IsApple() && isIntel && GetMacOSVersion() >= OSVersion(10, 12, 4)
    Reset texture base level before calling glTexImage2D to work around pixel comparison failure.

  • rewriteFloatUnaryMinusOperator (OpenGL workarounds) 308366: Disabled: IsApple() && isIntel && GetMacOSVersion() < OSVersion(10, 12, 0)
    Using '-<float>' will get wrong answer

  • rewriteRepeatedAssignToSwizzled (OpenGL workarounds): Disabled: isNvidia
    Repeated assignment to swizzled values inside a GLSL user-defined function have incorrect results

  • rewriteRowMajorMatrices (OpenGL workarounds) anglebug:2273: Disabled: false
    Rewrite row major matrices in shaders as column major as a driver bug workaround

  • sanitizeAMDGPURendererString (OpenGL workarounds) 1181193: Disabled: IsLinux() && hasAMD
    Strip precise kernel and DRM version information from amdgpu renderer strings.

  • setPrimitiveRestartFixedIndexForDrawArrays (OpenGL workarounds) anglebug:3997: Disabled: features->emulatePrimitiveRestartFixedIndex.enabled && IsApple() && isIntel
    Some drivers discard vertex data in DrawArrays calls when the fixed primitive restart index is within the number of primitives being drawn.

  • setZeroLevelBeforeGenerateMipmap (OpenGL workarounds): Enabled: IsApple()
    glGenerateMipmap fails if the zero texture level is not set on some Mac drivers.

  • shiftInstancedArrayDataWithOffset (OpenGL workarounds) 1144207: Disabled: IsApple() && IsIntel(vendor) && !IsHaswell(device)
    glDrawArraysInstanced is buggy on certain new Mac Intel GPUs

  • supportsFragmentShaderInterlockARB (OpenGL features) anglebug:7279: Disabled: functions->isAtLeastGL(gl::Version(4, 5)) && functions->hasGLExtension("GL_ARB_fragment_shader_interlock")
    Backend GL context supports ARB_fragment_shader_interlock extension

  • supportsFragmentShaderInterlockNV (OpenGL features) anglebug:7279: Disabled: functions->isAtLeastGL(gl::Version(4, 3)) && functions->hasGLExtension("GL_NV_fragment_shader_interlock")
    Backend GL context supports NV_fragment_shader_interlock extension

  • supportsFragmentShaderOrderingINTEL (OpenGL features) anglebug:7279: Disabled: functions->isAtLeastGL(gl::Version(4, 4)) && functions->hasGLExtension("GL_INTEL_fragment_shader_ordering")
    Backend GL context supports GL_INTEL_fragment_shader_ordering extension

  • supportsShaderFramebufferFetchEXT (OpenGL features) anglebug:7279: Disabled: functions->hasGLESExtension("GL_EXT_shader_framebuffer_fetch")
    Backend GL context supports EXT_shader_framebuffer_fetch extension

  • supportsShaderFramebufferFetchNonCoherentEXT (OpenGL features) anglebug:7279: Disabled: functions->hasGLESExtension("GL_EXT_shader_framebuffer_fetch_non_coherent")
    Backend GL context supports EXT_shader_framebuffer_fetch_non_coherent extension

  • supportsShaderPixelLocalStorageEXT (OpenGL features) anglebug:7279: Disabled: functions->hasGLESExtension("GL_EXT_shader_pixel_local_storage")
    Backend GL context supports EXT_shader_pixel_local_storage extension

  • syncVertexArraysToDefault (OpenGL workarounds) anglebug:5577: Disabled: !nativegl::SupportsVertexArrayObjects(functions)
    Only use the default VAO because of missing support or driver bugs

  • unbindFBOBeforeSwitchingContext (OpenGL workarounds) 1181193: Disabled: IsPowerVR(vendor)
    Imagination GL drivers are buggy with context switching.

  • unfoldShortCircuits (OpenGL workarounds) anglebug:482: Enabled: IsApple()
    Mac incorrectly executes both sides of && and || expressions when they should short-circuit.

  • unpackLastRowSeparatelyForPaddingInclusion (OpenGL workarounds) anglebug:1512: Enabled: IsApple() || isNvidia
    When uploading textures from an unpack buffer, some drivers count an extra row padding

  • unpackOverlappingRowsSeparatelyUnpackBuffer (OpenGL workarounds): Disabled: isNvidia
    In the case of unpacking from a pixel unpack buffer, unpack overlapping rows row by row

  • unsizedSRGBReadPixelsDoesntTransform (OpenGL workarounds) 550292: Disabled: IsAndroid() && isQualcomm
    Drivers returning raw sRGB values instead of linearized values when calling glReadPixels on unsized sRGB texture formats

  • uploadTextureDataInChunks (OpenGL workarounds) 1181068: Enabled: IsApple()
    Upload texture data in <120kb chunks to work around Mac driver hangs and crashes.

  • useUnusedBlocksWithStandardOrSharedLayout (OpenGL workarounds): Enabled: (IsApple() && functions->standard == STANDARD_GL_DESKTOP) || (IsLinux() && isAMD)
    Unused std140 or shared uniform blocks will be treated as inactive

  • vertexIDDoesNotIncludeBaseVertex (OpenGL workarounds): Enabled: IsApple() && isAMD
    gl_VertexID in GLSL vertex shader doesn't include base vertex value

DAWN Info


  • <Discrete GPU> Metal backend - AMD Radeon R9 M395
    [Default Toggle Names]

  • always_resolve_into_zero_level_and_layer: https://crbug.com/dawn/56: When the resolve target is a texture view that is created on the non-zero level or layer of a texture, we first resolve into a temporarily 2D texture with only one mipmap level and one array layer, and copy the result of MSAA resolve into the true resolve target. This workaround is enabled by default on the Metal drivers that have bugs when setting non-zero resolveLevel or resolveSlice. It is also enabled by default on Qualcomm Vulkan drivers, which have similar bugs.

  • lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource.

  • metal_enable_vertex_pulling: https://crbug.com/dawn/480: Uses vertex pulling to protect out-of-bounds reads on Metal

  • disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet.

  • metal_use_combined_depth_stencil_format_for_stencil8: https://crbug.com/dawn/1389: Use a combined depth stencil format instead of stencil8. Works around an issue where the stencil8 format alone does not work correctly. This toggle also causes depth stencil attachments using a stencil8 format to also set the depth attachment in the Metal render pass. This works around another issue where Metal fails to set the stencil attachment correctly for a combined depth stencil format if the depth attachment is not also set.

  • metal_use_both_depth_and_stencil_attachments_for_combined_depth_stencil_formats: https://crbug.com/dawn/1389: In Metal, depth and stencil attachments are set separately. Setting just one without the other does not work correctly for combined depth stencil formats on some Metal drivers. This workarounds ensures that both are set. This situation arises during lazy clears, or for stencil8 formats if metal_use_combined_depth_stencil_format_for_stencil8 is also enabled.

  • [WebGPU Forced Toggles - enabled]

  • disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules. This is useful to prevent a Chromium renderer process from successfully sending SPIR-V code to be compiled in the GPU process.

  • [Supported Features]

  • texture-compression-bc

  • pipeline-statistics-query

  • depth-clip-control

  • depth32float-stencil8

  • indirect-first-instance

  • shader-f16

  • rg11b10ufloat-renderable

  • dawn-internal-usages

  • multiplanar-formats

  • dawn-native


  • <CPU> Vulkan backend - SwiftShader Device (Subzero)
    [Default Toggle Names]

  • lazy_clear_resource_on_first_use: https://crbug.com/dawn/145: Clears resource to zero on first usage. This initializes the resource so that no dirty bits from recycled memory is present in the new resource.

  • use_temporary_buffer_in_texture_to_texture_copy: https://crbug.com/dawn/42: Split texture-to-texture copy into two copies: copy from source texture into a temporary buffer, and copy from the temporary buffer into the destination texture when copying between compressed textures that don't have block-aligned sizes. This workaround is enabled by default on all Vulkan drivers to solve an issue in the Vulkan SPEC about the texture-to-texture copies with compressed formats. See #1005 (https://github.com/KhronosGroup/Vulkan-Docs/issues/1005) for more details.

  • vulkan_use_d32s8: https://crbug.com/dawn/286: Vulkan mandates support of either D32_FLOAT_S8 or D24_UNORM_S8. When available the backend will use D32S8 (toggle to on) but setting the toggle to off will make it use the D24S8 format when possible.

  • vulkan_use_s8: https://crbug.com/dawn/666: Vulkan has a pure stencil8 format but it is not universally available. When this toggle is on, the backend will use S8 for the stencil8 format, otherwise it will fallback to D32S8 or D24S8.

  • disallow_unsafe_apis: http://crbug.com/1138528: Produces validation errors on API entry points or parameter combinations that aren't considered secure yet.

  • use_vulkan_zero_initialize_workgroup_memory_extension: https://crbug.com/dawn/1302: Initialize workgroup memory with OpConstantNull on Vulkan when the Vulkan extension VK_KHR_zero_initialize_workgroup_memory is supported.

  • [WebGPU Forced Toggles - enabled]

  • disallow_spirv: https://crbug.com/1214923: Disallow usage of SPIR-V completely so that only WGSL is used for shader modules. This is useful to prevent a Chromium renderer process from successfully sending SPIR-V code to be compiled in the GPU process.

  • [Supported Features]

  • texture-compression-bc

  • texture-compression-etc2

  • texture-compression-astc

  • timestamp-query

  • timestamp-query-inside-passes

  • depth-clip-control

  • depth32float-stencil8

  • indirect-first-instance

  • rg11b10ufloat-renderable

  • dawn-internal-usages

  • dawn-native

Version Information

Data exported

2023-03-11T16:14:52.828Z

Chrome version

Chrome/111.0.5563.64

Operating system

Mac OS X 10.15.6

Software rendering list URL

https://chromium.googlesource.com/chromium/src/+/c710e93d5b63b7095afe8c2c17df34408078439d/gpu/config/software_rendering_list.json

Driver bug list URL

https://chromium.googlesource.com/chromium/src/+/c710e93d5b63b7095afe8c2c17df34408078439d/gpu/config/gpu_driver_bug_list.json

ANGLE commit id

cd45d155bf4c

2D graphics backend

Skia/111 59932b057f281ddaeb0926ecfac55486270f8c51

Command Line

/Applications/Google Chrome.app/Contents/MacOS/Google Chrome --flag-switches-begin --flag-switches-end

Driver Information

Initialization time

415

In-process GPU

false

Passthrough Command Decoder

true

Sandboxed

true

GPU0

VENDOR= 0x1002, DEVICE=0x6920, DRIVER_VENDOR=ATI, DRIVER_VERSION=3.10.15 *ACTIVE*

GPU1

VENDOR= 0x8086, DEVICE=0x1912

Optimus

false

AMD switchable

true

GPU CUDA compute capability major version

0

Pixel shader version

1.00

Vertex shader version

1.00

Max. MSAA samples

4

Machine model name

iMac

Machine model version

17.1

GL_VENDOR

Google Inc. (ATI Technologies Inc.)

GL_RENDERER

ANGLE (ATI Technologies Inc., AMD Radeon R9 M395 OpenGL Engine, OpenGL 4.1 ATI-3.10.15)

GL_VERSION

OpenGL ES 2.0.0 (ANGLE 2.1.20370 git hash: cd45d155bf4c)

GL_EXTENSIONS

GL_AMD_performance_monitor GL_ANGLE_base_vertex_base_instance GL_ANGLE_base_vertex_base_instance_shader_builtin GL_ANGLE_client_arrays GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_get_serialized_context_string GL_ANGLE_get_tex_level_parameter GL_ANGLE_instanced_arrays GL_ANGLE_logic_op GL_ANGLE_memory_size GL_ANGLE_multi_draw GL_ANGLE_program_cache_control GL_ANGLE_provoking_vertex GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_external_update GL_ANGLE_texture_rectangle GL_ANGLE_translated_shader_source GL_APPLE_clip_distance GL_ARB_sync 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_texture GL_CHROMIUM_lose_context GL_CHROMIUM_sync_query GL_EXT_base_instance GL_EXT_blend_minmax GL_EXT_color_buffer_half_float GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_draw_elements_base_vertex GL_EXT_float_blend GL_EXT_frag_depth GL_EXT_instanced_arrays GL_EXT_map_buffer_range GL_EXT_multi_draw_indirect GL_EXT_multisample_compatibility GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_sRGB GL_EXT_sRGB_write_control GL_EXT_shader_texture_lod GL_EXT_shadow_samplers GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc_srgb GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_norm16 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_texture_type_2_10_10_10_REV GL_EXT_unpack_subimage GL_KHR_debug GL_KHR_parallel_shader_compile GL_NV_depth_buffer_float2 GL_NV_fence GL_NV_framebuffer_blit GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_NV_read_depth GL_NV_read_stencil GL_OES_depth24 GL_OES_depth32 GL_OES_depth_texture GL_OES_draw_elements_base_vertex GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_surfaceless_context GL_OES_texture_3D GL_OES_texture_border_clamp 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

Disabled Extensions

GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent GL_MESA_framebuffer_flip_y

Disabled WebGL Extensions

Window system binding vendor

Window system binding version

Window system binding extensions

Direct rendering version

unknown

Reset notification strategy

0x0000

GPU process crash count

0

gfx::BufferFormats supported for allocation and texturing

R_8: not supported, R_16: not supported, RG_88: not supported, RG_1616: not supported, BGR_565: not supported, RGBA_4444: not supported, RGBX_8888: not supported, RGBA_8888: not supported, BGRX_8888: not supported, BGRA_1010102: not supported, RGBA_1010102: not supported, BGRA_8888: not supported, RGBA_F16: not supported, YVU_420: not supported, YUV_420_BIPLANAR: not supported, YUVA_420_TRIPLANAR: not supported, P010: not supported

Compositor Information

Tile Update Mode

Zero-copy

Partial Raster

Enabled

GpuMemoryBuffers Status

R_8

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

R_16

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

RG_88

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

RG_1616

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

BGR_565

Software only

RGBA_4444

Software only

RGBX_8888

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

RGBA_8888

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

BGRX_8888

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

BGRA_1010102

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

RGBA_1010102

Software only

BGRA_8888

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

RGBA_F16

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

YVU_420

Software only

YUV_420_BIPLANAR

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

YUVA_420_TRIPLANAR

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

P010

GPU_READ, SCANOUT, SCANOUT_CPU_READ_WRITE, GPU_READ_CPU_READ_WRITE, SCANOUT_VEA_CPU_READ, SCANOUT_FRONT_RENDERING

Display(s) Information

Info

Display[69939948] bounds=[0,0 2560x1440], workarea=[0,23 2518x1417], scale=2, rotation=0, panel_rotation=0 internal.

Color space (SDR)

{r:[0.6397, 0.3300], g:[0.3002, 0.5993], b:[0.1504, 0.3300], w:[0.3127, 0.3290]}, transfer:SRGB, matrix:RGB, range:FULL}

Buffer format (SDR)

RGBA_8888

Color space (HDR)

{primaries:BT709, transfer:SRGB_HDR, matrix:RGB, range:FULL}

Buffer format (HDR)

RGBA_F16

Color volume

{r:[0.6397, 0.3300], g:[0.3002, 0.5993], b:[0.1504, 0.3300], w:[0.3127, 0.3290]}

SDR white level in nits

203

HDR relative maximum luminance

1.0625

Bits per color component

10

Bits per pixel

30

Refresh Rate in Hz

59

Video Acceleration Information

Decoding

Decode h264 baseline

16x16 to 4096x4096 pixels

Decode h264 extended

16x16 to 4096x4096 pixels

Decode h264 main

16x16 to 4096x4096 pixels

Decode h264 high

16x16 to 4096x4096 pixels

Encoding

Encode h264 baseline

640x1 to 4096x2304 pixels, and/or 120.000 fps.

Encode h264 baseline

2x2 to 4096x2304 pixels, and/or 120.000 fps (software codec).

Encode h264 baseline

1x480 to 4096x2304 pixels, and/or 120.000 fps.

Encode h264 main

640x1 to 4096x2304 pixels, and/or 120.000 fps.

Encode h264 main

2x2 to 4096x2304 pixels, and/or 120.000 fps (software codec).

Encode h264 main

1x480 to 4096x2304 pixels, and/or 120.000 fps.

Encode h264 high

640x1 to 4096x2304 pixels, and/or 120.000 fps.

Encode h264 high

2x2 to 4096x2304 pixels, and/or 120.000 fps (software codec).

Encode h264 high

1x480 to 4096x2304 pixels, and/or 120.000 fps.

Vulkan Information

Device Performance Information

Log Messages

  • [94325:775:0310/222807.443995:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0310/222807.447518:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:37635:0311/193306.151872:ERROR:skia_renderer.cc(646)] : Failed to create the promise sk image or get paint ops.

  • [94325:37635:0311/193306.168690:ERROR:skia_renderer.cc(646)] : Failed to create the promise sk image or get paint ops.

  • [94325:37635:0311/193306.249905:ERROR:skia_renderer.cc(646)] : Failed to create the promise sk image or get paint ops.

  • [94325:37635:0311/193306.383119:ERROR:skia_renderer.cc(646)] : Failed to create the promise sk image or get paint ops.

  • [94325:775:0311/214701.919445:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0311/214701.919759:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0311/214701.920220:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0311/214701.920744:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0311/214701.921160:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0311/214701.921568:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0311/214701.923163:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0311/215046.892394:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0311/215046.892957:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0312/011117.957822:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0312/011120.751690:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

  • [94325:775:0312/011120.811401:ERROR:shared_image_manager.cc(197)] : SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.

この記事が気に入ったらサポートをしてみませんか?