rocblas_rot_ex Interface Reference

rocblas_rot_ex Interface Reference#

HIPFORT API Reference: hipfort_rocblas::rocblas_rot_ex Interface Reference
hipfort_rocblas::rocblas_rot_ex Interface Reference

! More...

Public Member Functions

integer(kind(rocblas_status_success)) function rocblas_rot_ex_ (handle, n, x, x_type, incx, y, y_type, incy, c, s, cs_type, execution_type)
 

Detailed Description

!

BLAS EX API

\details
rot_ex applies the Givens rotation matrix defined by c=cos(alpha) and s=sin(alpha) to vectors x and y.
    Scalars c and s may be stored in either host or device memory, location is specified by calling rocblas_set_pointer_mode.

In the case where cs_type is real:
    x := c  x + s  y
        y := c  y - s  x

In the case where cs_type is complex, the imaginary part of c is ignored:
    x := real(c)  x + s  y
        y := real(c)  y - conj(s)  x

Currently supported datatypes are as follows:

    ------------------------------------------------
    |  x_type | y_type  | cs_type | execution_type |
    |---------|---------|---------|----------------|
    |  bf16_r |  bf16_r | bf16_r  |  f32_r         |
    |  f16_r  |  f16_r  | f16_r   |  f32_r         |
    |  f32_r  |  f32_r  | f32_r   |  f32_r         |
    |  f64_r  |  f64_r  | f64_r   |  f64_r         |
    |  f32_c  |  f32_c  | f32_c   |  f32_c         |
    |  f32_c  |  f32_c  | f32_r   |  f32_c         |
    |  f64_c  |  f64_c  | f64_c   |  f64_c         |
    |  f64_c  |  f64_c  | f64_r   |  f64_c         |
    ------------------------------------------------

@param[in]
handle  [rocblas_handle]
        handle to the rocblas library context queue.
@param[in]
n       [rocblas_int]
        number of elements in the x and y vectors.
@param[inout]
x       device pointer storing vector x.
@param[in]
x_type [rocblas_datatype]
       specifies the datatype of vector x.
@param[in]
incx    [rocblas_int]
        specifies the increment between elements of x.
@param[inout]
y       device pointer storing vector y.
@param[in]
y_type [rocblas_datatype]
       specifies the datatype of vector y.
@param[in]
incy    [rocblas_int]
        specifies the increment between elements of y.
@param[in]
c       device pointer or host pointer storing scalar cosine component of the rotation matrix.
@param[in]
s       device pointer or host pointer storing scalar sine component of the rotation matrix.
@param[in]
cs_type [rocblas_datatype]
        specifies the datatype of c and s.
@param[in]
execution_type [rocblas_datatype]
               specifies the datatype of computation.

Member Function/Subroutine Documentation

◆ rocblas_rot_ex_()

integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_rot_ex::rocblas_rot_ex_ ( type(c_ptr), value  handle,
integer(c_int), value  n,
type(c_ptr), value  x,
integer(kind(rocblas_datatype_f16_r)), value  x_type,
integer(c_int), value  incx,
type(c_ptr), value  y,
integer(kind(rocblas_datatype_f16_r)), value  y_type,
integer(c_int), value  incy,
type(c_ptr), value  c,
type(c_ptr), value  s,
integer(kind(rocblas_datatype_f16_r)), value  cs_type,
integer(kind(rocblas_datatype_f16_r)), value  execution_type 
)

The documentation for this interface was generated from the following file: