Skip to content

Latest commit

 

History

History
60 lines (35 loc) · 2.77 KB

decompression_performance.md

File metadata and controls

60 lines (35 loc) · 2.77 KB

Decompression performance

In order to measure the decompression performance, the acl_decompressor tool is used to extract the relevant metrics and a python script is used to parse them.

Here are the clips we measure on:

Note that the data is not yet conveniently packaged.

Here are the platforms we measure on:

  • Desktop: Ryzen 2950X @ 3.5 GHz
  • Phone: Android Pixel 3 @ 2.5 GHz (for v2.0 and earlier)
  • Phone: Android Pixel 7 @ 2.85 GHz (for v2.1 and later)
  • Tablet: iPad Pro 10.5 inch @ 2.39 GHz

We only show a few compilers and architectures to keep the graphs readable.

Unless otherwise specified, the results are from release 2.1.0

Uniformly sampled algorithm

The uniformly sampled algorithm offers consistent performance regardless of the playback direction. Shown here is the median performance of decompress_pose with a cold CPU cache for 3 clips with forward, backward, and random playback on the iPad.

Clip Name Forward Backward Random
104_30 0.910 us 0.961 us 0.960 us
Trooper_1 2.304 us 2.137 us 2.354 us
Trooper_Main 28.837 us 29.782 us 29.918 us

As can be seen, the performance is consistent regardless of the playback direction. It also remains consistent regardless of the clip sample rate and the clip playback rate.

decompress_pose

This function decompresses a whole pose in one go. Shown here is forward playback with a cold CPU cache.

Uniform decompress_pose CMU Performance Uniform decompress_pose Matinee Performance

Here is the delta with the previous version:

Uniform decompress_pose CMU Speed Delta

Uniform decompress_pose Matinee Speed Delta

decompress_bone

This function decompresses a single bone. To generate the graphs, we measure the cost of decompressing a whole pose one bone at a time. Shown here is forward playback with a cold CPU cache.

Uniform decompress_bone CMU Performance

Uniform decompress_bone Matinee Performance

Here is the delta with the previous version:

Uniform decompress_bone CMU Speed Delta

Uniform decompress_bone Matinee Speed Delta