書誌事項

タイトル別名
  • Program compression

抄録

<jats:p> With the emergence of software delivery platforms, code compression has become an important system component that strongly affects performance. This article presents PPMexe, a compression mechanism for program binaries that analyzes their syntax and semantics to achieve superior compression ratios. We use the generic paradigm of prediction by partial matching (PPM) as the foundation of our compression codec. PPMexe combines PPM with two preprocessing steps: ( <jats:italic>i</jats:italic> ) instruction rescheduling to improve prediction rates and ( <jats:italic>ii</jats:italic> ) heuristic partitioning of a program binary into streams with high autocorrelation. We improve the traditional PPM algorithm by ( <jats:italic>iii</jats:italic> ) using an additional alphabet of frequent variable-length supersymbols extracted from the input stream of fixed-length symbols. In addition, PPMexe features ( <jats:italic>iv</jats:italic> ) a low-overhead mechanism that enables decompression starting from an arbitrary instruction of the executable, a property pivotal for runtime software delivery. We implemented PPMexe for x86 binaries and tested it on several large applications. Binaries compressed using PPMexe were 18--24% smaller than files created using off-the-shelf PPMD, one of the best available compressors </jats:p>

収録刊行物

被引用文献 (1)*注記

もっと見る

キーワード

詳細情報 詳細情報について

問題の指摘

ページトップへ