1 // Copyright 2015 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "gpu/config/gpu_switches.h" 6 7 namespace switches { 8 9 // Disable GPU rasterization, i.e. rasterize on the CPU only. 10 // Overrides the kEnableGpuRasterization flag. 11 const char kDisableGpuRasterization[] = "disable-gpu-rasterization"; 12 13 // Disables mipmap generation in Skia. Used a workaround for select low memory 14 // devices, see https://crbug.com/1138979 for details. 15 const char kDisableMipmapGeneration[] = "disable-mipmap-generation"; 16 17 // Allow heuristics to determine when a layer tile should be drawn with the 18 // Skia GPU backend. Only valid with GPU accelerated compositing. 19 const char kEnableGpuRasterization[] = "enable-gpu-rasterization"; 20 21 // Select a different set of GPU blocklist entries with the specified 22 // test_group ID. 23 const char kGpuBlocklistTestGroup[] = "gpu-blocklist-test-group"; 24 25 // Enable an extra set of GPU driver bug list entries with the specified 26 // test_group ID. Note the default test group (group 0) is still active. 27 const char kGpuDriverBugListTestGroup[] = "gpu-driver-bug-list-test-group"; 28 29 // Passes encoded GpuPreferences to GPU process. 30 const char kGpuPreferences[] = "gpu-preferences"; 31 32 // Ignores GPU blocklist. 33 const char kIgnoreGpuBlocklist[] = "ignore-gpu-blocklist"; 34 35 // Ignores GPU blocklist. 36 // TODO(crbug.com/1101491): remove in 2020Q4 in favor of --ignore-gpu-blocklist. 37 const char kIgnoreGpuBlacklist[] = "ignore-gpu-blacklist"; 38 39 // Allows explicitly specifying the shader disk cache size for embedded devices. 40 // Default value is 6MB. On Android, 2MB is default and 128KB for low-end 41 // devices. 42 const char kShaderDiskCacheSizeKB[] = "shader-disk-cache-size-kb"; 43 44 // Disables the non-sandboxed GPU process for DX12 info collection 45 const char kDisableGpuProcessForDX12InfoCollection[] = 46 "disable-gpu-process-for-dx12-info-collection"; 47 48 const char kEnableUnsafeWebGPU[] = "enable-unsafe-webgpu"; 49 50 // Enable validation layers in Dawn backends. 51 const char kEnableDawnBackendValidation[] = "enable-dawn-backend-validation"; 52 53 // Enable the toggle Toggle::DisableRobustness when creating Dawn device. 54 const char kDisableDawnRobustness[] = "disable-dawn-robustness"; 55 56 // Increases the priority (to REALTIME_AUDIO) of gpu process and compositor 57 // thread. 58 // This is only to be used for perf tests on macOS for more reliable values. 59 const char kUseHighGPUThreadPriorityForPerfTests[] = 60 "use-gpu-high-thread-priority-for-perf-tests"; 61 62 // Start the non-sandboxed GPU process for DX12 and Vulkan info collection 63 // immediately after the browser starts. The default is to delay for 120 64 // seconds. 65 const char kNoDelayForDX12VulkanInfoCollection[] = 66 "no-delay-for-dx12-vulkan-info-collection"; 67 68 // Enables measures of how long GPU Main Thread was blocked between SwapBuffers 69 const char kEnableGpuBlockedTime[] = "enable-gpu-blocked-time"; 70 71 // Passes the active graphics vendor id from browser process to info collection 72 // GPU process. 73 const char kGpuVendorId[] = "gpu-vendor-id"; 74 75 // Passes the active graphics device id from browser process to info collection 76 // GPU process. 77 const char kGpuDeviceId[] = "gpu-device-id"; 78 79 // Passes the active graphics sub system id from browser process to info 80 // collection GPU process. 81 const char kGpuSubSystemId[] = "gpu-sub-system-id"; 82 83 // Passes the active graphics revision info from browser process to info 84 // collection GPU process. 85 const char kGpuRevision[] = "gpu-revision"; 86 87 // Passes the active graphics driver version from browser process to info 88 // collection GPU process. 89 const char kGpuDriverVersion[] = "gpu-driver-version"; 90 91 // Indicate that the this is being used by Android WebView and its draw functor 92 // is using vulkan. 93 const char kWebViewDrawFunctorUsesVulkan[] = "webview-draw-functor-uses-vulkan"; 94 95 // Enables using protected memory for vulkan resources. 96 const char kEnableVulkanProtectedMemory[] = "enable-vulkan-protected-memory"; 97 98 // Forces vulkan resources to use protected memory for vulkan compositing. 99 const char kEnforceVulkanProtectedMemory[] = "enforce-vulkan-protected-memory"; 100 101 // Disables falling back to GL based hardware rendering if initializing Vulkan 102 // fails. This is to allow tests to catch regressions in Vulkan. 103 const char kDisableVulkanFallbackToGLForTesting[] = 104 "disable-vulkan-fallback-to-gl-for-testing"; 105 106 // Specifies the heap limit for Vulkan memory. 107 // TODO(crbug/1158000): Remove this switch. 108 const char kVulkanHeapMemoryLimitMb[] = "vulkan-heap-memory-limit-mb"; 109 110 // Specifies the sync CPU limit for total Vulkan memory. 111 // TODO(crbug/1158000): Remove this switch. 112 const char kVulkanSyncCpuMemoryLimitMb[] = "vulkan-sync-cpu-memory-limit-mb"; 113 114 } // namespace switches 115