N-body simulations and trajectory analysis rely on the calculation of attributes that depend on KernelFaRer is a pattern-matching framework that extends LLVM’s PatternMatch to capture code idioms (e.g. GEMM and SY2K) and replace them with calls to high-performance implementations of such idioms. KernelFaRer can replace idioms with calls to CBLAS — a standard interface across popular linear algebra libraries (e.g. MKL, ESSL, OpenBLAS, and BLIS) —, Eigen via a custom runtime, and LLVM IR’s matrix-multiply intrinsics.
https://github.com/jaopaulolc/KernelFaRer