pub struct LogicalLayoutDescriptor {
pub handle: LayoutHandle,
pub logical_type: LogicalLayoutHandle,
pub layout: LayoutDescriptor,
}Expand description
Layout descriptor with its assigned handle and logical type for RDMA metadata exchange.
This includes the logical layout type (G1, G2, G3, G4) so that remote instances know which physical handle corresponds to which tier.
Fields§
§handle: LayoutHandleUnique handle for this layout
logical_type: LogicalLayoutHandleThe logical layout type (G1, G2, G3, G4)
layout: LayoutDescriptorSerialized layout data (uses Serde, bridged via bincode)
Implementations§
Source§impl LogicalLayoutDescriptor
impl LogicalLayoutDescriptor
Sourcepub fn new(
handle: LayoutHandle,
logical_type: LogicalLayoutHandle,
layout: LayoutDescriptor,
) -> Self
pub fn new( handle: LayoutHandle, logical_type: LogicalLayoutHandle, layout: LayoutDescriptor, ) -> Self
Create a new layout descriptor with handle and logical type.
Sourcepub fn new_with_default_type(
handle: LayoutHandle,
layout: LayoutDescriptor,
) -> Self
pub fn new_with_default_type( handle: LayoutHandle, layout: LayoutDescriptor, ) -> Self
Create a layout descriptor with G2 as the default logical type.
This is provided for backwards compatibility with code that doesn’t track logical types. G2 is used as the default since it’s the most common tier for RDMA transfers (GPU memory for KV cache).
For proper RDMA transfers between instances, use new() with the
correct logical type from the Worker’s registered handles.
Trait Implementations§
Source§impl<'__de, __Context> BorrowDecode<'__de, __Context> for LogicalLayoutDescriptor
impl<'__de, __Context> BorrowDecode<'__de, __Context> for LogicalLayoutDescriptor
Source§fn borrow_decode<__D: BorrowDecoder<'__de, Context = __Context>>(
decoder: &mut __D,
) -> Result<Self, DecodeError>
fn borrow_decode<__D: BorrowDecoder<'__de, Context = __Context>>( decoder: &mut __D, ) -> Result<Self, DecodeError>
Source§impl Clone for LogicalLayoutDescriptor
impl Clone for LogicalLayoutDescriptor
Source§fn clone(&self) -> LogicalLayoutDescriptor
fn clone(&self) -> LogicalLayoutDescriptor
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LogicalLayoutDescriptor
impl Debug for LogicalLayoutDescriptor
Source§impl<__Context> Decode<__Context> for LogicalLayoutDescriptor
impl<__Context> Decode<__Context> for LogicalLayoutDescriptor
Auto Trait Implementations§
impl Freeze for LogicalLayoutDescriptor
impl RefUnwindSafe for LogicalLayoutDescriptor
impl Send for LogicalLayoutDescriptor
impl Sync for LogicalLayoutDescriptor
impl Unpin for LogicalLayoutDescriptor
impl UnsafeUnpin for LogicalLayoutDescriptor
impl UnwindSafe for LogicalLayoutDescriptor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request