namespace
SushiBLAS::Core
- Declared in
include/SushiBLAS/core/blas_types.hpp
Contains
Enumerations
enum class TransposeSelects op(X) for a matrix operand.
See also
include/SushiBLAS/core/README.md
NO_TRANSop(X) = X.
TRANSop(X) = X^T.
CONJ_TRANSop(X) = X^H, which is X^T for a real element type.
enum class UploSelects the triangle of a symmetric, Hermitian or triangular matrix.
See also
include/SushiBLAS/core/README.md
UPPERThe triangle on and above the diagonal.
LOWERThe triangle on and below the diagonal.
enum class DiagSelects whether a triangular matrix has a unit diagonal.
See also
include/SushiBLAS/core/README.md
NON_UNITThe diagonal is read from the matrix.
UNITThe diagonal is taken as all ones and never read.
enum class SideSelects the side a triangular matrix stands on.
See also
include/SushiBLAS/core/README.md
LEFTop(A) * X.
RIGHTX * op(A).
enum class LayoutMemory layout strategies.
ROW_MAJORCOLUMN_MAJOR
enum class DataTypeEnumerates the element types a tensor can hold.
See also
include/SushiBLAS/core/README.md
HALFFLOAT32FLOAT64COMPLEX32COMPLEX64INT32INT64
enum class LogTypeLogging levels to filter messages.
OFFLogging is disabled.
ERROnly error messages.
WARNWarnings and errors.
INFOInfo, warnings and errors.
DEBUGAll messages including debug.
Variables
constexpr size_t MAX_TENSOR_RANK = 6Maximum number of supported tensor ranks.
constexpr LogType ACTIVE_LOG_LEVEL = LogType::SB_ACTIVE_LOG_LEVELThe level messages are compiled in at, from SB_ACTIVE_LOG_LEVEL.
Every SB_LOG_* macro tests against this in an if constexpr, so anything above the level costs nothing at all - not the formatting, not the source_location, not the call.
template <typename T>
constexpr bool is_complex_v = is_complex<T>::valueConvenience variable template for is_complex.
Template parameters
TThe type to inspect.
Functions
constexpr bool is_valid(Transpose value) noexceptReturns whether value is an enumerator of Transpose.
constexpr bool is_valid(Uplo value) noexceptReturns whether value is an enumerator of Uplo.
constexpr bool is_valid(Diag value) noexceptReturns whether value is an enumerator of Diag.
constexpr bool is_valid(Side value) noexceptReturns whether value is an enumerator of Side.
constexpr bool is_transposed(Transpose value) noexceptReturns whether op(X) swaps the rows and columns of X.
constexpr bool is_conjugated(Transpose value) noexceptReturns whether op(X) conjugates the elements of a complex X.
constexpr const char * to_string(Transpose value) noexceptReturns the name of a Transpose, or "UNKNOWN" outside the enumeration.
constexpr const char * to_string(Uplo value) noexceptReturns the name of a Uplo, or "UNKNOWN" outside the enumeration.
constexpr const char * to_string(Diag value) noexceptReturns the name of a Diag, or "UNKNOWN" outside the enumeration.
constexpr const char * to_string(Side value) noexceptReturns the name of a Side, or "UNKNOWN" outside the enumeration.
constexpr const char * to_string(DataType dtype)Returns the name of a DataType for diagnostics, or "UNKNOWN" outside the enumeration.
See also
include/SushiBLAS/core/README.md
constexpr bool is_complex_dtype(DataType dtype)Whether a DataType names one of the complex element types.
Parameters
dtypeThe data type to classify.
Returns
True for COMPLEX32 / COMPLEX64, false otherwise.
constexpr bool is_integer_dtype(DataType dtype)Returns whether a DataType is INT32 or INT64.
See also
include/SushiBLAS/core/README.md
constexpr bool is_real_dtype(DataType dtype)Whether a DataType names one of the real floating-point element types.
Parameters
dtypeThe data type to classify.
Returns
True for HALF / FLOAT32 / FLOAT64, false otherwise.
constexpr size_t bytes_per_element(DataType dtype)Returns the size in bytes of one element of a DataType.
See also
include/SushiBLAS/core/README.md
template <typename... Args>
std::string format(std::string_view fmt, const Args &... args)Substitutes the arguments into the replacement fields of fmt, left to right.
See also
include/SushiBLAS/core/README.md

