pub enum EagerError {
NoKernel {
op_type: String,
domain: String,
device: DeviceId,
},
MixedDeviceInputs {
devices: Vec<DeviceId>,
hint: String,
},
NoEpForDevice(DeviceId),
ShapeInference {
op_type: String,
domain: String,
reason: String,
},
Kernel(EpError),
ShapeInferEngine(ShapeInferError),
Ir(IrError),
}Expand description
Errors produced while dispatching a single op in eager mode.
Variants§
NoKernel
No EP registered for the resolved device has a kernel for this op at the
requested opset (docs/EAGER.md §10.1 step 4).
MixedDeviceInputs
Inputs live on more than one device. Eager mode never transfers
implicitly (docs/EAGER.md §1.6 / Design Decision): the caller must
.to(device) first.
NoEpForDevice(DeviceId)
The resolved device has no execution provider registered in the context.
ShapeInference
Per-op output shape/dtype inference is missing or could not resolve to a
concrete, allocatable shape (docs/EAGER.md §9). The kernel-provided
inference fallback (§9.2) is DEFERRED, so an unresolved output is an
error rather than a fall-through.
Kernel(EpError)
A lower-layer execution-provider / kernel error (allocation, execution).
ShapeInferEngine(ShapeInferError)
An error escaping the shape-inference engine itself.
Ir(IrError)
An error escaping the IR layer.
Trait Implementations§
Source§impl Debug for EagerError
impl Debug for EagerError
Source§impl Display for EagerError
impl Display for EagerError
Source§impl Error for EagerError
impl Error for EagerError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<EpError> for EagerError
impl From<EpError> for EagerError
Source§impl From<IrError> for EagerError
impl From<IrError> for EagerError
Source§impl From<ShapeInferError> for EagerError
impl From<ShapeInferError> for EagerError
Source§fn from(source: ShapeInferError) -> Self
fn from(source: ShapeInferError) -> Self
Auto Trait Implementations§
impl Freeze for EagerError
impl RefUnwindSafe for EagerError
impl Send for EagerError
impl Sync for EagerError
impl Unpin for EagerError
impl UnsafeUnpin for EagerError
impl UnwindSafe for EagerError
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> 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