2026

  • A C implementation of the Smith massager algorithm, 2026.
    [arXiv]
    We describe a C implementation of the Las Vegas algorithm of Birmpilis, Labahn and Storjohann from 2020 for computing the Smith normal form of a nonsingular integer matrix. The algorithm computes a Smith massager for the input matrix using bit operations, which is softly equivalent to the cost of multiplying two matrices of the same dimension and entry size. We describe the key implementation techniques that bridge the gap between the theoretical algorithm and practical performance, including BLAS-accelerated modular arithmetic via the Residue Number System and an adaptive batching scheme that collapses the theoretical O(logn) iterations to O(1) in practice. Experiments on matrices of dimension up to n=10007 show that the implementation’s running time scales proportionally to that of a single BLAS matrix multiplication, with both exhibiting the same effective growth rate on a log-log plot.

2023

  • ACPO: AI-Enabled Compiler-Driven Program Optimization.
    ACM Transactions on Architecture and Code Optimization (TACO), 2023.
    [arXiv]

    ACPO is an AI-enabled compiler framework, a novel framework that provides LLVM
    with simple and comprehensive tools to benefit from employing ML models for
    different optimization passes.