mirror of
https://github.com/love2d/love.git
synced 2026-08-12 00:20:52 +02:00
CI: vulkan tests have synchronization validation enabled
This commit is contained in:
Executable
+324
@@ -0,0 +1,324 @@
|
||||
|
||||
# VK_LAYER_KHRONOS_validation
|
||||
|
||||
# Fine Grained Locking
|
||||
# =====================
|
||||
# <LayerIdentifier>.fine_grained_locking
|
||||
# Enable fine grained locking for Core Validation, which should improve
|
||||
# performance in multithreaded applications. This setting allows the
|
||||
# optimization to be disabled for debugging.
|
||||
khronos_validation.fine_grained_locking = true
|
||||
|
||||
# Core
|
||||
# =====================
|
||||
# <LayerIdentifier>.validate_core
|
||||
# The main, heavy-duty validation checks. This may be valuable early in the
|
||||
# development cycle to reduce validation output while correcting
|
||||
# parameter/object usage errors.
|
||||
khronos_validation.validate_core = true
|
||||
|
||||
# Image Layout
|
||||
# =====================
|
||||
# <LayerIdentifier>.check_image_layout
|
||||
# Check that the layout of each image subresource is correct whenever it is used
|
||||
# by a command buffer. These checks are very CPU intensive for some
|
||||
# applications.
|
||||
khronos_validation.check_image_layout = true
|
||||
|
||||
# Command Buffer State
|
||||
# =====================
|
||||
# <LayerIdentifier>.check_command_buffer
|
||||
# Check that all Vulkan objects used by a command buffer have not been
|
||||
# destroyed. These checks can be CPU intensive for some applications.
|
||||
khronos_validation.check_command_buffer = true
|
||||
|
||||
# Object in Use
|
||||
# =====================
|
||||
# <LayerIdentifier>.check_object_in_use
|
||||
# Check that Vulkan objects are not in use by a command buffer when they are
|
||||
# destroyed.
|
||||
khronos_validation.check_object_in_use = true
|
||||
|
||||
# Query
|
||||
# =====================
|
||||
# <LayerIdentifier>.check_query
|
||||
# Checks for commands that use VkQueryPool objects.
|
||||
khronos_validation.check_query = true
|
||||
|
||||
# Shader
|
||||
# =====================
|
||||
# <LayerIdentifier>.check_shaders
|
||||
# Shader checks. These checks can be CPU intensive during application start up,
|
||||
# especially if Shader Validation Caching is also disabled.
|
||||
khronos_validation.check_shaders = true
|
||||
|
||||
# Caching
|
||||
# =====================
|
||||
# <LayerIdentifier>.check_shaders_caching
|
||||
# Enable caching of shader validation results.
|
||||
khronos_validation.check_shaders_caching = true
|
||||
|
||||
# Handle Wrapping
|
||||
# =====================
|
||||
# <LayerIdentifier>.unique_handles
|
||||
# Handle wrapping checks. Disable this feature if you are exerience crashes when
|
||||
# creating new extensions or developing new Vulkan objects/structures.
|
||||
khronos_validation.unique_handles = true
|
||||
|
||||
# Object Lifetime
|
||||
# =====================
|
||||
# <LayerIdentifier>.object_lifetime
|
||||
# Object tracking checks. This may not always be necessary late in a development
|
||||
# cycle.
|
||||
khronos_validation.object_lifetime = true
|
||||
|
||||
# Stateless Parameter
|
||||
# =====================
|
||||
# <LayerIdentifier>.stateless_param
|
||||
# Stateless parameter checks. This may not always be necessary late in a
|
||||
# development cycle.
|
||||
khronos_validation.stateless_param = true
|
||||
|
||||
# Thread Safety
|
||||
# =====================
|
||||
# <LayerIdentifier>.thread_safety
|
||||
# Thread checks. In order to not degrade performance, it might be best to run
|
||||
# your program with thread-checking disabled most of the time, enabling it
|
||||
# occasionally for a quick sanity check or when debugging difficult application
|
||||
# behaviors.
|
||||
khronos_validation.thread_safety = true
|
||||
|
||||
# Synchronization
|
||||
# =====================
|
||||
# <LayerIdentifier>.validate_sync
|
||||
# Enable synchronization validation during command buffers recording. This
|
||||
# feature reports resource access conflicts due to missing or incorrect
|
||||
# synchronization operations between actions (Draw, Copy, Dispatch, Blit)
|
||||
# reading or writing the same regions of memory.
|
||||
khronos_validation.validate_sync = true
|
||||
|
||||
# QueueSubmit Synchronization Validation
|
||||
# =====================
|
||||
# <LayerIdentifier>.sync_queue_submit
|
||||
# Enable synchronization validation between submitted command buffers when
|
||||
# Synchronization Validation is enabled. This option will increase the
|
||||
# synchronization performance cost.
|
||||
khronos_validation.sync_queue_submit = true
|
||||
|
||||
# GPU Base
|
||||
# =====================
|
||||
# <LayerIdentifier>.validate_gpu_based
|
||||
# Setting an option here will enable specialized areas of validation
|
||||
khronos_validation.validate_gpu_based = GPU_BASED_NONE
|
||||
|
||||
# Redirect Printf messages to stdout
|
||||
# =====================
|
||||
# <LayerIdentifier>.printf_to_stdout
|
||||
# Enable redirection of Debug Printf messages from the debug callback to stdout
|
||||
#khronos_validation.printf_to_stdout = true
|
||||
|
||||
# Printf verbose
|
||||
# =====================
|
||||
# <LayerIdentifier>.printf_verbose
|
||||
# Set the verbosity of debug printf messages
|
||||
#khronos_validation.printf_verbose = false
|
||||
|
||||
# Printf buffer size
|
||||
# =====================
|
||||
# <LayerIdentifier>.printf_buffer_size
|
||||
# Set the size in bytes of the buffer used by debug printf
|
||||
#khronos_validation.printf_buffer_size = 1024
|
||||
|
||||
# Shader instrumentation
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_shader_instrumentation
|
||||
# Instrument shaders to validate descriptors, descriptor indexing, buffer device
|
||||
# addresses and ray queries. Warning: will considerably slow down shader
|
||||
# executions.
|
||||
#khronos_validation.gpuav_shader_instrumentation = true
|
||||
|
||||
# Descriptors indexing
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_descriptor_checks
|
||||
# Enable descriptors and buffer out of bounds validation when using descriptor
|
||||
# indexing
|
||||
khronos_validation.gpuav_descriptor_checks = true
|
||||
|
||||
# Generate warning on out of bounds accesses even if buffer robustness is enabled
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_warn_on_robust_oob
|
||||
# Warn on out of bounds accesses even if robustness is enabled
|
||||
khronos_validation.gpuav_warn_on_robust_oob = true
|
||||
|
||||
# Out of bounds buffer device addresses
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_buffer_address_oob
|
||||
# Check for
|
||||
khronos_validation.gpuav_buffer_address_oob = true
|
||||
|
||||
# Maximum number of buffer device addresses in use at one time
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_max_buffer_device_addresses
|
||||
|
||||
khronos_validation.gpuav_max_buffer_device_addresses = 10000
|
||||
|
||||
# RayQuery SPIR-V Instructions
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_validate_ray_query
|
||||
# Enable shader instrumentation on OpRayQueryInitializeKHR
|
||||
khronos_validation.gpuav_validate_ray_query = true
|
||||
|
||||
# Cache instrumented shaders rather than instrumenting them on every run
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_cache_instrumented_shaders
|
||||
# Enable instrumented shader caching
|
||||
khronos_validation.gpuav_cache_instrumented_shaders = true
|
||||
|
||||
# Enable instrumenting shaders selectively
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_select_instrumented_shaders
|
||||
# Select which shaders to instrument passing a VkValidationFeaturesEXT struct
|
||||
# with GPU-AV enabled in the VkShaderModuleCreateInfo pNext
|
||||
khronos_validation.gpuav_select_instrumented_shaders = false
|
||||
|
||||
# Buffer content validation
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_buffers_validation
|
||||
# Validate buffers containing parameters used in indirect Vulkan commands, or
|
||||
# used in copy commands
|
||||
#khronos_validation.gpuav_buffers_validation = true
|
||||
|
||||
# Indirect draws parameters
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_indirect_draws_buffers
|
||||
# Validate buffers containing draw parameters used in indirect draw commands
|
||||
khronos_validation.gpuav_indirect_draws_buffers = true
|
||||
|
||||
# Indirect dispatches parameters
|
||||
# =====================
|
||||
# <LayerIdentifier>.indirect_dispatches
|
||||
# Validate buffers containing dispatch parameters used in indirect dispatch
|
||||
# commands
|
||||
khronos_validation.indirect_dispatches = true
|
||||
|
||||
# Indirect trace rays parameters
|
||||
# =====================
|
||||
# <LayerIdentifier>.indirect_trace_rays
|
||||
# Validate buffers containing ray tracing parameters used in indirect ray
|
||||
# tracing commands
|
||||
khronos_validation.indirect_trace_rays = true
|
||||
|
||||
# Buffer copies
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_buffer_copies
|
||||
# Validate copies involving a VkBuffer. Right now only validates copy buffer to
|
||||
# image.
|
||||
khronos_validation.gpuav_buffer_copies = true
|
||||
|
||||
# Reserve Descriptor Set Binding Slot
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_reserve_binding_slot
|
||||
# Specifies that the validation layers reserve a descriptor set binding slot for
|
||||
# their own use. The layer reports a value for
|
||||
# VkPhysicalDeviceLimits::maxBoundDescriptorSets that is one less than the value
|
||||
# reported by the device. If the device supports the binding of only one
|
||||
# descriptor set, the validation layer does not perform GPU-assisted validation.
|
||||
#khronos_validation.gpuav_reserve_binding_slot = true
|
||||
|
||||
# Linear Memory Allocation Mode
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_vma_linear_output
|
||||
# Use VMA linear memory allocations for GPU-AV output buffers instead of finding
|
||||
# best place for new allocations among free regions to optimize memory usage.
|
||||
# Enabling this setting reduces performance cost but disabling this method
|
||||
# minimizes memory usage.
|
||||
#khronos_validation.gpuav_vma_linear_output = true
|
||||
|
||||
# Validate instrumented shaders
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_debug_validate_instrumented_shaders
|
||||
# Run spirv-val after doing shader instrumentation
|
||||
#khronos_validation.gpuav_debug_validate_instrumented_shaders = false
|
||||
|
||||
# Dump instrumented shaders
|
||||
# =====================
|
||||
# <LayerIdentifier>.gpuav_debug_dump_instrumented_shaders
|
||||
# Will dump the instrumented shaders (before and after) to working directory
|
||||
#khronos_validation.gpuav_debug_dump_instrumented_shaders = false
|
||||
|
||||
# Best Practices
|
||||
# =====================
|
||||
# <LayerIdentifier>.validate_best_practices
|
||||
# Outputs warnings related to common misuse of the API, but which are not
|
||||
# explicitly prohibited by the specification.
|
||||
khronos_validation.validate_best_practices = true
|
||||
|
||||
# ARM-specific best practices
|
||||
# =====================
|
||||
# <LayerIdentifier>.validate_best_practices_arm
|
||||
# Outputs warnings for spec-conforming but non-ideal code on ARM GPUs.
|
||||
khronos_validation.validate_best_practices_arm = false
|
||||
|
||||
# AMD-specific best practices
|
||||
# =====================
|
||||
# <LayerIdentifier>.validate_best_practices_amd
|
||||
# Outputs warnings for spec-conforming but non-ideal code on AMD GPUs.
|
||||
khronos_validation.validate_best_practices_amd = false
|
||||
|
||||
# IMG-specific best practices
|
||||
# =====================
|
||||
# <LayerIdentifier>.validate_best_practices_img
|
||||
# Outputs warnings for spec-conforming but non-ideal code on Imagination GPUs.
|
||||
khronos_validation.validate_best_practices_img = false
|
||||
|
||||
# NVIDIA-specific best practices
|
||||
# =====================
|
||||
# <LayerIdentifier>.validate_best_practices_nvidia
|
||||
# Outputs warnings for spec-conforming but non-ideal code on NVIDIA GPUs.
|
||||
khronos_validation.validate_best_practices_nvidia = false
|
||||
|
||||
# Debug Action
|
||||
# =====================
|
||||
# <LayerIdentifier>.debug_action
|
||||
# Specifies what action is to be taken when a layer reports information
|
||||
khronos_validation.debug_action = VK_DBG_LAYER_ACTION_LOG_MSG
|
||||
|
||||
# Log Filename
|
||||
# =====================
|
||||
# <LayerIdentifier>.log_filename
|
||||
# Specifies the output filename
|
||||
khronos_validation.log_filename = stdout
|
||||
|
||||
# Message Severity
|
||||
# =====================
|
||||
# <LayerIdentifier>.report_flags
|
||||
# Comma-delineated list of options specifying the types of messages to be
|
||||
# reported
|
||||
khronos_validation.report_flags = error
|
||||
|
||||
# Limit Duplicated Messages
|
||||
# =====================
|
||||
# <LayerIdentifier>.enable_message_limit
|
||||
# Enable limiting of duplicate messages.
|
||||
khronos_validation.enable_message_limit = false
|
||||
|
||||
# Max Duplicated Messages
|
||||
# =====================
|
||||
# <LayerIdentifier>.duplicate_message_limit
|
||||
# Maximum number of times any single validation message should be reported.
|
||||
#khronos_validation.duplicate_message_limit = 10
|
||||
|
||||
# Mute Message VUIDs
|
||||
# =====================
|
||||
# <LayerIdentifier>.message_id_filter
|
||||
# List of VUIDs and VUID identifers which are to be IGNORED by the validation
|
||||
# layer
|
||||
khronos_validation.message_id_filter =
|
||||
|
||||
# Display Application Name
|
||||
# =====================
|
||||
# <LayerIdentifier>.message_format_display_application_name
|
||||
# Useful when running multiple instances to know which instance the message is
|
||||
# from.
|
||||
khronos_validation.message_format_display_application_name = false
|
||||
|
||||
Reference in New Issue
Block a user