Adaptive and flexible dictionary code compression for embedded applications
2006 (English)In: Proceedings of the 2006 international conference on Compilers, architecture and synthesis for embedded systems, 2006, 113-124 p.Conference paper (Refereed)
Dictionary code compression is a technique where long instructions in the memory are replaced with shorter code words used as index in a table to look up the original instructions. We present a new view of dictionary code compression for moderately high-performance processors for embedded applications. Previous work with dictionary code compression has shown decent performance and energy savings results which we verify with our own measurement that are more thorough than previously published. We also augment previous work with a more thorough analysis on the effects of cache and line size changes. In addition, we introduce the concept of aggregated profiling to allow for two or more programs to share the same dictionary contents. Finally, we also introduce dynamic dictionaries where the dictionary contents is considered to be part of the context of a process and show that the performance overhead of reloading the dictionary contents on a context switch is negligible while on the same time we can save considerable energy with a more specialized dictionary contents.
Place, publisher, year, edition, pages
2006. 113-124 p.
Dictionary code compression, Instruction profiling, Processor architecture, Instruction memory bandwidth, Fetch path energy
IdentifiersURN: urn:nbn:se:kth:diva-89623DOI: 10.1145/1176760.1176776ScopusID: 2-s2.0-34547227226ISBN: 1-59593-543-6OAI: oai:DiVA.org:kth-89623DiVA: diva2:503173
CASES'2006, the 2006 international conference on Compilers, architecture and synthesis for embedded systems
QC 201202172012-02-172012-02-152012-02-17Bibliographically approved