Domain-Specific Language Abstractions for Compression - Ray, Jessica; Brahmakshatriya, Ajav; Wang, Richard; Kamil, Shoaib; Reuther, Albert; Sze, Vivienne; Amarasinghe, Saman (DCC (Los Alamitos, Calif.), 2021)
Little attention has been given to language support for block-based compression algorithms, despite their high implementation complexity. Current implementations have to deal with both the intricacies of the algorithm itself, as well as the low-level optimizations necessary for generating fast code. However, many block-based compression algorithms share a common structure in terms of their data representations, data partitioning operations, and data traversals. In this work, we propose a set of high-level language abstractions that can succinctly capture this structure. These abstractions provide the building blocks for the development of a domain-specific language and an associated optimizing compiler. With compression-specific language support, researchers can focus on algorithm development rather than the low-level implementation details.