Trait BLAS1

Source
pub trait BLAS1<C: BLASContext>: Sized + Copy {
    // Required methods
    unsafe fn scal(
        ctx: C,
        n: i32,
        alpha: Self,
        x: DPtr<Self, C::Device>,
        incx: i32,
    );
    unsafe fn axpy(
        ctx: C,
        n: i32,
        alpha: Self,
        x: DPtr<Self, C::Device>,
        incx: i32,
        y: DPtr<Self, C::Device>,
        incy: i32,
    );
    unsafe fn dot(
        ctx: C,
        n: i32,
        x: DPtr<Self, C::Device>,
        incx: i32,
        y: DPtr<Self, C::Device>,
        incy: i32,
    ) -> Self;
}
Expand description

BLAS Level 1 operations (Vector only)

Required Methods§

Source

unsafe fn scal(ctx: C, n: i32, alpha: Self, x: DPtr<Self, C::Device>, incx: i32)

Computes

X = alpha * X

§Safety

This is often a call across an FFI barrier, so the links or devices need to be running and may perform UB unchecked by rust

Source

unsafe fn axpy( ctx: C, n: i32, alpha: Self, x: DPtr<Self, C::Device>, incx: i32, y: DPtr<Self, C::Device>, incy: i32, )

Computes

Y = alpha * X + Y

§Safety

This is often a call across an FFI barrier, so the links or devices need to be running and may perform UB unchecked by rust

Source

unsafe fn dot( ctx: C, n: i32, x: DPtr<Self, C::Device>, incx: i32, y: DPtr<Self, C::Device>, incy: i32, ) -> Self

Computes the vector dot product

§Safety

This is often a call across an FFI barrier, so the links or devices need to be running and may perform UB unchecked by rust

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§