Skip to content

Latest commit

 

History

History
30 lines (20 loc) · 1.24 KB

File metadata and controls

30 lines (20 loc) · 1.24 KB

TopoSZ

The implementation is described in "TopoSZ: Preserving Topology in Error-Bounded Lossy Compression".

Requirements

  • CMake
  • Zstandard
  • The Topology ToolKit (TTK) with Python bindings

Usage

TopoSZ has both Python and C++ components. The main executable is TopoSZ.py. In order to run TopoSZ, you will first need to build the C++ component. You can do this by running:

python3 TopoSZ.py -build

When building TopoSZ, you will be asked to provide an absolute file path to libzstd.so.

Once the C++ component is built, you can run TopoSZ using python3 TopoSZ.py. You can see the arguments required by using python3 TopoSZ.py -h.

Note that TopoSZ is currently designed for running experiments, and does not work as a standalone compressor. Each time that it is run, it will both compress and decompress that file specified by the user and report the results. You can write the results of a compression experiment to a csv file by using the -csv flag. If the CSV file already exists, the results will be appended to the end.

Notes

  • Code comments are still in progress.
  • Tested on Ubuntu 24.04.3 LTS with Python 3.12.3, cmake 3.28.3, Zstandard 1.5.8, and TTK 1.3.0