pub struct GesvdjBatchedRequest<T: SolverSupported> {
pub a: GpuRef<T>,
pub m: i32,
pub n: i32,
pub batch_size: i32,
pub s: GpuRef<T>,
pub u: Option<GpuRef<T>>,
pub v: Option<GpuRef<T>>,
pub reply: Sender<Result<(), GpuError>>,
}Fields§
§a: GpuRef<T>Contiguous batch_size × m × n column-major buffer.
m: i32§n: i32§batch_size: i32§s: GpuRef<T>Singular values: batch_size * min(m, n) entries.
u: Option<GpuRef<T>>Left singular vectors (batch_size × m × m). When None,
jobz = NOVECTOR.
v: Option<GpuRef<T>>Right singular vectors (batch_size × n × n). When None,
jobz = NOVECTOR.
reply: Sender<Result<(), GpuError>>Trait Implementations§
Source§impl<T> SolverDispatch for GesvdjBatchedRequest<T>where
T: SolverSupported + SolverScalar,
impl<T> SolverDispatch for GesvdjBatchedRequest<T>where
T: SolverSupported + SolverScalar,
Source§fn dispatch(self: Box<Self>, cells: SolverCells<'_>)
fn dispatch(self: Box<Self>, cells: SolverCells<'_>)
Execute the request against a real cuSOLVER handle.
Source§fn dispatch_mock(self: Box<Self>)
fn dispatch_mock(self: Box<Self>)
Reply with a “mock mode” error without touching the GPU.
Default impl drops
self so the caller’s oneshot closes;
per-request impls override to send a typed Err.Auto Trait Implementations§
impl<T> Freeze for GesvdjBatchedRequest<T>
impl<T> !RefUnwindSafe for GesvdjBatchedRequest<T>
impl<T> Send for GesvdjBatchedRequest<T>
impl<T> Sync for GesvdjBatchedRequest<T>
impl<T> Unpin for GesvdjBatchedRequest<T>
impl<T> UnsafeUnpin for GesvdjBatchedRequest<T>
impl<T> !UnwindSafe for GesvdjBatchedRequest<T>
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
Mutably borrows from an owned value. Read more