symv - 2023.2 English

Vitis Libraries

Release Date
2023.2 English
template  <typename t_DataType, unsigned int t_LogParEntries, typename t_IndexType = unsigned int>
void symv(const unsigned int p_n, const t_DataType p_alpha, hls::stream<WideType<t_DataType,(1<<t_LogParEntries)>>& p_M, hls::stream<WideType<t_DataType,(1<<t_LogParEntries)>>& p_x, const t_DataType p_beta, hls::stream<WideType<t_DataType,(1<<t_LogParEntries)>>& p_y, hls::stream<WideType<t_DataType,(1<<t_LogParEntries)>>& p_yr)

symv function that returns the result vector of the multiplication of a symmetric matrix and a vector y = alpha * M * x + beta * y


t_DataType the data type of the vector entries
t_LogParEntries log2 of the number of parallelly processed entries in the input vector
t_IndexType the datatype of the index
p_n the dimention of input matrix p_M, as well as the number of entries in the input vector p_x, p_n % l_ParEntries == 0
scalar alpha
p_M the input stream of packed Matrix entries
p_x the input stream of packed vector entries
scalar beta
p_y the output vector