3. SZ supports many types of error bounds. The users can set absolute error bound, value-range based relative error bound, or a combination of the two bounds（with operator AND or OR). The users can also error bound mode to be PNSR-fixed, the point-wise relative error bound, etc. More details can be found in the configuration file (sz.config).
- The absolute error bound (denoted δ) is a constant, such as 1E-6. That is, the decompressed data Di′ must be in the range [Di − δ,Di + δ], where Di′ is referred as the decompressed value and Di is the original data value.
- As for the relative error bound, it is a linear function of the global data value range size, i.e., ∆=λr, where λ(∈(0,1)) and r refer to error bound ratio and range size respectively. For example, given a set of data, the range size r is equal to max (Di )− min (Di ), and the error bound can be written as λ( max (Di )− min (Di )). The relative error bound allows making sure that the compression error for any data point must be no greater than λ×100 percentage of the global data value range size.
- PSNR-fixed compression allows users to set a PSNR value, based on which the compressor will compress the data.
4. SZ supports three two compression modes (similar to Gzip): SZ_BEST_SPEED , SZ_DEFAULT_COMPRESSION, and SZ_BEST_COMPRESSION. SZ_BEST_SPEED results in the fastest compression. The best compression factor will be reached when using SZ_BEST_COMPRESSION and Gzip_BEST_COMPRESSION meanwhile. SZ_DEFAULT_COMPRESSION is a tradeoff between the The default setting is SZ_BEST_SPEED and SZCOMPRESSION + Gzip_BEST_COMPRESSIONSPEED.
5. More detailed usage and examples can be found under the directories doc/user-guide.pdf and example/ respectively, in the package.