357 lines
9.0 KiB
JSON
357 lines
9.0 KiB
JSON
{
|
|
"file_format_version": "1.2.0",
|
|
"layer": {
|
|
"name": "VK_LAYER_LUNARG_crash_diagnostic",
|
|
"type": "GLOBAL",
|
|
"status": "BETA",
|
|
"library_path": "libVkLayer_crash_diagnostic.so",
|
|
"api_version": "1.4.304",
|
|
"implementation_version": "1",
|
|
"description": "Crash Diagnostic Layer is a crash/hang debugging tool that helps determines GPU progress in a Vulkan application.",
|
|
"platforms": [ "WINDOWS", "LINUX" , "ANDROID" ],
|
|
"url": "https://vulkan.lunarg.com/doc/sdk/latest/windows/crash_diagnostic_layer.html",
|
|
"enable_environment": {
|
|
"VK_CRASH_DIAGNOSTIC_ENABLE": "1"
|
|
},
|
|
"disable_environment": {
|
|
"VK_CRASH_DIAGNOSTIC_DISABLE": "1"
|
|
},
|
|
"instance_extensions": [
|
|
{
|
|
"name": "VK_EXT_debug_report",
|
|
"spec_version": "10"
|
|
},
|
|
{
|
|
"name": "VK_EXT_debug_utils",
|
|
"spec_version": "1"
|
|
},
|
|
{
|
|
"name": "VK_EXT_layer_settings",
|
|
"spec_version": "2"
|
|
}
|
|
],
|
|
"device_extensions": [
|
|
{
|
|
"name": "VK_EXT_debug_report",
|
|
"spec_version": "10",
|
|
"entrypoints": [
|
|
"vkCreateDebugReportCallbackEXT",
|
|
"vkDebugReportMessageEXT",
|
|
"vkDestroyDebugReportCallbackEXT"
|
|
]
|
|
},
|
|
{
|
|
"name": "VK_EXT_tooling_info",
|
|
"spec_version": "1",
|
|
"entrypoints": [
|
|
"vkGetPhysicalDeviceToolPropertiesEXT"
|
|
]
|
|
}
|
|
],
|
|
"features": {
|
|
"settings": [
|
|
{
|
|
"key": "watchdog_timeout_ms",
|
|
"env": "CDL_WATCHDOG_TIMEOUT_MS",
|
|
"label": "Watchdog timeout (ms)",
|
|
"description": "If set to a non-zero number, a watchdog thread will be created. This will trigger if the application fails to submit new commands within a set time (in milliseconds) and a log will be created as if the a lost device error was encountered.",
|
|
"type": "INT",
|
|
"default": 30000,
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
]
|
|
},
|
|
{
|
|
"key": "dump",
|
|
"label": "Dump files",
|
|
"description": "Control of dump files.",
|
|
"type": "GROUP",
|
|
"expanded": true,
|
|
"settings": [
|
|
{
|
|
"key": "output_path",
|
|
"env": "CDL_OUTPUT_PATH",
|
|
"label": "Output Path",
|
|
"description": "The directory where dump files and shader binaries are written.",
|
|
"type": "STRING",
|
|
"default": "",
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
]
|
|
},
|
|
{
|
|
"key": "dump_queue_submits",
|
|
"env": "CDL_DUMP_QUEUE_SUBMITS",
|
|
"label": "Dump queue submissions",
|
|
"description": "Control which queue submissions are included in the dump.",
|
|
"type": "ENUM",
|
|
"default": "running",
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
],
|
|
"flags": [
|
|
{
|
|
"key": "running",
|
|
"label": "Running",
|
|
"description": "Submissions that were executing at the time of the dump."
|
|
},
|
|
{
|
|
"key": "pending",
|
|
"label": "Pending",
|
|
"description": "Submissions executing or pending at the time of the dump."
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"key": "dump_command_buffers",
|
|
"env": "CDL_DUMP_COMMAND_BUFFERS",
|
|
"label": "Dump command buffers",
|
|
"description": "Control which command buffers are included in the dump.",
|
|
"type": "ENUM",
|
|
"default": "running",
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
],
|
|
"flags": [
|
|
{
|
|
"key": "running",
|
|
"label": "Running",
|
|
"description": "Command Buffers that were executing at the time of the dump."
|
|
},
|
|
{
|
|
"key": "pending",
|
|
"label": "Pending",
|
|
"description": "Command Buffers executing or pending at the time of the dump."
|
|
},
|
|
{
|
|
"key": "all",
|
|
"label": "All",
|
|
"description": "All known Command Buffers."
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"key": "dump_commands",
|
|
"env": "CDL_DUMP_COMMANDS",
|
|
"label": "Dump commands",
|
|
"description": "Control which commands are included in the dump.",
|
|
"type": "ENUM",
|
|
"default": "running",
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
],
|
|
"flags": [
|
|
{
|
|
"key": "running",
|
|
"label": "Running",
|
|
"description": "Command Buffers that were executing at the time of the dump."
|
|
},
|
|
{
|
|
"key": "pending",
|
|
"label": "Pending",
|
|
"description": "Commands executing or pending at the time of the dump."
|
|
},
|
|
{
|
|
"key": "all",
|
|
"label": "All",
|
|
"description": "All known Commands."
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"key": "dump_shaders",
|
|
"env": "CDL_DUMP_SHADERS",
|
|
"label": "Dump shaders",
|
|
"description": "Control of shader dumping.",
|
|
"type": "ENUM",
|
|
"default": "off",
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
],
|
|
"flags": [
|
|
{
|
|
"key": "off",
|
|
"label": "Off",
|
|
"description": "Never dump shaders."
|
|
},
|
|
{
|
|
"key": "on_crash",
|
|
"label": "On Crash",
|
|
"description": "Dump currently bound shaders after a crash is detected."
|
|
},
|
|
{
|
|
"key": "on_bind",
|
|
"label": "On Bind",
|
|
"description": "Dump only bound shaders."
|
|
},
|
|
{
|
|
"key": "all",
|
|
"label": "All",
|
|
"description": "Dump all shaders."
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"key": "logging",
|
|
"label": "Logging",
|
|
"description": "Control of logging.",
|
|
"type": "GROUP",
|
|
"expanded": true,
|
|
"settings": [
|
|
{
|
|
"key": "message_severity",
|
|
"label": "Message Severity",
|
|
"description": "Comma-delineated list of options specifying the types of log messages to be reported",
|
|
"type": "FLAGS",
|
|
"flags": [
|
|
{
|
|
"key": "error",
|
|
"label": "Error",
|
|
"description": "Report errors such as device lost or setup problems in the layer."
|
|
},
|
|
{
|
|
"key": "warn",
|
|
"label": "Warning",
|
|
"description": "Report non-fatal problems that may interfere with operation of the layer"
|
|
},
|
|
{
|
|
"key": "info",
|
|
"label": "Info",
|
|
"description": "Report informational messages."
|
|
},
|
|
{
|
|
"key": "verbose",
|
|
"label": "Verbose",
|
|
"description": "For layer development. Report messages for debugging layer behavior.",
|
|
"view": "ADVANCED"
|
|
}
|
|
],
|
|
"default": [
|
|
"error"
|
|
],
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
]
|
|
},
|
|
{
|
|
"key": "log_file",
|
|
"env": "CDL_LOG_FILE",
|
|
"label": "Log file name",
|
|
"description": "none = no logging, stderr or stdout = to the console, otherwise an absolute or relative path",
|
|
"type": "STRING",
|
|
"default": "stderr",
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS"
|
|
]
|
|
},
|
|
{
|
|
"key": "trace_on",
|
|
"env": "CDL_TRACE_ON",
|
|
"label": "Enable Tracing",
|
|
"description": "All Vulkan API calls intercepted by the layer will be logged to the console.",
|
|
"type": "BOOL",
|
|
"default": false,
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
]
|
|
},
|
|
{
|
|
"key": "trace_all_semaphores",
|
|
"env": "CDL_TRACE_ALL_SEMAPHORES",
|
|
"label": "Enable semaphore log tracing.",
|
|
"description": "Semaphore events will be logged to console.",
|
|
"type": "BOOL",
|
|
"default": false,
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"key": "state",
|
|
"label": "State Tracking",
|
|
"description": "Control of state tracking.",
|
|
"type": "GROUP",
|
|
"expanded": false,
|
|
"settings": [
|
|
{
|
|
"key": "sync_after_commands",
|
|
"env": "CDL_SYNC_AFTER_COMMANDS",
|
|
"label": "Synchronize commands",
|
|
"description": "Add pipeline barriers after instrumented commands.",
|
|
"type": "BOOL",
|
|
"default": false,
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
]
|
|
},
|
|
{
|
|
"key": "instrument_all_commands",
|
|
"env": "CDL_INSTRUMENT_ALL_COMMANDS",
|
|
"label": "Instrument all commands",
|
|
"description": "All commands will be instrumented.",
|
|
"type": "BOOL",
|
|
"default": false,
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
]
|
|
},
|
|
{
|
|
"key": "track_semaphores",
|
|
"env": "CDL_TRACK_SEMAPHORES",
|
|
"label": "Track semaphores",
|
|
"description": "Enable semaphore tracking.",
|
|
"type": "BOOL",
|
|
"default": true,
|
|
"platforms": [
|
|
"WINDOWS",
|
|
"LINUX",
|
|
"MACOS",
|
|
"ANDROID"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|