Skip to content
uencoder

PPMd

PPMd is the context-modeling statistical compression algorithm developed by Dmitry Shkarin, using variable-order PPM models with arithmetic/range coding.

Purpose

It provides high compression ratios on text and structured data (above bzip2), serving as the high-ratio back end of 7z and RAR.

Mechanism

It maintains multi-order context models (PPM*), predicts the next symbol's probability from the context already seen, and outputs through an arithmetic/range coder. The model falls back between orders via an escape mechanism and updates adaptively.

Use cases

  • 7z high-ratio mode
  • RAR compression
  • Text archive compression

Related tools

References