Implementation - 2024.1 English

Vitis Libraries

Release Date
2024.1 English

The detail algorithm implementation is illustrated below:

Diagram of Dense Similarity

In the calculation of dense similarity, most of internal loop size is set by the config variables, so that the reference vertex is aligned with others. The calculation is simpler than Sparse Similarity Kernel. In the uint + float version, uint input is transformed to float by primitive internal logic. Then the calculation is done using float arithmetics. In the integer version, the 32-bit input is accumulated by 64-bit registers, and the output float similarity is the division result of two 64-bit integers. The overall diagram of dense similarity kernel has a insert sort module, which returns the top K number of similarity values. The maximum number of K is a template number that can be changed by rebuilding the xclbin. The default value of top K is 32.