pub struct EfaDevice;Expand description
AWS EFA (Elastic Fabric Adapter) backend.
Trait Implementations§
Source§impl IbvDeviceImpl for EfaDevice
impl IbvDeviceImpl for EfaDevice
Source§type Domain = EfaDomain
type Domain = EfaDomain
The per-domain strategy used by this backend (how memory regions
are registered and queue pairs built against a PD). [
IbvDomain] is
generic over this.Source§fn backend_name() -> &'static str
fn backend_name() -> &'static str
Human-readable display name for the backend this impl
drives (e.g.,
"mellanox", "efa"). Surfaced in
diagnostics; not used as a registry key.Source§fn is_instance(ctx: Arc<IbvContext>) -> bool
fn is_instance(ctx: Arc<IbvContext>) -> bool
Returns
true if ctx belongs to this backend. Called
transiently, once per ibverbs device, while
[DEVICE_NAMES_BY_IMPL] is built.Source§fn apply_config_defaults(config: &mut IbvConfig)
fn apply_config_defaults(config: &mut IbvConfig)
Seeds an
IbvConfig with backend-appropriate defaults
(e.g., EFA caps max_send_sge at 1).Source§impl Named for EfaDevice
impl Named for EfaDevice
Source§fn typename() -> &'static str
fn typename() -> &'static str
The globally unique type name for the type.
This should typically be the fully qualified Rust name of the type.
Source§fn typehash() -> u64
fn typehash() -> u64
A globally unique hash for this type.
TODO: actually enforce perfect hashing
Source§fn typeid() -> TypeId
fn typeid() -> TypeId
The TypeId for this type. TypeIds are unique only within a binary,
and should not be used for global identification.
Auto Trait Implementations§
impl Freeze for EfaDevice
impl RefUnwindSafe for EfaDevice
impl Send for EfaDevice
impl Sync for EfaDevice
impl Unpin for EfaDevice
impl UnsafeUnpin for EfaDevice
impl UnwindSafe for EfaDevice
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
§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>
§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>
Converts
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>
Converts
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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].