High-Performance Level-1 and Level-2 BLAS

Abstract

The introduction of the Basic Linear Algebra Subroutine (BLAS) in the 1970s paved the way for different libraries to solve the same problem with an improved approach and hardware. The new BLAS implementation led to High-Performance Computing (HPC) innovation. All the love went to the level 3 BLAS due to its humongous application in different fields, not bounded by computer science. However, level 1 and level 2 got neglected; we tried to solve the problem by introducing the new algorithm for the Vector-Vector dot product, Vector-Vector outer product and Matrix-Vector product, which improves the performance of these operations in a significant way. We are not introducing any library but algorithms, which improves upon the current state of art algorithms. Also, we rely on the FMA instruction, OpenMP, and the compiler to optimize the code rather than implementing the algorithm in assembly. Therefore, our current implementation is machine oblivious and depends on the compilers ability to optimize the code.

0

Turn this paper into a lesson

ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…