unilab.ipc.replay_pipelines.transfer.base.ReplayTransferBackend

class unilab.ipc.replay_pipelines.transfer.base.ReplayTransferBackend[source]

Bases: Protocol

Device-specific host-to-device transfer backend.

Methods

__init__(*args, **kwargs)

allocate_device_slots(*, count, shape, dtype)

clear_ready(slot)

close()

ready_query(slot)

register_host_slots(slots)

submit_h2d(*, slot, dst, src, metadata, ...)

synchronize_ready(slot)

wait_current_stream_for_ready(slot)

Attributes

device: device
device_family: str
h2d_submitter: str
host_memory_kind: str
host_pinned: bool
direct_pinned_shared: bool
supports_async_submit: bool
supports_timing_events: bool
register_host_slots(slots)[source]
Parameters:

slots (list[Tensor])

Return type:

None

allocate_device_slots(*, count, shape, dtype)[source]
Parameters:
Return type:

list[Tensor]

submit_h2d(*, slot, dst, src, metadata, trace_recorder, trace_cuda_events, h2d_bytes, pack_layout, pack_executor)[source]
Parameters:
Return type:

float

clear_ready(slot)[source]
Parameters:

slot (int)

Return type:

None

ready_query(slot)[source]
Parameters:

slot (int)

Return type:

bool

synchronize_ready(slot)[source]
Parameters:

slot (int)

Return type:

None

wait_current_stream_for_ready(slot)[source]
Parameters:

slot (int)

Return type:

None

close()[source]
Return type:

None

__init__(*args, **kwargs)