Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sync: Very long list of stages/accesses in some error messages. #7807

Open
artem-lunarg opened this issue Apr 3, 2024 · 1 comment
Open
Labels
Synchronization Synchronization Validation Object Issue

Comments

@artem-lunarg
Copy link
Contributor

artem-lunarg commented Apr 3, 2024

Below is a part of the syncval error message. It's hard to read and to see all the necessary information because of the long list of stages/accesses. Often, the list of accesses is equivalent to one of the meta stages and in that case we can report shorter version (e.g. ALL_COMMANDS, ALL_COMMANDS_READ, etc).

Access info (prior_usage: SYNC_IMAGE_LAYOUT_TRANSITION, write_barriers: SYNC_DRAW_INDIRECT_INDIRECT_COMMAND_READ|SYNC_DRAW_INDIRECT_TRANSFORM_FEEDBACK_COUNTER_READ_EXT|SYNC_COMPUTE_SHADER_ACCELERATION_STRUCTURE_READ|SYNC_COMPUTE_SHADER_DESCRIPTOR_BUFFER_READ_EXT|SYNC_COMPUTE_SHADER_SHADER_BINDING_TABLE_READ|SYNC_COMPUTE_SHADER_SHADER_SAMPLED_READ|SYNC_COMPUTE_SHADER_SHADER_STORAGE_READ|SYNC_COMPUTE_SHADER_SHADER_STORAGE_WRITE|SYNC_COMPUTE_SHADER_UNIFORM_READ|SYNC_HOST_HOST_READ|SYNC_HOST_HOST_WRITE|SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_READ_NV|SYNC_COMMAND_PREPROCESS_NV_COMMAND_PREPROCESS_WRITE_NV|SYNC_CONDITIONAL_RENDERING_EXT_CONDITIONAL_RENDERING_READ_EXT|SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ|SYNC_RAY_TRACING_SHADER_DESCRIPTOR_BUFFER_READ_EXT|SYNC_RAY_TRACING_SHADER_SHADER_BINDING_TABLE_READ|SYNC_RAY_TRACING_SHADER_SHADER_SAMPLED_READ|SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_READ|SYNC_RAY_TRACING_SHADER_SHADER_STORAGE_WRITE|SYNC_RAY_TRACING_SHADER_UNIFORM_READ|SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ|SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_WRITE|SYNC_ACCELERATION_STRUCTURE_BUILD_INDIRECT_COMMAND_READ|SYNC_ACCELERATION_STRUCTURE_BUILD_MICROMAP_READ_EXT|SYNC_ACCELERATION_STRUCTURE_BUILD_SHADER_STORAGE_READ|SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_READ|SYNC_ACCELERATION_STRUCTURE_BUILD_TRANSFER_WRITE|SYNC_ACCELERATION_STRUCTURE_COPY

@artem-lunarg artem-lunarg added the Synchronization Synchronization Validation Object Issue label Apr 3, 2024
@spencer-lunarg
Copy link
Contributor

We had this issue with things like VK_SHADER_STAGE_ALL_GRAPHICS in the past, but using the multiBit value in the codegen, we produced

static inline std::string string_VkShaderStageFlags(VkShaderStageFlags input_value) {
    if (input_value == VK_SHADER_STAGE_ALL_GRAPHICS) { return "VK_SHADER_STAGE_ALL_GRAPHICS"; }

automatically (https://github.com/KhronosGroup/Vulkan-Utility-Libraries/blob/main/scripts/generators/enum_string_helper_generator.py#L92)

So I imagine we just need to apply the same idea for the sync enums we created

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Synchronization Synchronization Validation Object Issue
Projects
None yet
Development

No branches or pull requests

2 participants