Skip to content

Commit 16fc96c

Browse files
authored
Documentation: Clarify loader dispatch given num drivers and tools (#475)
Signed-off-by: Neil R. Spruit <neil.r.spruit@intel.com>
1 parent 33da8bc commit 16fc96c

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

scripts/runtime/PROG.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ API Semantics and Considerations:
2929
- By default, zer functions always use the driver at index 0 (after loader sorting). This can be overridden using :ref:`ZEL_DRIVERS_ORDER <driver-ordering>`.
3030
- Level Zero loader will always route zer functions to first driver instance that it reports
3131
- By default, the Level Zero loader ensures that drivers are prioritized as follows: Discrete GPU hardware solutions are reported at index 0 when available. If no discrete GPU is present, any GPU solution will be reported at index 0. This default ordering can be overridden using :ref:`ZEL_DRIVERS_ORDER <driver-ordering>`.
32-
- In the default path, the Level Zero loader routes API calls directly to driver pointers, allowing applications to bypass the loader for lower latency
33-
- When tools are enabled, the Level Zero loader routes API calls through the loader to allow interception by those tools
32+
- When only one driver is present, the Level Zero loader populates the DDI table with driver function pointers directly, enabling API calls to reach the driver without traversing the loader's intercept layer; with multiple drivers, the loader's intercept layer is always active
33+
- When tools such as the validation or tracing layer are enabled (via ``ZE_ENABLE_VALIDATION_LAYER`` or ``ZE_ENABLE_TRACING_LAYER``), the Level Zero loader inserts intercept functions into the DDI table so that API calls pass through those layers before reaching the driver
3434
- After Level Zero Init during zeInitDrivers, the zer runtime initializes the default driver (index 0), the driver at index 0 cannot be changed after initialization is called in the process
3535
- zer and ze API's use the same handle object types and can be used together
3636
- zer getter APIs return the desired object directly whenever feasible

0 commit comments

Comments
 (0)