gbmv - 2023.2 English

Vitis Libraries

Release Date
2023-12-20
Version
2023.2 English
template  <typename t_DataType, unsigned int t_ParEntries, unsigned int t_MaxRows, typename t_IndexType = unsigned int, typename t_MacType = t_DataType>
void gbmv(const unsigned int p_m, const unsigned int p_n, const unsigned int p_kl, const unsigned int p_ku, const t_DataType p_alpha, hls::stream<WideType<t_DataType, t_ParEntries>>& p_M, hls::stream<WideType<t_DataType, t_ParEntries>>& p_x, const t_DataType p_beta, hls::stream<WideType<t_DataType, t_ParEntries>>& p_y, hls::stream<WideType<t_DataType, t_ParEntries>>& p_yr)

gbmv function performs general banded matrix-vector multiplication matrix and a vector y = alpha * M * x + beta * y

Parameters:

t_DataType the data type of the vector entries
t_ParEntries the number of parallelly processed entries in the input vector
t_MaxRows the maximum size of buffers for output vector
t_IndexType the datatype of the index
t_MacType the datatype of the output stream
p_m the number of rows of input matrix p_M
p_alpha scalar alpha
p_M the input stream of packed Matrix entries
p_x the input stream of packed vector entries
p_beta scalar beta
p_y the output vector