Compressing Variable-Length Instruction Traces - Zinsly, Raphael Moreira; Rigo, Sandro; Borin, Edson (Anais do Simpósio em Sistemas Computacionais de Alto Desempenho (SSCAD); 2012: Anais do XIII Simpósio em Sistemas Computacionais de Alto Desempenho, 2012)
Trace-driven simulation is a widely used technique to study computer architecture systems and to evaluate micro architecture features. A trace may contain execution information for billions or even trillions of instructions and storing these traces is a challenge itself. In this paper we describe VITC, a one-pass trace compression tool based in streams. VITC is based on SBC and compresses traces by exploiting the natural instruction and data redundancy in instruction streams. The VITC is capable of compressing traces of variable-length instructions, such as x86 instruction traces, and produces compressed files 87 times smaller than gzip and 47 times smaller than bzip2. The compressed traces produced by VITC are, on average, 1200 times smaller than the original ones.