SiFive
Kernel Library
Optimize applications with tuned routines to realize the maximum performance for your SiFive RISC-V applications including neural networks, linear algebra, and signal processing

SiFive Kernel Library
SiFive Kernel Library (SKL) is a suite of tuned routines that maximize algorithm throughput on SiFive RISC-V Vector Processors. This is critical when you’re designing high-performance or low-power applications, you must get the maximum CPU utilization by implementing the best algorithm for the microarchitecture. These libraries seamlessly integrate with Freedom SDK for Metal and Linux and demonstrate the art of possible, achieving near-theoretical performance in high-performance workloads. The SiFive Kernel Library includes routines for:
- Neural networks (tensor definitions, activation fusion types, common operator attributes, tensor operations, helper functions)
- Signal processing (complex and real FFTs, FIR and IIR filters, convolution)
- Non-linear functions (exponential, logarithm, sine/cosine, hyperbolic tangent)
- Combinatorial algorithms (sorting, searching, partitioning, prefix-sum)
