You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: source/layers/validation/README.md
+16Lines changed: 16 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -90,6 +90,22 @@ Validates:
90
90
When this mode is enabled, the certification checker validates API usage against the version supported by the driver or an explicitly specified version.
91
91
If an API is used that was introduced in a version higher than the supported version, the checker will return `ZE_RESULT_ERROR_UNSUPPORTED_VERSION`.
92
92
93
+
### `ZEL_ENABLE_PERFORMANCE_CHECKER`
94
+
95
+
When this mode is enabled, the performance checker validates API usage against known performance best practices. It can be used to identify potential performance issues in an application and provide recommendations for improvement.
96
+
To enable use following environment variable:
97
+
```bash
98
+
export ZEL_ENABLE_PERFORMANCE_CHECKER=1
99
+
export ZEL_ENABLE_LOADER_LOGGING=1
100
+
export ZE_ENABLE_VALIDATION_LAYER=1
101
+
export ZEL_LOADER_LOG_CONSOLE=1 # Optional: enable console logging for immediate feedback
102
+
```
103
+
104
+
Currently checked things:
105
+
- check whether created immediate command lists are not synchrnous
106
+
- check whether created immediate command lists are using in order queues
107
+
- check whether in order command lists are using copy offload
if (descriptor->mode & ZE_COMMAND_QUEUE_MODE_SYNCHRONOUS) {
39
+
context.logger->log_performance("Synchronous command queue may cause performance degradation. Consider using asynchronous mode.");
40
+
}
41
+
if (descriptor->flags & ZE_COMMAND_QUEUE_FLAG_IN_ORDER) {
42
+
if (!(descriptor->flags & ZE_COMMAND_QUEUE_FLAG_COPY_OFFLOAD_HINT)) {
43
+
context.logger->log_performance("In-order command list created without copy offload hint. Consider using copy offload hint for better performance of copy operations.");
44
+
}
45
+
}
46
+
else {
47
+
context.logger->log_performance("Out-of-order command list created. Consider using in-order command lists for better performance.");
0 commit comments