5#include "../seq/impl.hpp"
9#ifdef NUMERICS_HAS_BLAS
14void warn_blas_unavailable() {
15#ifndef NUMERICS_HAS_BLAS
16 static bool warned =
false;
20 "[numerics] WARNING: Backend::blas requested but BLAS was not found at "
22 " Falling back to Backend::seq.\n"
23 " Install OpenBLAS and reconfigure: "
24 "apt install libopenblas-dev\n");
34#ifdef NUMERICS_HAS_BLAS
43#ifdef NUMERICS_HAS_BLAS
52#ifdef NUMERICS_HAS_BLAS
61#ifdef NUMERICS_HAS_BLAS
constexpr idx size() const noexcept
real dot(const Vector &x, const Vector &y)
void axpy(real alpha, const Vector &x, Vector &y)
real norm(const Vector &x)
void scale(Vector &v, real alpha)
real dot(const Vector &x, const Vector &y)
void scale(Vector &v, real alpha)
real norm(const Vector &x)
void axpy(real alpha, const Vector &x, Vector &y)
constexpr T ipow(T x) noexcept
Compute x^N at compile time via repeated squaring.