Expand description
Host-side Level Zero command-list recording and dispatch planning.
A Level Zero ze_command_list_handle_t is recorded on the host: the
application appends memory copies, kernel launches, and barriers, then
closes the list and submits it to a queue. The recording itself —
validating ordinals, computing ze_group_count_t dispatch dimensions,
sequencing barriers and events — is pure host-side logic that this module
models as an in-memory CommandListRecorder. The only device-gated step
is replaying the recorded commands through zeCommandListAppend*.
This module also provides:
GroupCountPlanner— converts a global problem size into the(group_count_x, group_count_y, group_count_z)launch grid for a given workgroup size, mirroringzeKernelSuggestGroupSizearithmetic.CommandQueueGroupTable— selects a compute vs. copy queue-group ordinal from a queriedzeDeviceGetCommandQueueGroupPropertiestable.EventPoolDesc/Barrier— event-pool sizing and barrier dependency construction.ReusableCommandList— modelszeCommandListReset+ re-record for repeated launches without re-allocation.
Structs§
- Barrier
- A barrier appended into a command list.
- Command
List Recorder - An in-memory recording of a Level Zero command list.
- Command
Queue Group Info - One entry of
zeDeviceGetCommandQueueGroupProperties. - Command
Queue Group Table - A queried command-queue-group property table for one device.
- Event
Pool Desc - Descriptor for a
zeEventPoolCreatecall. - Group
Count - A
ze_group_count_t— the number of workgroups launched in each dimension. - Group
Count Planner - Plans
ze_group_count_tlaunch grids from global problem sizes. - Reusable
Command List - A command list designed for repeated reset-and-re-record launch loops.
Enums§
- Command
List State - State of a command list in the host-side model.
- Event
Scope - Memory/host visibility scope for events in a pool (
ze_event_pool_flags_t). - Recorded
Command - A single command appended into a
CommandListRecorder.