git: 9a010091641e - main - science/sz3: Add sz3 3.2.1
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 03 Feb 2025 15:55:52 UTC
The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=9a010091641e98796d3d41e51d88bcbfafbc5ece commit 9a010091641e98796d3d41e51d88bcbfafbc5ece Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org> AuthorDate: 2025-02-03 15:12:15 +0000 Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org> CommitDate: 2025-02-03 15:50:42 +0000 science/sz3: Add sz3 3.2.1 SZ is a modular parametrizable lossy compressor framework for scientific data (floating point and integers). It has applications in simulations, AI and instruments. It is a production quality software and a research platform for lossy compression. SZ is open and transparent. Open because all interested researchers and students can study or contribute to it. Transparent because all performance improvements are detailed in publications. SZ can be used for classic use-cases: visualization, accelerating I/O, reducing memory and storage footprint and more advanced use-cases like compression of DNN models and training sets, acceleration of computation, checkpoint/restart, reducing streaming intensity and running efficiently large problems that cannot fit in memory. Other use-cases will augment this list as users find new opportunities to benefit from lossy compression of scientific data. SZ has implementations on CPU, GPU, and FPGA and is integrated in the main I/O libraries: HFD5, ADIOS, PnetCDF. --- science/Makefile | 1 + science/sz3/Makefile | 39 ++++++++++++++++++++++++++++ science/sz3/distinfo | 3 +++ science/sz3/pkg-descr | 16 ++++++++++++ science/sz3/pkg-plist | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 129 insertions(+) diff --git a/science/Makefile b/science/Makefile index 7c4802f84815..8a9535da9c1f 100644 --- a/science/Makefile +++ b/science/Makefile @@ -498,6 +498,7 @@ SUBDIR += spglib SUBDIR += spheral SUBDIR += step + SUBDIR += sz3 SUBDIR += tblite SUBDIR += teem SUBDIR += tfel diff --git a/science/sz3/Makefile b/science/sz3/Makefile new file mode 100644 index 000000000000..e65b8ad06873 --- /dev/null +++ b/science/sz3/Makefile @@ -0,0 +1,39 @@ +PORTNAME= sz3 +PORTVERSION= 3.2.1 +DISTVERSIONPREFIX= v +CATEGORIES= science + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Modular Error-bounded Lossy Compression Framework for Scientific Datasets +WWW= https://szcompressor.org/ \ + https://github.com/szcompressor/SZ3 + +LICENSE= BSD4CLAUSE +LICENSE_FILE= ${WRKSRC}/copyright-and-BSD-license.txt + +LIB_DEPENDS= libgsl.so:math/gsl \ + libzstd.so:archivers/zstd + +USES= cmake pkgconfig + +CMAKE_OFF= BUILD_H5Z_FILTER \ + BUILD_MDZ \ + SZ3_DEBUG_TIMINGS \ + SZ3_USE_BUNDLED_ZSTD +CMAKE_ON= BUILD_SHARED_LIBS \ + BUILD_STATIC_LIBS + +DATADIR= ${PREFIX}/share/SZ3 + +USE_GITHUB= yes +GH_ACCOUNT= szcompressor +GH_PROJECT= SZ3 + +post-patch: +# Clean up bundled libraries + @${RM} -r ${WRKSRC}/tools/zstd/ + +post-install: + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/sz3* + +.include <bsd.port.mk> diff --git a/science/sz3/distinfo b/science/sz3/distinfo new file mode 100644 index 000000000000..638b3b67e6a1 --- /dev/null +++ b/science/sz3/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1738088812 +SHA256 (szcompressor-SZ3-v3.2.1_GH0.tar.gz) = 24ed1c8159832734a241df66b857eca64d18a2e8e949ef583a2d0bfe01c6b7e1 +SIZE (szcompressor-SZ3-v3.2.1_GH0.tar.gz) = 4474033 diff --git a/science/sz3/pkg-descr b/science/sz3/pkg-descr new file mode 100644 index 000000000000..8cba5dafde49 --- /dev/null +++ b/science/sz3/pkg-descr @@ -0,0 +1,16 @@ +SZ is a modular parametrizable lossy compressor framework for scientific data +(floating point and integers). It has applications in simulations, AI and +instruments. It is a production quality software and a research platform for +lossy compression. SZ is open and transparent. Open because all interested +researchers and students can study or contribute to it. Transparent because all +performance improvements are detailed in publications. + +SZ can be used for classic use-cases: visualization, accelerating I/O, reducing +memory and storage footprint and more advanced use-cases like compression of DNN +models and training sets, acceleration of computation, checkpoint/restart, +reducing streaming intensity and running efficiently large problems that cannot +fit in memory. Other use-cases will augment this list as users find new +opportunities to benefit from lossy compression of scientific data. + +SZ has implementations on CPU, GPU, and FPGA and is integrated in the main I/O +libraries: HFD5, ADIOS, PnetCDF. diff --git a/science/sz3/pkg-plist b/science/sz3/pkg-plist new file mode 100644 index 000000000000..cbe94507605e --- /dev/null +++ b/science/sz3/pkg-plist @@ -0,0 +1,70 @@ +bin/sz3 +bin/sz3_smoke_test +include/SZ3/api/impl/SZAlgoInterp.hpp +include/SZ3/api/impl/SZAlgoLorenzoReg.hpp +include/SZ3/api/impl/SZAlgoNopred.hpp +include/SZ3/api/impl/SZDispatcher.hpp +include/SZ3/api/impl/SZImpl.hpp +include/SZ3/api/impl/SZImplOMP.hpp +include/SZ3/api/sz.hpp +include/SZ3/compressor/Compressor.hpp +include/SZ3/compressor/SZGenericCompressor.hpp +include/SZ3/compressor/SZIterateCompressor.hpp +include/SZ3/compressor/specialized/SZBlockInterpolationCompressor.hpp +include/SZ3/compressor/specialized/SZExaaltCompressor.hpp +include/SZ3/compressor/specialized/SZTruncateCompressor.hpp +include/SZ3/decomposition/Decomposition.hpp +include/SZ3/decomposition/InterpolationDecomposition.hpp +include/SZ3/decomposition/LorenzoRegressionDecomposition.hpp +include/SZ3/decomposition/NoPredictionDecomposition.hpp +include/SZ3/decomposition/TimeSeriesDecomposition.hpp +include/SZ3/def.hpp +include/SZ3/encoder/ArithmeticEncoder.hpp +include/SZ3/encoder/BypassEncoder.hpp +include/SZ3/encoder/Encoder.hpp +include/SZ3/encoder/HuffmanEncoder.hpp +include/SZ3/encoder/RunlengthEncoder.hpp +include/SZ3/lossless/Lossless.hpp +include/SZ3/lossless/Lossless_bypass.hpp +include/SZ3/lossless/Lossless_zstd.hpp +include/SZ3/predictor/ComposedPredictor.hpp +include/SZ3/predictor/LorenzoPredictor.hpp +include/SZ3/predictor/MetaLorenzoPredictor.hpp +include/SZ3/predictor/MetaRegressionPredictor.hpp +include/SZ3/predictor/PolyRegressionCoeffAux.hpp +include/SZ3/predictor/PolyRegressionCoeffAux.m +include/SZ3/predictor/PolyRegressionPredictor.hpp +include/SZ3/predictor/Predictor.hpp +include/SZ3/predictor/RegressionPredictor.hpp +include/SZ3/preprocessor/PreFilter.hpp +include/SZ3/preprocessor/PreProcessor.hpp +include/SZ3/preprocessor/Transpose.hpp +include/SZ3/preprocessor/Wavelet.hpp +include/SZ3/quantizer/LinearQuantizer.hpp +include/SZ3/quantizer/Quantizer.hpp +include/SZ3/utils/ByteUtil.hpp +include/SZ3/utils/Config.hpp +include/SZ3/utils/Extraction.hpp +include/SZ3/utils/FileUtil.hpp +include/SZ3/utils/Interpolators.hpp +include/SZ3/utils/Iterator.hpp +include/SZ3/utils/KmeansUtil.hpp +include/SZ3/utils/MemoryUtil.hpp +include/SZ3/utils/MetaDef.hpp +include/SZ3/utils/QuantOptimizatioin.hpp +include/SZ3/utils/Statistic.hpp +include/SZ3/utils/Timer.hpp +include/SZ3/utils/inih/INIReader.h +include/SZ3/utils/inih/LICENSE.txt +include/SZ3/utils/ska_hash/LICENSE.txt +include/SZ3/utils/ska_hash/bytell_hash_map.hpp +include/SZ3/utils/ska_hash/flat_hash_map.hpp +include/SZ3/utils/ska_hash/unordered_map.hpp +include/SZ3/version.hpp +include/SZ3/version.hpp.in +include/SZ3c/sz3c.h +lib/cmake/SZ3/SZ3Config.cmake +lib/cmake/SZ3/SZ3ConfigVersion.cmake +lib/cmake/SZ3/SZ3Targets.cmake +lib/libSZ3c.so +%%DATADIR%%/testfloat_8_8_128.dat