mstar.communication.edge_items#
EDGE_ITEMS: a step’s streamed tensors to one peer worker, as columns.
The graph runtime sends a step’s plain streamed edges this way
(frames::EdgeItems in Rust), so a receiver decodes, reads and routes them
once per step instead of once per (request, worker) INPUT_SIGNALS.
EdgeItemsBuilder is a Python encoder of the same frame, which tests build
frames with and check Rust’s against. The reader side turns a frame back
into rows, and a row back into what INPUT_SIGNALS carried, for the paths that
still want that (a request not known yet, a transport without a batched read).
Functions
|
The frame's dtypes, by |
|
The row's tensor descriptors, as INPUT_SIGNALS carried them ( |
|
The row as the INPUT_SIGNALS that carried it before EDGE_ITEMS. |
|
Classes
|
One frame's columns, row by row ( |
|
One (request, streamed edge) row of a frame, its |
- class mstar.communication.edge_items.EdgeItemsBuilder(partition_name)[source]#
Bases:
objectOne frame’s columns, row by row (
frames::EdgeItemsin Rust).- Parameters:
partition_name (str)
- class mstar.communication.edge_items.StreamRow(index, request_id, signal, next_node, start, count, dim_start)[source]#
Bases:
NamedTupleOne (request, streamed edge) row of a frame, its
index-th: its items areframe.uuids[start:start + count](and likewise every item column), and their dims and stridesframe.dims_flat[dim_start:...].- Parameters:
- mstar.communication.edge_items.frame_dtypes(frame)[source]#
The frame’s dtypes, by
dtype_idx: once per frame, forrow_infos.
- mstar.communication.edge_items.row_infos(frame, row, dtypes=None)[source]#
The row’s tensor descriptors, as INPUT_SIGNALS carried them (
dtypesfromframe_dtypes, or computed here).- Parameters:
- Return type: