Contents

struct

SushiBLAS::Kernels::OperandAccess

Holds the row step, the column step and the conjugation of one operand's op(X).

Declared in
include/SushiBLAS/kernels/blas/operand_access.hpp

See also

include/SushiBLAS/kernels/README.md

Public attributes

int64_t row = 1

Elements to advance to move down one row of op(X).

int64_t col = 1

Elements to advance to move right one column of op(X).

bool conjugated = false

Whether a complex element is conjugated on read.

Public member functions

constexpr int64_t index(int64_t r, int64_t c) const noexcept

Returns the offset of element (r, c) of op(X) from the first element.

template <typename T>
constexpr T at(const T *p, int64_t r, int64_t c) const noexcept

Returns element (r, c) of op(X).

Precondition

(r, c) lies inside op(X).

constexpr OperandAccess transposed() const noexcept

Returns the access of the transpose of op(X), with the same conjugation.