pub struct IbverbsConfig {Show 18 fields
pub device: RdmaDevice,
pub cq_entries: i32,
pub port_num: u8,
pub gid_index: u8,
pub max_send_wr: u32,
pub max_recv_wr: u32,
pub max_send_sge: u32,
pub max_recv_sge: u32,
pub path_mtu: u32,
pub retry_cnt: u8,
pub rnr_retry: u8,
pub qp_timeout: u8,
pub min_rnr_timer: u8,
pub max_dest_rd_atomic: u8,
pub max_rd_atomic: u8,
pub pkey_index: u16,
pub psn: u32,
pub use_gpu_direct: bool,
}
Expand description
Represents ibverbs specific configurations.
This struct holds various parameters required to establish and manage an RDMA connection. It includes settings for the RDMA device, queue pair attributes, and other connection-specific parameters.
Fields§
§device: RdmaDevice
device
- The RDMA device to use for the connection.
cq_entries: i32
cq_entries
- The number of completion queue entries.
port_num: u8
port_num
- The physical port number on the device.
gid_index: u8
gid_index
- The GID index for the RDMA device.
max_send_wr: u32
max_send_wr
- The maximum number of outstanding send work requests.
max_recv_wr: u32
max_recv_wr
- The maximum number of outstanding receive work requests.
max_send_sge: u32
max_send_sge
- Te maximum number of scatter/gather elements in a send work request.
max_recv_sge: u32
max_recv_sge
- The maximum number of scatter/gather elements in a receive work request.
path_mtu: u32
path_mtu
- The path MTU (Maximum Transmission Unit) for the connection.
retry_cnt: u8
retry_cnt
- The number of retry attempts for a connection request.
rnr_retry: u8
rnr_retry
- The number of retry attempts for a receiver not ready (RNR) condition.
qp_timeout: u8
qp_timeout
- The timeout for a queue pair operation.
min_rnr_timer: u8
min_rnr_timer
- The minimum RNR timer value.
max_dest_rd_atomic: u8
max_dest_rd_atomic
- The maximum number of outstanding RDMA read operations at the destination.
max_rd_atomic: u8
max_rd_atomic
- The maximum number of outstanding RDMA read operations at the initiator.
pkey_index: u16
pkey_index
- The partition key index.
psn: u32
psn
- The packet sequence number.
use_gpu_direct: bool
use_gpu_direct
- Whether to enable GPU Direct RDMA support on init.
Trait Implementations§
Source§impl Clone for IbverbsConfig
impl Clone for IbverbsConfig
Source§fn clone(&self) -> IbverbsConfig
fn clone(&self) -> IbverbsConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for IbverbsConfig
impl Debug for IbverbsConfig
Source§impl Default for IbverbsConfig
Default RDMA parameters below are based on common values from rdma-core examples
(e.g. rc_pingpong). For high-performance or production use, consider tuning
based on ibv_query_device() results and workload characteristics.
impl Default for IbverbsConfig
Default RDMA parameters below are based on common values from rdma-core examples (e.g. rc_pingpong). For high-performance or production use, consider tuning based on ibv_query_device() results and workload characteristics.
Source§impl<'de> Deserialize<'de> for IbverbsConfig
impl<'de> Deserialize<'de> for IbverbsConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for IbverbsConfig
impl Display for IbverbsConfig
Source§impl Named for IbverbsConfig
impl Named for IbverbsConfig
Source§fn typename() -> &'static str
fn typename() -> &'static str
Source§fn typehash() -> u64
fn typehash() -> u64
Source§fn typeid() -> TypeId
fn typeid() -> TypeId
Source§fn port() -> u64
fn port() -> u64
Auto Trait Implementations§
impl Freeze for IbverbsConfig
impl RefUnwindSafe for IbverbsConfig
impl Send for IbverbsConfig
impl Sync for IbverbsConfig
impl Unpin for IbverbsConfig
impl UnwindSafe for IbverbsConfig
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
Source§impl<T> Checkpointable for Twhere
T: RemoteMessage + Clone,
impl<T> Checkpointable for Twhere
T: RemoteMessage + Clone,
Source§type State = T
type State = T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<A, M> Handler<IndexedErasedUnbound<M>> for A
impl<A, M> Handler<IndexedErasedUnbound<M>> for A
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more