1396 lines
29 KiB
Markdown
1396 lines
29 KiB
Markdown
cudarc::cublas
|
||
Module safe
|
||
|
||
Summary
|
||
Safe abstractions around crate::cublas::result for doing gemm and gemv.
|
||
|
||
Structs
|
||
AsumConfig
|
||
Configuration for [Gemm]
|
||
CudaBlas
|
||
Wrapper around sys::cublasHandle_t
|
||
GemmConfig
|
||
Configuration for Gemm
|
||
GemvConfig
|
||
Configuration for Gemv
|
||
StridedBatchedConfig
|
||
Configuration for Gemm strided batched call
|
||
Traits
|
||
Asum
|
||
Sum of absolute values with elements of type T.
|
||
Gemm
|
||
Matrix matrix multiplication with elements of type T.
|
||
Gemv
|
||
Matrix vector multiplication with elements of type T
|
||
|
||
----------------------
|
||
|
||
Struct AsumConfig Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
pub struct AsumConfig {
|
||
pub n: c_int,
|
||
pub incx: c_int,
|
||
}
|
||
Configuration for [Gemm]
|
||
|
||
Fields
|
||
n: c_int
|
||
incx: c_int
|
||
Trait Implementations
|
||
Source
|
||
impl Clone for AsumConfig
|
||
Source
|
||
fn clone(&self) -> AsumConfig
|
||
Returns a duplicate of the value. Read more
|
||
1.0.0 · Source
|
||
fn clone_from(&mut self, source: &Self)
|
||
Performs copy-assignment from source. Read more
|
||
Source
|
||
impl Debug for AsumConfig
|
||
Source
|
||
fn fmt(&self, f: &mut Formatter<'_>) -> Result
|
||
Formats the value using the given formatter. Read more
|
||
Source
|
||
impl Copy for AsumConfig
|
||
Auto Trait Implementations
|
||
impl Freeze for AsumConfig
|
||
impl RefUnwindSafe for AsumConfig
|
||
impl Send for AsumConfig
|
||
impl Sync for AsumConfig
|
||
impl Unpin for AsumConfig
|
||
impl UnwindSafe for AsumConfig
|
||
Blanket Implementations
|
||
Source
|
||
impl<T> Any for T
|
||
where
|
||
T: 'static + ?Sized,
|
||
Source
|
||
impl<T> Borrow<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> BorrowMut<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> CloneToUninit for T
|
||
where
|
||
T: Clone,
|
||
Source
|
||
impl<T> From<T> for T
|
||
Source
|
||
impl<T, U> Into<U> for T
|
||
where
|
||
U: From<T>,
|
||
Source
|
||
impl<T> ToOwned for T
|
||
where
|
||
T: Clone,
|
||
Source
|
||
impl<T, U> TryFrom<U> for T
|
||
where
|
||
U: Into<T>,
|
||
Source
|
||
impl<T, U> TryInto<U> for T
|
||
where
|
||
U: TryFrom<T>,
|
||
Source
|
||
impl<V, T> VZip<V> for T
|
||
where
|
||
V: MultiLane<T>,
|
||
|
||
-----------------------------
|
||
|
||
Struct CudaBlas Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
pub struct CudaBlas { /* private fields */ }
|
||
Wrapper around sys::cublasHandle_t
|
||
|
||
Create with CudaBlas::new()
|
||
Execute gemm/gemv kernels with Gemv and Gemm. Both f32 and f64 are supported for both
|
||
Note: This maintains a instance of Arc<CudaDevice>, so will prevent the device from being dropped.
|
||
|
||
Implementations
|
||
Source
|
||
impl CudaBlas
|
||
Source
|
||
pub fn new(stream: Arc<CudaStream>) -> Result<Self, CublasError>
|
||
Creates a new cublas handle and sets the stream to the device’s stream.
|
||
|
||
Source
|
||
pub fn handle(&self) -> &cublasHandle_t
|
||
Returns a reference to the underlying cublas handle.
|
||
|
||
Source
|
||
pub unsafe fn set_stream(
|
||
&mut self,
|
||
stream: Arc<CudaStream>,
|
||
) -> Result<(), CublasError>
|
||
Sets the handle’s current to either the stream specified, or the device’s default work stream.
|
||
|
||
Safety
|
||
This is unsafe because you can end up scheduling multiple concurrent kernels that all write to the same memory address.
|
||
|
||
Source
|
||
pub fn set_pointer_mode(
|
||
&self,
|
||
pointer_mode: cublasPointerMode_t,
|
||
) -> Result<(), CublasError>
|
||
Set the handle’s pointer mode. ref: https://docs.nvidia.com/cuda/cublas/#cublassetpointermode
|
||
|
||
Some cublas functions require the pointer mode to be set to cublasPointerMode_t::CUBLAS_POINTER_MODE_DEVICE when passing a device memory result buffer into the function, such as cublas<t>asum(). Otherwise the operation will panic with SIGSEGV: invalid memory reference, or one has to use a host memory reference, which has performance implications.
|
||
|
||
Source
|
||
pub fn get_pointer_mode(&self) -> Result<cublasPointerMode_t, CublasError>
|
||
Get the handle’s current pointer mode. ref: https://docs.nvidia.com/cuda/cublas/#cublasgetpointermode
|
||
|
||
Trait Implementations
|
||
Source
|
||
impl Asum<f32> for CudaBlas
|
||
Source
|
||
unsafe fn asum<X: DevicePtr<f32>>(
|
||
&self,
|
||
cfg: AsumConfig,
|
||
x: &X,
|
||
result: &mut f32,
|
||
) -> Result<(), CublasError>
|
||
Sum of absolute values. See nvidia docs Read more
|
||
Source
|
||
impl Asum<f64> for CudaBlas
|
||
Source
|
||
unsafe fn asum<X: DevicePtr<f64>>(
|
||
&self,
|
||
cfg: AsumConfig,
|
||
x: &X,
|
||
result: &mut f64,
|
||
) -> Result<(), CublasError>
|
||
Sum of absolute values. See nvidia docs Read more
|
||
Source
|
||
impl Debug for CudaBlas
|
||
Source
|
||
fn fmt(&self, f: &mut Formatter<'_>) -> Result
|
||
Formats the value using the given formatter. Read more
|
||
Source
|
||
impl Drop for CudaBlas
|
||
Source
|
||
fn drop(&mut self)
|
||
Executes the destructor for this type. Read more
|
||
Source
|
||
impl Gemm<bf16> for CudaBlas
|
||
Source
|
||
unsafe fn gemm<A: DevicePtr<bf16>, B: DevicePtr<bf16>, C: DevicePtrMut<bf16>>(
|
||
&self,
|
||
cfg: GemmConfig<bf16>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Matrix matrix multiplication. See nvidia docs Read more
|
||
Source
|
||
unsafe fn gemm_strided_batched<A: DevicePtr<bf16>, B: DevicePtr<bf16>, C: DevicePtrMut<bf16>>(
|
||
&self,
|
||
cfg: StridedBatchedConfig<bf16>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Batched matrix multiplication with stride support on batch dimension. See nvidia docs Read more
|
||
Source
|
||
impl Gemm<f16> for CudaBlas
|
||
Source
|
||
unsafe fn gemm<A: DevicePtr<f16>, B: DevicePtr<f16>, C: DevicePtrMut<f16>>(
|
||
&self,
|
||
cfg: GemmConfig<f16>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Matrix matrix multiplication. See nvidia docs Read more
|
||
Source
|
||
unsafe fn gemm_strided_batched<A: DevicePtr<f16>, B: DevicePtr<f16>, C: DevicePtrMut<f16>>(
|
||
&self,
|
||
cfg: StridedBatchedConfig<f16>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Batched matrix multiplication with stride support on batch dimension. See nvidia docs Read more
|
||
Source
|
||
impl Gemm<f32> for CudaBlas
|
||
Source
|
||
unsafe fn gemm<A: DevicePtr<f32>, B: DevicePtr<f32>, C: DevicePtrMut<f32>>(
|
||
&self,
|
||
cfg: GemmConfig<f32>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Matrix matrix multiplication. See nvidia docs Read more
|
||
Source
|
||
unsafe fn gemm_strided_batched<A: DevicePtr<f32>, B: DevicePtr<f32>, C: DevicePtrMut<f32>>(
|
||
&self,
|
||
cfg: StridedBatchedConfig<f32>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Batched matrix multiplication with stride support on batch dimension. See nvidia docs Read more
|
||
Source
|
||
impl Gemm<f64> for CudaBlas
|
||
Source
|
||
unsafe fn gemm<A: DevicePtr<f64>, B: DevicePtr<f64>, C: DevicePtrMut<f64>>(
|
||
&self,
|
||
cfg: GemmConfig<f64>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Matrix matrix multiplication. See nvidia docs Read more
|
||
Source
|
||
unsafe fn gemm_strided_batched<A: DevicePtr<f64>, B: DevicePtr<f64>, C: DevicePtrMut<f64>>(
|
||
&self,
|
||
cfg: StridedBatchedConfig<f64>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Batched matrix multiplication with stride support on batch dimension. See nvidia docs Read more
|
||
Source
|
||
impl Gemv<f32> for CudaBlas
|
||
Source
|
||
unsafe fn gemv<A: DevicePtr<f32>, X: DevicePtr<f32>, Y: DevicePtrMut<f32>>(
|
||
&self,
|
||
cfg: GemvConfig<f32>,
|
||
a: &A,
|
||
x: &X,
|
||
y: &mut Y,
|
||
) -> Result<(), CublasError>
|
||
Matrix vector multiplication. Read more
|
||
Source
|
||
impl Gemv<f64> for CudaBlas
|
||
Source
|
||
unsafe fn gemv<A: DevicePtr<f64>, X: DevicePtr<f64>, Y: DevicePtrMut<f64>>(
|
||
&self,
|
||
cfg: GemvConfig<f64>,
|
||
a: &A,
|
||
x: &X,
|
||
y: &mut Y,
|
||
) -> Result<(), CublasError>
|
||
Matrix vector multiplication. Read more
|
||
Source
|
||
impl Send for CudaBlas
|
||
Source
|
||
impl Sync for CudaBlas
|
||
Auto Trait Implementations
|
||
impl Freeze for CudaBlas
|
||
impl RefUnwindSafe for CudaBlas
|
||
impl Unpin for CudaBlas
|
||
impl UnwindSafe for CudaBlas
|
||
Blanket Implementations
|
||
Source
|
||
impl<T> Any for T
|
||
where
|
||
T: 'static + ?Sized,
|
||
Source
|
||
impl<T> Borrow<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> BorrowMut<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> From<T> for T
|
||
Source
|
||
impl<T, U> Into<U> for T
|
||
where
|
||
U: From<T>,
|
||
Source
|
||
impl<T, U> TryFrom<U> for T
|
||
where
|
||
U: Into<T>,
|
||
Source
|
||
impl<T, U> TryInto<U> for T
|
||
where
|
||
U: TryFrom<T>,
|
||
Source
|
||
impl<V, T> VZip<V> for T
|
||
where
|
||
V: MultiLane<T>,
|
||
|
||
-------------------------------
|
||
|
||
Struct GemmConfig Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
pub struct GemmConfig<T> {
|
||
pub transa: cublasOperation_t,
|
||
pub transb: cublasOperation_t,
|
||
pub m: c_int,
|
||
pub n: c_int,
|
||
pub k: c_int,
|
||
pub alpha: T,
|
||
pub lda: c_int,
|
||
pub ldb: c_int,
|
||
pub beta: T,
|
||
pub ldc: c_int,
|
||
}
|
||
Configuration for Gemm
|
||
|
||
Fields
|
||
transa: cublasOperation_t
|
||
transb: cublasOperation_t
|
||
m: c_int
|
||
n: c_int
|
||
k: c_int
|
||
alpha: T
|
||
lda: c_int
|
||
ldb: c_int
|
||
beta: T
|
||
ldc: c_int
|
||
Trait Implementations
|
||
Source
|
||
impl<T: Clone> Clone for GemmConfig<T>
|
||
Source
|
||
fn clone(&self) -> GemmConfig<T>
|
||
Returns a duplicate of the value. Read more
|
||
1.0.0 · Source
|
||
fn clone_from(&mut self, source: &Self)
|
||
Performs copy-assignment from source. Read more
|
||
Source
|
||
impl<T: Debug> Debug for GemmConfig<T>
|
||
Source
|
||
fn fmt(&self, f: &mut Formatter<'_>) -> Result
|
||
Formats the value using the given formatter. Read more
|
||
Source
|
||
impl<T: Copy> Copy for GemmConfig<T>
|
||
Auto Trait Implementations
|
||
impl<T> Freeze for GemmConfig<T>
|
||
where
|
||
T: Freeze,
|
||
impl<T> RefUnwindSafe for GemmConfig<T>
|
||
where
|
||
T: RefUnwindSafe,
|
||
impl<T> Send for GemmConfig<T>
|
||
where
|
||
T: Send,
|
||
impl<T> Sync for GemmConfig<T>
|
||
where
|
||
T: Sync,
|
||
impl<T> Unpin for GemmConfig<T>
|
||
where
|
||
T: Unpin,
|
||
impl<T> UnwindSafe for GemmConfig<T>
|
||
where
|
||
T: UnwindSafe,
|
||
Blanket Implementations
|
||
Source
|
||
impl<T> Any for T
|
||
where
|
||
T: 'static + ?Sized,
|
||
Source
|
||
impl<T> Borrow<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> BorrowMut<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> CloneToUninit for T
|
||
where
|
||
T: Clone,
|
||
Source
|
||
impl<T> From<T> for T
|
||
Source
|
||
impl<T, U> Into<U> for T
|
||
where
|
||
U: From<T>,
|
||
Source
|
||
impl<T> ToOwned for T
|
||
where
|
||
T: Clone,
|
||
Source
|
||
impl<T, U> TryFrom<U> for T
|
||
where
|
||
U: Into<T>,
|
||
Source
|
||
impl<T, U> TryInto<U> for T
|
||
where
|
||
U: TryFrom<T>,
|
||
Source§
|
||
impl<V, T> VZip<V> for T
|
||
where
|
||
V: MultiLane<T>,
|
||
|
||
-----------------------------
|
||
|
||
Struct GemvConfig Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
pub struct GemvConfig<T> {
|
||
pub trans: cublasOperation_t,
|
||
pub m: c_int,
|
||
pub n: c_int,
|
||
pub alpha: T,
|
||
pub lda: c_int,
|
||
pub incx: c_int,
|
||
pub beta: T,
|
||
pub incy: c_int,
|
||
}
|
||
Configuration for Gemv
|
||
|
||
Fields
|
||
trans: cublasOperation_t
|
||
m: c_int
|
||
n: c_int
|
||
alpha: T
|
||
lda: c_int
|
||
incx: c_int
|
||
beta: T
|
||
incy: c_int
|
||
Trait Implementations
|
||
Source
|
||
impl<T: Clone> Clone for GemvConfig<T>
|
||
Source
|
||
fn clone(&self) -> GemvConfig<T>
|
||
Returns a duplicate of the value. Read more
|
||
1.0.0 · Source
|
||
fn clone_from(&mut self, source: &Self)
|
||
Performs copy-assignment from source. Read more
|
||
Source
|
||
impl<T: Debug> Debug for GemvConfig<T>
|
||
Source
|
||
fn fmt(&self, f: &mut Formatter<'_>) -> Result
|
||
Formats the value using the given formatter. Read more
|
||
Source
|
||
impl<T: Copy> Copy for GemvConfig<T>
|
||
Auto Trait Implementations
|
||
impl<T> Freeze for GemvConfig<T>
|
||
where
|
||
T: Freeze,
|
||
impl<T> RefUnwindSafe for GemvConfig<T>
|
||
where
|
||
T: RefUnwindSafe,
|
||
impl<T> Send for GemvConfig<T>
|
||
where
|
||
T: Send,
|
||
impl<T> Sync for GemvConfig<T>
|
||
where
|
||
T: Sync,
|
||
impl<T> Unpin for GemvConfig<T>
|
||
where
|
||
T: Unpin,
|
||
impl<T> UnwindSafe for GemvConfig<T>
|
||
where
|
||
T: UnwindSafe,
|
||
Blanket Implementations
|
||
Source
|
||
impl<T> Any for T
|
||
where
|
||
T: 'static + ?Sized,
|
||
Source
|
||
impl<T> Borrow<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> BorrowMut<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> CloneToUninit for T
|
||
where
|
||
T: Clone,
|
||
Source
|
||
impl<T> From<T> for T
|
||
Source
|
||
impl<T, U> Into<U> for T
|
||
where
|
||
U: From<T>,
|
||
Source
|
||
impl<T> ToOwned for T
|
||
where
|
||
T: Clone,
|
||
Source
|
||
impl<T, U> TryFrom<U> for T
|
||
where
|
||
U: Into<T>,
|
||
Source
|
||
impl<T, U> TryInto<U> for T
|
||
where
|
||
U: TryFrom<T>,
|
||
Source§
|
||
impl<V, T> VZip<V> for T
|
||
where
|
||
V: MultiLane<T>,
|
||
|
||
------------------------------
|
||
Struct StridedBatchedConfig Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
pub struct StridedBatchedConfig<T> {
|
||
pub gemm: GemmConfig<T>,
|
||
pub batch_size: c_int,
|
||
pub stride_a: c_longlong,
|
||
pub stride_b: c_longlong,
|
||
pub stride_c: c_longlong,
|
||
}
|
||
Configuration for Gemm strided batched call
|
||
|
||
Fields
|
||
gemm: GemmConfig<T>
|
||
batch_size: c_int
|
||
stride_a: c_longlong
|
||
stride_b: c_longlong
|
||
stride_c: c_longlong
|
||
Trait Implementations
|
||
Source
|
||
impl<T: Clone> Clone for StridedBatchedConfig<T>
|
||
Source
|
||
fn clone(&self) -> StridedBatchedConfig<T>
|
||
Returns a duplicate of the value. Read more
|
||
1.0.0 · Source
|
||
fn clone_from(&mut self, source: &Self)
|
||
Performs copy-assignment from source. Read more
|
||
Source
|
||
impl<T: Debug> Debug for StridedBatchedConfig<T>
|
||
Source
|
||
fn fmt(&self, f: &mut Formatter<'_>) -> Result
|
||
Formats the value using the given formatter. Read more
|
||
Source
|
||
impl<T: Copy> Copy for StridedBatchedConfig<T>
|
||
Auto Trait Implementations
|
||
impl<T> Freeze for StridedBatchedConfig<T>
|
||
where
|
||
T: Freeze,
|
||
impl<T> RefUnwindSafe for StridedBatchedConfig<T>
|
||
where
|
||
T: RefUnwindSafe,
|
||
impl<T> Send for StridedBatchedConfig<T>
|
||
where
|
||
T: Send,
|
||
impl<T> Sync for StridedBatchedConfig<T>
|
||
where
|
||
T: Sync,
|
||
impl<T> Unpin for StridedBatchedConfig<T>
|
||
where
|
||
T: Unpin,
|
||
impl<T> UnwindSafe for StridedBatchedConfig<T>
|
||
where
|
||
T: UnwindSafe,
|
||
Blanket Implementations
|
||
Source
|
||
impl<T> Any for T
|
||
where
|
||
T: 'static + ?Sized,
|
||
Source
|
||
impl<T> Borrow<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> BorrowMut<T> for T
|
||
where
|
||
T: ?Sized,
|
||
Source
|
||
impl<T> CloneToUninit for T
|
||
where
|
||
T: Clone,
|
||
Source
|
||
impl<T> From<T> for T
|
||
Source
|
||
impl<T, U> Into<U> for T
|
||
where
|
||
U: From<T>,
|
||
Source
|
||
impl<T> ToOwned for T
|
||
where
|
||
T: Clone,
|
||
Source
|
||
impl<T, U> TryFrom<U> for T
|
||
where
|
||
U: Into<T>,
|
||
Source
|
||
impl<T, U> TryInto<U> for T
|
||
where
|
||
U: TryFrom<T>,
|
||
Source§
|
||
impl<V, T> VZip<V> for T
|
||
where
|
||
V: MultiLane<T>,
|
||
|
||
-------------------------------
|
||
|
||
Trait Asum Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
pub trait Asum<T> {
|
||
// Required method
|
||
unsafe fn asum<X: DevicePtr<T>>(
|
||
&self,
|
||
cfg: AsumConfig,
|
||
x: &X,
|
||
result: &mut T,
|
||
) -> Result<(), CublasError>;
|
||
}
|
||
Sum of absolute values with elements of type T.
|
||
|
||
Required Methods
|
||
Source
|
||
unsafe fn asum<X: DevicePtr<T>>(
|
||
&self,
|
||
cfg: AsumConfig,
|
||
x: &X,
|
||
result: &mut T,
|
||
) -> Result<(), CublasError>
|
||
Sum of absolute values. See nvidia docs
|
||
|
||
Safety
|
||
This is unsafe because improper arguments may lead to invalid memory accesses.
|
||
|
||
Dyn Compatibility
|
||
This trait is not dyn compatible.
|
||
|
||
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
|
||
|
||
Implementors
|
||
Source
|
||
impl Asum<f32> for CudaBlas
|
||
Source
|
||
impl Asum<f64> for CudaBlas
|
||
|
||
--------------------------------------
|
||
|
||
Trait Gemm Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
pub trait Gemm<T> {
|
||
// Required methods
|
||
unsafe fn gemm<A: DevicePtr<T>, B: DevicePtr<T>, C: DevicePtrMut<T>>(
|
||
&self,
|
||
cfg: GemmConfig<T>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>;
|
||
unsafe fn gemm_strided_batched<A: DevicePtr<T>, B: DevicePtr<T>, C: DevicePtrMut<T>>(
|
||
&self,
|
||
cfg: StridedBatchedConfig<T>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>;
|
||
}
|
||
Matrix matrix multiplication with elements of type T.
|
||
|
||
Required Methods
|
||
Source
|
||
unsafe fn gemm<A: DevicePtr<T>, B: DevicePtr<T>, C: DevicePtrMut<T>>(
|
||
&self,
|
||
cfg: GemmConfig<T>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Matrix matrix multiplication. See nvidia docs
|
||
|
||
Safety
|
||
This is unsafe because improper arguments may lead to invalid memory accesses.
|
||
|
||
Source
|
||
unsafe fn gemm_strided_batched<A: DevicePtr<T>, B: DevicePtr<T>, C: DevicePtrMut<T>>(
|
||
&self,
|
||
cfg: StridedBatchedConfig<T>,
|
||
a: &A,
|
||
b: &B,
|
||
c: &mut C,
|
||
) -> Result<(), CublasError>
|
||
Batched matrix multiplication with stride support on batch dimension. See nvidia docs
|
||
|
||
Safety
|
||
This is unsafe because improper arguments may lead to invalid memory accesses.
|
||
|
||
Dyn Compatibility
|
||
This trait is not dyn compatible.
|
||
|
||
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
|
||
|
||
Implementors
|
||
Source
|
||
impl Gemm<f32> for CudaBlas
|
||
Source
|
||
impl Gemm<f64> for CudaBlas
|
||
Source
|
||
impl Gemm<bf16> for CudaBlas
|
||
Source
|
||
impl Gemm<f16> for CudaBlas
|
||
|
||
---------------------------------------
|
||
|
||
Trait Gemv Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
pub trait Gemv<T> {
|
||
// Required method
|
||
unsafe fn gemv<A: DevicePtr<T>, X: DevicePtr<T>, Y: DevicePtrMut<T>>(
|
||
&self,
|
||
cfg: GemvConfig<T>,
|
||
a: &A,
|
||
x: &X,
|
||
y: &mut Y,
|
||
) -> Result<(), CublasError>;
|
||
}
|
||
Matrix vector multiplication with elements of type T
|
||
|
||
Required Methods
|
||
Source
|
||
unsafe fn gemv<A: DevicePtr<T>, X: DevicePtr<T>, Y: DevicePtrMut<T>>(
|
||
&self,
|
||
cfg: GemvConfig<T>,
|
||
a: &A,
|
||
x: &X,
|
||
y: &mut Y,
|
||
) -> Result<(), CublasError>
|
||
Matrix vector multiplication.
|
||
|
||
Safety
|
||
This is unsafe because improper arguments may lead to invalid memory accesses.
|
||
|
||
Dyn Compatibility
|
||
This trait is not dyn compatible.
|
||
|
||
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
|
||
|
||
Implementors
|
||
Source
|
||
impl Gemv<f32> for CudaBlas
|
||
Source
|
||
impl Gemv<f64> for CudaBlas
|
||
|
||
------------------------------------------
|
||
|
||
cudarc::cublas
|
||
Module result Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
Structs
|
||
CublasError
|
||
Functions
|
||
create_handle
|
||
Creates a handle to the cuBLAS library. See nvidia docs
|
||
dasum⚠
|
||
Double precision sum of abosolute values. See nvidia docs
|
||
destroy_handle⚠
|
||
Destroys a handle previously created with create_handle(). See nvidia docs
|
||
dgemm⚠
|
||
Double precision matmul. See nvidia docs
|
||
dgemm_strided_batched⚠
|
||
Double precision batched matmul. See nvidia docs
|
||
dgemv⚠
|
||
Double precision matrix vector multiplication. See nvidia docs
|
||
gemm_ex⚠
|
||
Matmul with data types specified as parameters. See nvidia docs
|
||
gemm_strided_batched_ex⚠
|
||
Strided batched matmul with data types specified as parameters. See nvidia docs
|
||
hgemm⚠
|
||
Half precision matmul. See nvidia docs
|
||
hgemm_strided_batched⚠
|
||
Half precision batched matmul. See nvidia docs
|
||
sasum⚠
|
||
Single precision sum of abosolute values. See nvidia docs
|
||
set_stream⚠
|
||
Sets the stream cuBLAS will use. See nvidia docs
|
||
sgemm⚠
|
||
Single precision matmul. See nvidia docs
|
||
sgemm_strided_batched⚠
|
||
Single precision batched matmul. See nvidia docs
|
||
sgemv⚠
|
||
Single precision matrix vector multiplication. See nvidia docs
|
||
|
||
-----------------------------------------
|
||
cudarc::cublas
|
||
Module sys Copy item path
|
||
Source
|
||
Search
|
||
Settings
|
||
Help
|
||
|
||
Summary
|
||
Re-exports
|
||
pub use self::cudaDataType as cublasDataType_t;
|
||
pub use self::cudaDataType_t as cudaDataType;
|
||
pub use self::libraryPropertyType_t as libraryPropertyType;
|
||
Structs
|
||
CUstream_st
|
||
Lib
|
||
cublasContext
|
||
double2
|
||
float2
|
||
Enums
|
||
cublasAtomicsMode_t
|
||
cublasComputeType_t
|
||
cublasDiagType_t
|
||
cublasEmulationStrategy_t
|
||
cublasFillMode_t
|
||
cublasGemmAlgo_t
|
||
cublasMath_t
|
||
cublasOperation_t
|
||
cublasPointerMode_t
|
||
cublasSideMode_t
|
||
cublasStatus_t
|
||
cudaDataType_t
|
||
libraryPropertyType_t
|
||
Functions
|
||
cublasAsumEx⚠
|
||
cublasAsumEx_64⚠
|
||
cublasAxpyEx⚠
|
||
cublasAxpyEx_64⚠
|
||
cublasCaxpy_v2⚠
|
||
cublasCaxpy_v2_64⚠
|
||
cublasCcopy_v2⚠
|
||
cublasCcopy_v2_64⚠
|
||
cublasCdgmm⚠
|
||
cublasCdgmm_64⚠
|
||
cublasCdotc_v2⚠
|
||
cublasCdotc_v2_64⚠
|
||
cublasCdotu_v2⚠
|
||
cublasCdotu_v2_64⚠
|
||
cublasCgbmv_v2⚠
|
||
cublasCgbmv_v2_64⚠
|
||
cublasCgeam⚠
|
||
cublasCgeam_64⚠
|
||
cublasCgelsBatched⚠
|
||
cublasCgemm3m⚠
|
||
cublasCgemm3mBatched⚠
|
||
cublasCgemm3mBatched_64⚠
|
||
cublasCgemm3mEx⚠
|
||
cublasCgemm3mEx_64⚠
|
||
cublasCgemm3mStridedBatched⚠
|
||
cublasCgemm3mStridedBatched_64⚠
|
||
cublasCgemm3m_64⚠
|
||
cublasCgemmBatched⚠
|
||
cublasCgemmBatched_64⚠
|
||
cublasCgemmEx⚠
|
||
cublasCgemmEx_64⚠
|
||
cublasCgemmStridedBatched⚠
|
||
cublasCgemmStridedBatched_64⚠
|
||
cublasCgemm_v2⚠
|
||
cublasCgemm_v2_64⚠
|
||
cublasCgemvBatched⚠
|
||
cublasCgemvBatched_64⚠
|
||
cublasCgemvStridedBatched⚠
|
||
cublasCgemvStridedBatched_64⚠
|
||
cublasCgemv_v2⚠
|
||
cublasCgemv_v2_64⚠
|
||
cublasCgeqrfBatched⚠
|
||
cublasCgerc_v2⚠
|
||
cublasCgerc_v2_64⚠
|
||
cublasCgeru_v2⚠
|
||
cublasCgeru_v2_64⚠
|
||
cublasCgetrfBatched⚠
|
||
cublasCgetriBatched⚠
|
||
cublasCgetrsBatched⚠
|
||
cublasChbmv_v2⚠
|
||
cublasChbmv_v2_64⚠
|
||
cublasChemm_v2⚠
|
||
cublasChemm_v2_64⚠
|
||
cublasChemv_v2⚠
|
||
cublasChemv_v2_64⚠
|
||
cublasCher2_v2⚠
|
||
cublasCher2_v2_64⚠
|
||
cublasCher2k_v2⚠
|
||
cublasCher2k_v2_64⚠
|
||
cublasCher_v2⚠
|
||
cublasCher_v2_64⚠
|
||
cublasCherk3mEx⚠
|
||
cublasCherk3mEx_64⚠
|
||
cublasCherkEx⚠
|
||
cublasCherkEx_64⚠
|
||
cublasCherk_v2⚠
|
||
cublasCherk_v2_64⚠
|
||
cublasCherkx⚠
|
||
cublasCherkx_64⚠
|
||
cublasChpmv_v2⚠
|
||
cublasChpmv_v2_64⚠
|
||
cublasChpr2_v2⚠
|
||
cublasChpr2_v2_64⚠
|
||
cublasChpr_v2⚠
|
||
cublasChpr_v2_64⚠
|
||
cublasCmatinvBatched⚠
|
||
cublasCopyEx⚠
|
||
cublasCopyEx_64⚠
|
||
cublasCreate_v2⚠
|
||
cublasCrot_v2⚠
|
||
cublasCrot_v2_64⚠
|
||
cublasCrotg_v2⚠
|
||
cublasCscal_v2⚠
|
||
cublasCscal_v2_64⚠
|
||
cublasCsrot_v2⚠
|
||
cublasCsrot_v2_64⚠
|
||
cublasCsscal_v2⚠
|
||
cublasCsscal_v2_64⚠
|
||
cublasCswap_v2⚠
|
||
cublasCswap_v2_64⚠
|
||
cublasCsymm_v2⚠
|
||
cublasCsymm_v2_64⚠
|
||
cublasCsymv_v2⚠
|
||
cublasCsymv_v2_64⚠
|
||
cublasCsyr2_v2⚠
|
||
cublasCsyr2_v2_64⚠
|
||
cublasCsyr2k_v2⚠
|
||
cublasCsyr2k_v2_64⚠
|
||
cublasCsyr_v2⚠
|
||
cublasCsyr_v2_64⚠
|
||
cublasCsyrk3mEx⚠
|
||
cublasCsyrk3mEx_64⚠
|
||
cublasCsyrkEx⚠
|
||
cublasCsyrkEx_64⚠
|
||
cublasCsyrk_v2⚠
|
||
cublasCsyrk_v2_64⚠
|
||
cublasCsyrkx⚠
|
||
cublasCsyrkx_64⚠
|
||
cublasCtbmv_v2⚠
|
||
cublasCtbmv_v2_64⚠
|
||
cublasCtbsv_v2⚠
|
||
cublasCtbsv_v2_64⚠
|
||
cublasCtpmv_v2⚠
|
||
cublasCtpmv_v2_64⚠
|
||
cublasCtpsv_v2⚠
|
||
cublasCtpsv_v2_64⚠
|
||
cublasCtpttr⚠
|
||
cublasCtrmm_v2⚠
|
||
cublasCtrmm_v2_64⚠
|
||
cublasCtrmv_v2⚠
|
||
cublasCtrmv_v2_64⚠
|
||
cublasCtrsmBatched⚠
|
||
cublasCtrsmBatched_64⚠
|
||
cublasCtrsm_v2⚠
|
||
cublasCtrsm_v2_64⚠
|
||
cublasCtrsv_v2⚠
|
||
cublasCtrsv_v2_64⚠
|
||
cublasCtrttp⚠
|
||
cublasDasum_v2⚠
|
||
cublasDasum_v2_64⚠
|
||
cublasDaxpy_v2⚠
|
||
cublasDaxpy_v2_64⚠
|
||
cublasDcopy_v2⚠
|
||
cublasDcopy_v2_64⚠
|
||
cublasDdgmm⚠
|
||
cublasDdgmm_64⚠
|
||
cublasDdot_v2⚠
|
||
cublasDdot_v2_64⚠
|
||
cublasDestroy_v2⚠
|
||
cublasDgbmv_v2⚠
|
||
cublasDgbmv_v2_64⚠
|
||
cublasDgeam⚠
|
||
cublasDgeam_64⚠
|
||
cublasDgelsBatched⚠
|
||
cublasDgemmBatched⚠
|
||
cublasDgemmBatched_64⚠
|
||
cublasDgemmGroupedBatched⚠
|
||
cublasDgemmGroupedBatched_64⚠
|
||
cublasDgemmStridedBatched⚠
|
||
cublasDgemmStridedBatched_64⚠
|
||
cublasDgemm_v2⚠
|
||
cublasDgemm_v2_64⚠
|
||
cublasDgemvBatched⚠
|
||
cublasDgemvBatched_64⚠
|
||
cublasDgemvStridedBatched⚠
|
||
cublasDgemvStridedBatched_64⚠
|
||
cublasDgemv_v2⚠
|
||
cublasDgemv_v2_64⚠
|
||
cublasDgeqrfBatched⚠
|
||
cublasDger_v2⚠
|
||
cublasDger_v2_64⚠
|
||
cublasDgetrfBatched⚠
|
||
cublasDgetriBatched⚠
|
||
cublasDgetrsBatched⚠
|
||
cublasDmatinvBatched⚠
|
||
cublasDnrm2_v2⚠
|
||
cublasDnrm2_v2_64⚠
|
||
cublasDotEx⚠
|
||
cublasDotEx_64⚠
|
||
cublasDotcEx⚠
|
||
cublasDotcEx_64⚠
|
||
cublasDrot_v2⚠
|
||
cublasDrot_v2_64⚠
|
||
cublasDrotg_v2⚠
|
||
cublasDrotm_v2⚠
|
||
cublasDrotm_v2_64⚠
|
||
cublasDrotmg_v2⚠
|
||
cublasDsbmv_v2⚠
|
||
cublasDsbmv_v2_64⚠
|
||
cublasDscal_v2⚠
|
||
cublasDscal_v2_64⚠
|
||
cublasDspmv_v2⚠
|
||
cublasDspmv_v2_64⚠
|
||
cublasDspr2_v2⚠
|
||
cublasDspr2_v2_64⚠
|
||
cublasDspr_v2⚠
|
||
cublasDspr_v2_64⚠
|
||
cublasDswap_v2⚠
|
||
cublasDswap_v2_64⚠
|
||
cublasDsymm_v2⚠
|
||
cublasDsymm_v2_64⚠
|
||
cublasDsymv_v2⚠
|
||
cublasDsymv_v2_64⚠
|
||
cublasDsyr2_v2⚠
|
||
cublasDsyr2_v2_64⚠
|
||
cublasDsyr2k_v2⚠
|
||
cublasDsyr2k_v2_64⚠
|
||
cublasDsyr_v2⚠
|
||
cublasDsyr_v2_64⚠
|
||
cublasDsyrk_v2⚠
|
||
cublasDsyrk_v2_64⚠
|
||
cublasDsyrkx⚠
|
||
cublasDsyrkx_64⚠
|
||
cublasDtbmv_v2⚠
|
||
cublasDtbmv_v2_64⚠
|
||
cublasDtbsv_v2⚠
|
||
cublasDtbsv_v2_64⚠
|
||
cublasDtpmv_v2⚠
|
||
cublasDtpmv_v2_64⚠
|
||
cublasDtpsv_v2⚠
|
||
cublasDtpsv_v2_64⚠
|
||
cublasDtpttr⚠
|
||
cublasDtrmm_v2⚠
|
||
cublasDtrmm_v2_64⚠
|
||
cublasDtrmv_v2⚠
|
||
cublasDtrmv_v2_64⚠
|
||
cublasDtrsmBatched⚠
|
||
cublasDtrsmBatched_64⚠
|
||
cublasDtrsm_v2⚠
|
||
cublasDtrsm_v2_64⚠
|
||
cublasDtrsv_v2⚠
|
||
cublasDtrsv_v2_64⚠
|
||
cublasDtrttp⚠
|
||
cublasDzasum_v2⚠
|
||
cublasDzasum_v2_64⚠
|
||
cublasDznrm2_v2⚠
|
||
cublasDznrm2_v2_64⚠
|
||
cublasGemmBatchedEx⚠
|
||
cublasGemmBatchedEx_64⚠
|
||
cublasGemmEx⚠
|
||
cublasGemmEx_64⚠
|
||
cublasGemmGroupedBatchedEx⚠
|
||
cublasGemmGroupedBatchedEx_64⚠
|
||
cublasGemmStridedBatchedEx⚠
|
||
cublasGemmStridedBatchedEx_64⚠
|
||
cublasGetAtomicsMode⚠
|
||
cublasGetCudartVersion⚠
|
||
cublasGetEmulationStrategy⚠
|
||
cublasGetLoggerCallback⚠
|
||
cublasGetMathMode⚠
|
||
cublasGetMatrix⚠
|
||
cublasGetMatrixAsync⚠
|
||
cublasGetMatrixAsync_64⚠
|
||
cublasGetMatrix_64⚠
|
||
cublasGetPointerMode_v2⚠
|
||
cublasGetProperty⚠
|
||
cublasGetSmCountTarget⚠
|
||
cublasGetStatusName⚠
|
||
cublasGetStatusString⚠
|
||
cublasGetStream_v2⚠
|
||
cublasGetVector⚠
|
||
cublasGetVectorAsync⚠
|
||
cublasGetVectorAsync_64⚠
|
||
cublasGetVector_64⚠
|
||
cublasGetVersion_v2⚠
|
||
cublasIamaxEx⚠
|
||
cublasIamaxEx_64⚠
|
||
cublasIaminEx⚠
|
||
cublasIaminEx_64⚠
|
||
cublasIcamax_v2⚠
|
||
cublasIcamax_v2_64⚠
|
||
cublasIcamin_v2⚠
|
||
cublasIcamin_v2_64⚠
|
||
cublasIdamax_v2⚠
|
||
cublasIdamax_v2_64⚠
|
||
cublasIdamin_v2⚠
|
||
cublasIdamin_v2_64⚠
|
||
cublasIsamax_v2⚠
|
||
cublasIsamax_v2_64⚠
|
||
cublasIsamin_v2⚠
|
||
cublasIsamin_v2_64⚠
|
||
cublasIzamax_v2⚠
|
||
cublasIzamax_v2_64⚠
|
||
cublasIzamin_v2⚠
|
||
cublasIzamin_v2_64⚠
|
||
cublasLoggerConfigure⚠
|
||
cublasNrm2Ex⚠
|
||
cublasNrm2Ex_64⚠
|
||
cublasRotEx⚠
|
||
cublasRotEx_64⚠
|
||
cublasRotgEx⚠
|
||
cublasRotmEx⚠
|
||
cublasRotmEx_64⚠
|
||
cublasRotmgEx⚠
|
||
cublasSasum_v2⚠
|
||
cublasSasum_v2_64⚠
|
||
cublasSaxpy_v2⚠
|
||
cublasSaxpy_v2_64⚠
|
||
cublasScalEx⚠
|
||
cublasScalEx_64⚠
|
||
cublasScasum_v2⚠
|
||
cublasScasum_v2_64⚠
|
||
cublasScnrm2_v2⚠
|
||
cublasScnrm2_v2_64⚠
|
||
cublasScopy_v2⚠
|
||
cublasScopy_v2_64⚠
|
||
cublasSdgmm⚠
|
||
cublasSdgmm_64⚠
|
||
cublasSdot_v2⚠
|
||
cublasSdot_v2_64⚠
|
||
cublasSetAtomicsMode⚠
|
||
cublasSetEmulationStrategy⚠
|
||
cublasSetLoggerCallback⚠
|
||
cublasSetMathMode⚠
|
||
cublasSetMatrix⚠
|
||
cublasSetMatrixAsync⚠
|
||
cublasSetMatrixAsync_64⚠
|
||
cublasSetMatrix_64⚠
|
||
cublasSetPointerMode_v2⚠
|
||
cublasSetSmCountTarget⚠
|
||
cublasSetStream_v2⚠
|
||
cublasSetVector⚠
|
||
cublasSetVectorAsync⚠
|
||
cublasSetVectorAsync_64⚠
|
||
cublasSetVector_64⚠
|
||
cublasSetWorkspace_v2⚠
|
||
cublasSgbmv_v2⚠
|
||
cublasSgbmv_v2_64⚠
|
||
cublasSgeam⚠
|
||
cublasSgeam_64⚠
|
||
cublasSgelsBatched⚠
|
||
cublasSgemmBatched⚠
|
||
cublasSgemmBatched_64⚠
|
||
cublasSgemmEx⚠
|
||
cublasSgemmEx_64⚠
|
||
cublasSgemmGroupedBatched⚠
|
||
cublasSgemmGroupedBatched_64⚠
|
||
cublasSgemmStridedBatched⚠
|
||
cublasSgemmStridedBatched_64⚠
|
||
cublasSgemm_v2⚠
|
||
cublasSgemm_v2_64⚠
|
||
cublasSgemvBatched⚠
|
||
cublasSgemvBatched_64⚠
|
||
cublasSgemvStridedBatched⚠
|
||
cublasSgemvStridedBatched_64⚠
|
||
cublasSgemv_v2⚠
|
||
cublasSgemv_v2_64⚠
|
||
cublasSgeqrfBatched⚠
|
||
cublasSger_v2⚠
|
||
cublasSger_v2_64⚠
|
||
cublasSgetrfBatched⚠
|
||
cublasSgetriBatched⚠
|
||
cublasSgetrsBatched⚠
|
||
cublasSmatinvBatched⚠
|
||
cublasSnrm2_v2⚠
|
||
cublasSnrm2_v2_64⚠
|
||
cublasSrot_v2⚠
|
||
cublasSrot_v2_64⚠
|
||
cublasSrotg_v2⚠
|
||
cublasSrotm_v2⚠
|
||
cublasSrotm_v2_64⚠
|
||
cublasSrotmg_v2⚠
|
||
cublasSsbmv_v2⚠
|
||
cublasSsbmv_v2_64⚠
|
||
cublasSscal_v2⚠
|
||
cublasSscal_v2_64⚠
|
||
cublasSspmv_v2⚠
|
||
cublasSspmv_v2_64⚠
|
||
cublasSspr2_v2⚠
|
||
cublasSspr2_v2_64⚠
|
||
cublasSspr_v2⚠
|
||
cublasSspr_v2_64⚠
|
||
cublasSswap_v2⚠
|
||
cublasSswap_v2_64⚠
|
||
cublasSsymm_v2⚠
|
||
cublasSsymm_v2_64⚠
|
||
cublasSsymv_v2⚠
|
||
cublasSsymv_v2_64⚠
|
||
cublasSsyr2_v2⚠
|
||
cublasSsyr2_v2_64⚠
|
||
cublasSsyr2k_v2⚠
|
||
cublasSsyr2k_v2_64⚠
|
||
cublasSsyr_v2⚠
|
||
cublasSsyr_v2_64⚠
|
||
cublasSsyrk_v2⚠
|
||
cublasSsyrk_v2_64⚠
|
||
cublasSsyrkx⚠
|
||
cublasSsyrkx_64⚠
|
||
cublasStbmv_v2⚠
|
||
cublasStbmv_v2_64⚠
|
||
cublasStbsv_v2⚠
|
||
cublasStbsv_v2_64⚠
|
||
cublasStpmv_v2⚠
|
||
cublasStpmv_v2_64⚠
|
||
cublasStpsv_v2⚠
|
||
cublasStpsv_v2_64⚠
|
||
cublasStpttr⚠
|
||
cublasStrmm_v2⚠
|
||
cublasStrmm_v2_64⚠
|
||
cublasStrmv_v2⚠
|
||
cublasStrmv_v2_64⚠
|
||
cublasStrsmBatched⚠
|
||
cublasStrsmBatched_64⚠
|
||
cublasStrsm_v2⚠
|
||
cublasStrsm_v2_64⚠
|
||
cublasStrsv_v2⚠
|
||
cublasStrsv_v2_64⚠
|
||
cublasStrttp⚠
|
||
cublasSwapEx⚠
|
||
cublasSwapEx_64⚠
|
||
cublasUint8gemmBias⚠
|
||
cublasXerbla⚠
|
||
cublasZaxpy_v2⚠
|
||
cublasZaxpy_v2_64⚠
|
||
cublasZcopy_v2⚠
|
||
cublasZcopy_v2_64⚠
|
||
cublasZdgmm⚠
|
||
cublasZdgmm_64⚠
|
||
cublasZdotc_v2⚠
|
||
cublasZdotc_v2_64⚠
|
||
cublasZdotu_v2⚠
|
||
cublasZdotu_v2_64⚠
|
||
cublasZdrot_v2⚠
|
||
cublasZdrot_v2_64⚠
|
||
cublasZdscal_v2⚠
|
||
cublasZdscal_v2_64⚠
|
||
cublasZgbmv_v2⚠
|
||
cublasZgbmv_v2_64⚠
|
||
cublasZgeam⚠
|
||
cublasZgeam_64⚠
|
||
cublasZgelsBatched⚠
|
||
cublasZgemm3m⚠
|
||
cublasZgemm3m_64⚠
|
||
cublasZgemmBatched⚠
|
||
cublasZgemmBatched_64⚠
|
||
cublasZgemmStridedBatched⚠
|
||
cublasZgemmStridedBatched_64⚠
|
||
cublasZgemm_v2⚠
|
||
cublasZgemm_v2_64⚠
|
||
cublasZgemvBatched⚠
|
||
cublasZgemvBatched_64⚠
|
||
cublasZgemvStridedBatched⚠
|
||
cublasZgemvStridedBatched_64⚠
|
||
cublasZgemv_v2⚠
|
||
cublasZgemv_v2_64⚠
|
||
cublasZgeqrfBatched⚠
|
||
cublasZgerc_v2⚠
|
||
cublasZgerc_v2_64⚠
|
||
cublasZgeru_v2⚠
|
||
cublasZgeru_v2_64⚠
|
||
cublasZgetrfBatched⚠
|
||
cublasZgetriBatched⚠
|
||
cublasZgetrsBatched⚠
|
||
cublasZhbmv_v2⚠
|
||
cublasZhbmv_v2_64⚠
|
||
cublasZhemm_v2⚠
|
||
cublasZhemm_v2_64⚠
|
||
cublasZhemv_v2⚠
|
||
cublasZhemv_v2_64⚠
|
||
cublasZher2_v2⚠
|
||
cublasZher2_v2_64⚠
|
||
cublasZher2k_v2⚠
|
||
cublasZher2k_v2_64⚠
|
||
cublasZher_v2⚠
|
||
cublasZher_v2_64⚠
|
||
cublasZherk_v2⚠
|
||
cublasZherk_v2_64⚠
|
||
cublasZherkx⚠
|
||
cublasZherkx_64⚠
|
||
cublasZhpmv_v2⚠
|
||
cublasZhpmv_v2_64⚠
|
||
cublasZhpr2_v2⚠
|
||
cublasZhpr2_v2_64⚠
|
||
cublasZhpr_v2⚠
|
||
cublasZhpr_v2_64⚠
|
||
cublasZmatinvBatched⚠
|
||
cublasZrot_v2⚠
|
||
cublasZrot_v2_64⚠
|
||
cublasZrotg_v2⚠
|
||
cublasZscal_v2⚠
|
||
cublasZscal_v2_64⚠
|
||
cublasZswap_v2⚠
|
||
cublasZswap_v2_64⚠
|
||
cublasZsymm_v2⚠
|
||
cublasZsymm_v2_64⚠
|
||
cublasZsymv_v2⚠
|
||
cublasZsymv_v2_64⚠
|
||
cublasZsyr2_v2⚠
|
||
cublasZsyr2_v2_64⚠
|
||
cublasZsyr2k_v2⚠
|
||
cublasZsyr2k_v2_64⚠
|
||
cublasZsyr_v2⚠
|
||
cublasZsyr_v2_64⚠
|
||
cublasZsyrk_v2⚠
|
||
cublasZsyrk_v2_64⚠
|
||
cublasZsyrkx⚠
|
||
cublasZsyrkx_64⚠
|
||
cublasZtbmv_v2⚠
|
||
cublasZtbmv_v2_64⚠
|
||
cublasZtbsv_v2⚠
|
||
cublasZtbsv_v2_64⚠
|
||
cublasZtpmv_v2⚠
|
||
cublasZtpmv_v2_64⚠
|
||
cublasZtpsv_v2⚠
|
||
cublasZtpsv_v2_64⚠
|
||
cublasZtpttr⚠
|
||
cublasZtrmm_v2⚠
|
||
cublasZtrmm_v2_64⚠
|
||
cublasZtrmv_v2⚠
|
||
cublasZtrmv_v2_64⚠
|
||
cublasZtrsmBatched⚠
|
||
cublasZtrsmBatched_64⚠
|
||
cublasZtrsm_v2⚠
|
||
cublasZtrsm_v2_64⚠
|
||
cublasZtrsv_v2⚠
|
||
cublasZtrsv_v2_64⚠
|
||
cublasZtrttp⚠
|
||
culib⚠
|
||
is_culib_present⚠
|
||
Type Aliases
|
||
cuComplex
|
||
cuDoubleComplex
|
||
cuFloatComplex
|
||
cublasHandle_t
|
||
cublasLogCallback
|
||
cudaStream_t |