The Apparat Benchmark uses four tools part of the Apparat framework to optimize a selection of SWC files. Each workload of the Apparat Benchmark optimizes a single SWC file using a pipeline of four Apparat tasks:

  1. First, the Stripper is invoked to removes all debug information from the input file.
  2. Next, the Turbo‐Diesel‐Sport‐Injection tool performs various bytecode transformations like, e.g., peephole optimizations.
  3. Then, the Reducer attempts advanced compression by merging ABC files and sorting the constant pool.
  4. Finally, the Dumper generates basic information on the reduced file as well an UML diagram in DOT format.

The input data to these tasks has been selected from among the various SWC files released by Adobe as part of the Open Source Flex SDK under the Mozilla Public License.


The Apparat Benchmark is externally single‐threaded and internally multi‐threaded, although the level on concurrency varies from task to task.


We are grateful to Joa Ebert for his advice on the real‐world usage of the Apparat tasks.