It's been a little while since I last wrote about Formak ( FormaK Under The Hood: Optimization for scikit-learn integration , Sat 08 October 2022). Since then, I've been busy adding functionality to FormaK and I've also been improving the tooling for the project, inspired by Boring Python: code quality. The latest piece of functionality is the C++ code generation. The PR is in progress, but the initial experiments have proved out that the generation pipeline is feasible and able to be integrated into bazel.
Articles tagged with SIMD
CPU Modeling: First Order Latency and Data Dependencies Building
This post is a new episode in a miniseries focused on modeling the workings of a CPU to use for generating optimal code. This post focuses on taking a sequence of instructions and simulating their results while respecting the latency of each instruction execution and data dependencies between instructions.
SIMD and Graphs: Partitioning Graphs into data-dependency levels Building
This post is a new episode in a miniseries focused on SIMD instructions. This second post focuses on fusing common single operations across multiple data
SIMD and Graphs: Graph Matching Building
This post is a new episode in a miniseries focused on SIMD instructions. This first post focuses on matching points in the compute graph where we can combine individual instructions to form SIMD instructions.