Compiler Support for Hardware Accelerators
Bioinformatics and graph dynamic-programming algorithms are slow and difficult to program due to their complex data dependencies. While recent work has introduced unified compilers for hyperdimensional-computing accelerators, there is still no analogous compiler support for dynamic-programming hardware accelerators, leaving developers dependent on manual, hardware-specific tuning. To address this gap, we developed a unified MLIR-based compiler that targets three different DP hardware accelerators. Our compiler automatically transforms high-level algorithms into highly optimized hardware instructions, eliminating manual tuning and making DP accelerators far easier to program and deploy.
Binary Code Size Reduction
Modern software binaries keep growing due to feature expansion, causing slow upgrades, higher maintenance costs, and performance issues in both mobile and large-scale applications. To combat code bloat, we developed DeduBB, a post-link optimizer that de-duplicates identical basic blocks across modules. Unlike earlier methods, it detects a wider range of redundant code patterns and replaces them with a lightweight save-and-jump sequence. Designed for scalability, DeduBB integrates with state-of-the-art post-link optimizers and uses profiling to safely reduce code size without harming performance.