Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Starting point to include SZ3 #224

Merged
merged 14 commits into from
Dec 6, 2022
Merged

Starting point to include SZ3 #224

merged 14 commits into from
Dec 6, 2022

Conversation

vasole
Copy link
Member

@vasole vasole commented Nov 29, 2022

This PR provides a starting point to include the filter.

Not all features are tested, but they are exposed to the user.

@vasole vasole marked this pull request as draft November 29, 2022 11:34
@vasole vasole mentioned this pull request Nov 29, 2022
@vasole vasole mentioned this pull request Nov 29, 2022
@vasole
Copy link
Member Author

vasole commented Nov 30, 2022

The SZ repository (not the SZ3) contains example test data in text and binary format. The test code inside the H5Z-SZ3 repository is expected to be used (once built and with the dlls in the used HDF5 library repository) as follows:

"C:\Program Files\HDF_Group\HDF5\1.10.6\bin\convertBinToHDF5.exe" -f data .\testdata\x86\testfloat_8_8_128.dat 8 8 128
"C:\Program Files\HDF_Group\HDF5\1.10.6\bin\convertBinToHDF5.exe" -d data .\testdata\x86\testdouble_8_8_128.dat 8 8 128

REM	printf("Usage: print_h5repack_args <options>\n");
REM	printf("Options:\n");
REM	printf("	-M <error bound mode> : 10 options as follows. \n");
REM	printf("		ABS (absolute error bound)\n");
REM	printf("		REL (value range based error bound, so a.k.a., VR_REL)\n");
REM	printf("		PSNR (peak signal-to-noise ratio)\n");
REM	printf("		NORM2 (norm2)\n");
REM	printf("	-A <absolute error bound>: specifying absolute error bound\n");
REM	printf("	-R <value_range based relative error bound>: specifying relative error bound\n");
REM	printf("	-N <norm2>: specifying norm2 error bound\n");
REM	printf("	-S <PSNR>: specifying PSNR\n");
REM	printf("* examples: \n");
REM	printf("	print_h5repack_args -M ABS -A 1E-3 (output: -f UD=32024,0,9,0,1062232653,3539053052,0,0,0,0,0,0)\n");
REM	printf("	print_h5repack_args -M REL -R 1E-4 (output: -f UD=32024,0,9,1,0,0,1058682594,3944497965,0,0,0,0)\n");
REM	exit(0);

"C:\Program Files\HDF_Group\HDF5\1.10.6\bin\h5repack.exe" -f UD=32024,1,9,0,1062232653,3539053052,0,0,0,0,0,0 .\testdata\x86\testfloat_8_8_128.dat.h5 .\testdata\x86\testfloat_8_8_128.dat.abs.h5
"C:\Program Files\HDF_Group\HDF5\1.10.6\bin\h5repack.exe" -f UD=32024,1,9,1,0,0,1058682594,3944497965,0,0,0,0 .\testdata\x86\testfloat_8_8_128.dat.h5 .\testdata\x86\testfloat_8_8_128.dat.rel.h5
"C:\Program Files\HDF_Group\HDF5\1.10.6\bin\h5repack.exe" -f UD=32024,1,9,0,1062232653,3539053052,0,0,0,0,0,0 .\testdata\x86\testdouble_8_8_128.dat.h5 .\testdata\x86\testdouble_8_8_128.dat.abs.h5
"C:\Program Files\HDF_Group\HDF5\1.10.6\bin\h5repack.exe" -f UD=32024,1,9,1,0,0,1058682594,3944497965,0,0,0,0 .\testdata\x86\testdouble_8_8_128.dat.h5 .\testdata\x86\testdouble_8_8_128.dat.rel.h5

The 1 after the filter number is to force the usage of the filter. Leaving the value to 0 makes the filter optional.

@vasole vasole marked this pull request as ready for review November 30, 2022 14:51
Copy link
Member

@t20100 t20100 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!
Some first comments/suggestions

src/hdf5plugin/_filters.py Outdated Show resolved Hide resolved
src/hdf5plugin/_filters.py Show resolved Hide resolved
src/hdf5plugin/_filters.py Outdated Show resolved Hide resolved
src/hdf5/include/H5Epublic.h Show resolved Hide resolved
setup.py Outdated Show resolved Hide resolved
setup.py Show resolved Hide resolved
setup.py Show resolved Hide resolved
setup.py Outdated Show resolved Hide resolved
setup.py Show resolved Hide resolved
setup.py Show resolved Hide resolved
vasole and others added 5 commits December 1, 2022 14:21
@t20100 t20100 merged commit 02cf436 into main Dec 6, 2022
@t20100 t20100 deleted the SZ3_base branch December 6, 2022 11:47
@t20100 t20100 added this to the Next release milestone Dec 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants