polinearsolver - 2023.2 English

Vitis Libraries

Release Date
2023-12-20
Version
2023.2 English
#include "LinearSolver/polinearsolver.hpp"
template <
    typename T,
    int NMAX,
    int NCU
    >
void polinearsolver (
    int n,
    T* A,
    int b,
    T* B,
    int lda,
    int ldb,
    int& info
    )

This function solves a system of linear equation with symmetric positive definite (SPD) matrix along with multiple right-hand side vector

\[\begin{equation*} {Ax=B}\end{equation*}\]

where \(A\) is a dense SPD triangular matrix of size \(m \times m\) , \(x\) is a vector need to be computed, and \(B\) is input vector.

The maximum matrix size supported in FPGA is templated by NMAX.

Parameters:

T data type (support float and double)
NMAX maximum number of rows/columns of input matrix
NCU number of computation unit
n number of rows/cols of matrix A
A input matrix of size \(n \times n\)
b number of columns of matrix B
B input matrix of size \(b \times n\) , and overwritten by the output matrix x
lda leading dimention of input matrix A
ldb leading dimention of input matrix B
info output info (unused)