← Back

Module queue

enum QueuePriority

Source: gpu/queue.joule:9

struct GpuQueue

GPU command queue for async operations

Source: gpu/queue.joule:19

enum QueueHandle

Internal queue handle (backend-specific)

Source: gpu/queue.joule:26

fn new(device: &GpuDevice) -> Result<Self, GpuError>

Source: gpu/queue.joule:43

fn with_priority(device: &GpuDevice, priority: QueuePriority) -> Result<Self, GpuError>

Source: gpu/queue.joule:49

fn cudaStreamCreateWithPriority(

Source: gpu/queue.joule:54

fn mtl_device_new_command_queue(

Source: gpu/queue.joule:82

fn hipStreamCreateWithPriority(

Source: gpu/queue.joule:98

fn device(&self) -> &GpuDevice

Get the associated device

Source: gpu/queue.joule:134

fn priority(&self) -> QueuePriority

Get queue priority

Source: gpu/queue.joule:139

fn synchronize(&self) -> Result<(), GpuError>

Source: gpu/queue.joule:145

fn cudaStreamSynchronize(stream: *mut std::ffi::c_void) -> i32;

Source: gpu/queue.joule:150

fn hipStreamSynchronize(stream: *mut std::ffi::c_void) -> i32;

Source: gpu/queue.joule:166

fn record_event(&self) -> Result<GpuEvent, GpuError>

Source: gpu/queue.joule:182

fn wait_event(&self, event: &GpuEvent) -> Result<(), GpuError>

Source: gpu/queue.joule:188

fn cudaStreamWaitEvent(

Source: gpu/queue.joule:193

fn hipStreamWaitEvent(

Source: gpu/queue.joule:208

fn is_complete(&self) -> bool

Check if all operations have completed (non-blocking)

Source: gpu/queue.joule:227

fn cudaStreamQuery(stream: *mut std::ffi::c_void) -> i32;

Source: gpu/queue.joule:232

fn hipStreamQuery(stream: *mut std::ffi::c_void) -> i32;

Source: gpu/queue.joule:240

fn drop(&mut self)

Source: gpu/queue.joule:267

fn cudaStreamDestroy(stream: *mut std::ffi::c_void) -> i32;

Source: gpu/queue.joule:272

fn hipStreamDestroy(stream: *mut std::ffi::c_void) -> i32;

Source: gpu/queue.joule:285

fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result

Source: gpu/queue.joule:296

struct QueuePool

Queue pool for managing multiple queues

Source: gpu/queue.joule:305

fn new(device: &GpuDevice, count: usize) -> Result<Self, GpuError>

Source: gpu/queue.joule:313

fn next(&self) -> &GpuQueue

Get the next queue (round-robin)

Source: gpu/queue.joule:326

fn synchronize_all(&self) -> Result<(), GpuError>

Source: gpu/queue.joule:333

fn len(&self) -> usize

Number of queues in pool

Source: gpu/queue.joule:341