summaryrefslogtreecommitdiffstats
path: root/tools/h5repack/h5repack_filters.c
Commit message (Collapse)AuthorAgeFilesLines
* Split tools into src and test - remove foldersAllen Byrne2016-10-271-493/+0
|
* [svn-r30189] Description:Quincey Koziol2016-07-181-7/+10
| | | | | | | | | Clean up more warnings: drop the warning count from ~1310 down to ~940, with only 31 types of warnings in 148 files (down from 38 types in 167 files). Tested on: MacOSX/64 10.11.5 (amazon) w/serial & parallel (h5committest forthcoming)
* [svn-r24104] HDFFV-8345: add User Defined filters to h5repack.Allen Byrne2013-09-061-2/+15
| | | | | | Reviewed in H5T-61 Tested: local linux - cmake and autotools
* [svn-r21974] Update HSIZE_T print statements to use correct macro.Allen Byrne2012-02-231-3/+3
| | | | | | Fix some more HD prefix issues in tools. Tested: local linux
* [svn-r21586] Description:Jonathan Kim2011-10-141-0/+1
| | | | | | | | | Added a funtion to reset dataset & hyperslab buffer size for h5repack from an environment variable. This is performance debugging purpose for now. Tested: jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), Windows (32-LE), cmake
* [svn-r20103] Purpose:Jonathan Kim2011-02-141-2/+2
| | | | | | | | | | | | Change to use HDxxx macros. Description: Originally this started for fixing incorrect pointer usage. But that got fixed through coverity merge. So this is mainly changing to use HDxxx macros and clean up some related code. Tested: jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
* [svn-r20005] Purpose:Jonathan Kim2011-01-261-1/+0
| | | | | | | | Clean up tool code. Remove "h5test.h" from tool code. Currently only in h5repack. Tested: jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), linew (solaris-BE)
* [svn-r18759] pull r18757 from 1.8 branchAllen Byrne2010-05-111-0/+1
| | | | | | | | | Enable tools lib to be built as a dll on windows. Added two get/set functions for progname and d_status. Also add windows import/export declarations to functions. Updated error_mesg() and warn_mesg() to remove progname argument and use get functions Tested: Windows, linux
* [svn-r18413] Description:Quincey Koziol2010-03-171-1/+8
| | | | | | | | | | | | | | Unify srcdir handling for test executables and allow them to use the srcdir setting from configure time without requiring the 'srcdir' environment variable be set (although you still can, to override the built in setting). Attempted to get this right for Windows builds also. Also add dependency between src/H5Tinit.c and src/libhdf5.settings, so that the test/testcheck_version.sh script works correctly. Tested on: Linux/32 2.6 (jam) Mac OS X/32 10.6.2 (amazon)
* [svn-r18197] Description:Quincey Koziol2010-01-301-8/+8
| | | | | | | | | Trim trailing whitespace from source code files with this command: find . \( -name "*.[ch]" -or -name "*.cpp" -or -name "*.f90" \) -print |xargs -n 1 sed -i "" 's/[[:blank:]]*$//' Tested on: None - eyeballed only
* [svn-r17268] Description:Quincey Koziol2009-07-301-1/+1
| | | | | | | | | | | Bring r17266 from 1.8 branch to trunk: Clean up various compiler warnings from IRIX64 build Tested on: Mac OS X/32 (amazon) debug & production (yes, I know it's not an IRIX64 system :-) Too minor to require h5committest
* [svn-r17076] bug fix: h5repack was not applying a requested contiguous ↵Pedro Vicente Nunes2009-06-171-2/+10
| | | | | | | | layout for a dataset with filters added a test to the C program test (not to the script), that verifies the layout and filters tested: windows (development and tested manually) , linux, solaris
* [svn-r16663] cleaned compiler warnings in linuxPedro Vicente Nunes2009-04-031-0/+15
| | | | tested: linux
* [svn-r16614] 3. #1501 (B1) tools bug if dataset is larger than ↵Pedro Vicente Nunes2009-03-251-2/+7
| | | | | | | | | | | | H5TOOLS_BUFSIZE limit. ISSUE : the tools use the following formula to read by hyperslabs: hyperslab_size[i] = MIN( dim_size[i], H5TOOLS_BUFSIZE / datum_size) where H5TOOLS_BUFSIZE is a constant defined of 1024K. This is OK as long as the datum_size does not exceed 1024K, otherwise we have a hyperslab size of 0 (since 1024K/(greater than 1024K) = 0). This affects h5dump. h5repack, h5diff SOLUTION: add a check for a 0 size and define as 1 if so. TEST FOR H5DUMP: Defined a case in the h5dump test generator program of such a type (an array type of doubles with a large array dimension, that was the case the user reported). Since the written file commited in svn would be around 1024K, opted for not writing the data (the part of the code where the hyperslab is defined is executed, since h5dump always reads the files). Defined a macro WRITE_ARRAY to enable such writing if needed. Added a run on the h5dump shell script. Added 2 new files to svn: tools/testfiles/tarray8.ddl, tools/testfiles/tarray8.h5. NOTE: while doing this I thought of adding this dataset case to an existing file, but that would add the large array output to those files (the ddls). The issue is that the file list is increasing. TEST FOR H5DIFF: for h5diff the check for reading by hyperslabs is H5TOOLS_MALLOCSIZE (128 * H5TOOLS_BUFSIZE) or 128 Mb. This makes it not possible to add such a file to svn, so used the same method as h5dump (only write the dataset if WRITE_ARRAY is defined). As opposed to h5dump, the hyperslab code is NOT executed when the dataset is empty (dataset is not read). Added the new dataset to existing files and shell run (tools/h5diff/testfiles/h5diff_dset1.h5 and tools/h5diff/testfiles/h5diff_dset2.h5 and output in tools/h5diff/testfiles/h5diff_80.txt). TEST FOR H5REPACK: similar issue as h5diff with the difference that the hyperslab code is run. Added a run to the shell script (with a filter, otherwise the code uses H5Ocopy). tested: linux (h5commitest failed , apparently it did not detect the code changes in /tools/lib that fix the bug: the error in an assertion in the hyperslab of 0. I am sure that making h5ccomitest --distclean will detect the new code , but don't want to wait more 3 hours :-) )
* [svn-r16114] remove commented codePedro Vicente Nunes2008-11-211-13/+0
| | | | tested: windows, linux
* [svn-r16112] #1375. Define a default chunk whose size is manageable. Defined ↵Pedro Vicente Nunes2008-11-211-6/+44
| | | | | | currently as the same size of hyperslab (that compares the dimension sizes against a predefined constant size and chooses the minimum between the two) Tested : linux, windows
* [svn-r15628] Description:Quincey Koziol2008-09-161-47/+47
| | | | | | | | | | | | | Remove trailing whitespace from C/C++ source files, with the following script: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Tested on: Mac OS X/32 10.5.5 (amazon) No need for h5committest, just whitespace changes...
* [svn-r14368] clean code and reshufle functions between modules, remove ↵Pedro Vicente Nunes2008-01-031-48/+2
| | | | | | unused functions tested: windows, linux
* [svn-r14320] Added a function that matches the filters on the dataset's DCPL ↵Pedro Vicente Nunes2007-12-041-8/+8
| | | | | | | | and in the requested list Used to verify if the filters requested are present in the output dataset tested: windows, linux, solaris
* [svn-r14299] new feature: add support for h5repack to handle several global ↵Pedro Vicente Nunes2007-11-281-35/+38
| | | | | | | | filters usage is to repeat the -f option tested: windows, linux, solaris
* [svn-r14206] Description:Quincey Koziol2007-10-171-30/+6
| | | | | | | | | | | | | | | | | | | | Make H5Pget_filter API versioned and switch internal usage to H5Pget_filter2. Add regression test for H5Pget_filter1. Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.4.10 (amazon) in debug mode
* [svn-r13810] Pedro Vicente Nunes2007-05-241-4/+12
| | | | | | | | Minor tunings to output verbose messages: 1)when there is not a filter request do not print a message saying the filter was not apllied when the dataset was too small 2) avoid printing the message that has a list of objects to modify when there is none Tested:linux
* [svn-r13589] Pedro Vicente Nunes2007-04-041-2/+1
| | | | | | h5repack code cleaning (required reconfigure) tested: linux (32, 64, parallel), solaris
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | copyright notice. Tested platform: Kagiso only since it is only a comment block change. If it works in one machine, it should work in all, I hope. Still need to check the parallel build on copper.
* [svn-r12936] Pedro Vicente Nunes2006-11-171-322/+321
| | | | make h5repacktst clean a big file which name was changed to "h5repack_big_out.h5", do not use H5Ocopy only when the original DCPL has filters or a request is made for such, more code cleaning
* [svn-r12928] code revisionPedro Vicente Nunes2006-11-161-1/+1
|
* [svn-r12736] Description:Quincey Koziol2006-10-091-1/+0
| | | | | | | | | | | | | | | | | | | Add "use the latest format" support for dataspace object header encode/ decode routines and clean up format a bit for the latest format (new to 1.8.x releases) Remove storing 'perm' parameter for array datatypes in memory and the file, and add test to make certain that if any user applications are attempting to store them, we get some reports back. (Should be unlikely, since the RefMan says that the parameter is not implemented and is unsupported). Carry those changes into the tests, etc. Clean up a bunch more compiler warnings. Tested on: FreeBSD/32 4.11 (sleipnir) w/threadsafe Linux/32 2.4 (heping) w/FORTRAN & C++ Linux/64 2.4 (mir) w/enable-1.6-compat
* [svn-r12440] Purpose:Quincey Koziol2006-06-271-9/+9
| | | | | | | | | | | Code cleanup Description: Trim trailing whitespace in Makefile.am and C/C++ source files to make diffing changes easier. Platforms tested: None necessary, whitespace only change
* [svn-r12211] Purpose:Pedro Vicente Nunes2006-04-071-6/+3
| | | | | | | | | | | | | | | | new feature Description some more check in related to the print of compression ratios: print warning messages after the print of the dataset name and compression: Solution: Platforms tested: linux solaris AIX Misc. update:
* [svn-r12208] Purpose:Pedro Vicente Nunes2006-04-061-2/+10
| | | | | | | | | | | | | | | | new feature Description: some more formatting for the new printout of compression ratios Solution: Platforms tested: linux solaris AIX Misc. update:
* [svn-r12205] Purpose:Pedro Vicente Nunes2006-04-061-23/+0
| | | | | | | | | | | | | | | | new feature Description: added the printout of the compression ratio for filters in h5repack, after the filter name, obtained with H5Dget_storage_size, before and after applying the filter Solution: Platforms tested: linux solaris AIX Misc. update:
* [svn-r12159] Purpose:Pedro Vicente Nunes2006-03-271-13/+11
| | | | | | | | | | | | | | | | | bug fix Description: h5repack was not dealing with family files Solution: use the toolslib function h5tools_open to open the file instead of H5Fopen in h5repack Platforms tested: linux solaris AIX Misc. update:
* [svn-r11443] Purpose:Pedro Vicente Nunes2005-09-191-30/+27
| | | | | | | | | | | | | | | | | | | | | | new features Description: added support for the scale/offset filter there is a new filter symbol 'SOFF' -f SOFF=<scale_factor,scale_type> scale_factor = integer scale_type = 'IN' or 'DS' Solution: Platforms tested: Linux SunOS Misc. update:
* [svn-r11337] Purpose:Quincey Koziol2005-09-011-1/+1
| | | | | | | | | | | | Code cleanup Description: Changed some scale+offset filter symbols from H5_SO_... -> H5Z_SO_... to indicate that they are in the H5Z package. Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r11327] Purpose:MuQun Yang2005-08-311-1/+4
| | | | | | | | | | | | | Updating the filter based on H5Pset_scaleoffset API change. Description: Still more changes are needed for the filter for floating-point. Solution: Platforms tested: Misc. update:
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-93/+93
| | | | | | | | | | | | | | | | | | | | Code cleanup Description: Trim trailing whitespace, which is making 'diff'ing the two branches difficult. Solution: Ran this script in each directory: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r10679] Purpose:MuQun Yang2005-04-271-1/+1
| | | | | | | | | | | | | | H5Pset_scaleoffset API is changed due to addition of the floating-point filter. Description: Only add a parameter, nothing should change for the tool. Solution: Platforms tested: Linux 2.4 Misc. update:
* [svn-r10067] Purpose:Robert E. McGrath2005-02-231-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | feature Description: h5repack support for scaleoffset compression Checking in early to help debug the filter. Solution: Added messages and command line to handle new scale offset filter. Note: TESTS ARE DISABLED FOR NOW. The filter is not complete, repack tests may fail due to know problems. PLEASE DO NOT MESS WITH THE SCALEOFFSET TESTS AT THIS TIME. They will be enabled when the filter is ready. Platforms tested: verbena,copper,shanti Misc. update: MANIFEST
* [svn-r10009] Purpose:Robert E. McGrath2005-02-151-0/+11
| | | | | | | | | | | | | | | feature Description: support for nbit compression in h5repack Solution: Platforms tested: verbena,copper,shanti Misc. update: manifest
* [svn-r10000] Purpose:Pedro Vicente Nunes2005-02-141-0/+28
| | | | | | | | | | | | | | bug fix Description: in 1 case when there was not a requested layout, the original chunk was not preserved Solution: Platforms tested: linux (small change) Misc. update:
* [svn-r9727] Purpose:Quincey Koziol2004-12-291-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-) Description: Generally speaking, this is the "signed->unsigned" change to selections. However, in the process of merging code back, things got stickier and stickier until I ended up doing a big "sync the two branches up" operation. So... I brought back all the "infrastructure" fixes from the development branch to the release branch (which I think were actually making some improvement in performance) as well as fixed several bugs which had been fixed in one branch, but not the other. I've also tagged the repository before making this checkin with the label "before_signed_unsigned_changes". Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel & fphdf5 FreeBSD 4.10 (sleipnir) w/threadsafe FreeBSD 4.10 (sleipnir) w/backward compatibility Solaris 2.7 (arabica) w/"purify options" Solaris 2.8 (sol) w/FORTRAN & C++ AIX 5.x (copper) w/parallel & FORTRAN IRIX64 6.5 (modi4) w/FORTRAN Linux 2.4 (heping) w/FORTRAN & C++ Misc. update:
* [svn-r9572] Purpose:Pedro Vicente Nunes2004-11-241-112/+112
| | | | | | | | | | | | | | | | | bug fix Description: the routine for applying the layout for the new file of h5repack was not handling the logic correctly in cases where an input layout was not set Solution: changed the logic so that the original layout is preserved (this bug was introduced in the last change, October 19 04) Platforms tested: linux (small change) Misc. update:
* [svn-r9436] Purpose:Pedro Vicente Nunes2004-10-191-91/+202
| | | | | | | | | | | | | | | | | | | | | bug fix Description: Description: one case was not handled in the combination of input options (layout and filters) Solution: redo the algorythm that handles all cases Solution: Platforms tested: linux Misc. update:
* [svn-r9428] Purpose:Pedro Vicente Nunes2004-10-181-10/+19
| | | | | | | | | | | | | | | | | bug fix Description: when specifying both an input object e.g -f mydset:GZIP=1 and a defined chunk -l CHUNK=20x20 the filter used a defined default chunk instead Solution: add a check for the input chunk Platforms tested: linux (small change) Misc. update:
* [svn-r9121] Purpose:Pedro Vicente Nunes2004-08-191-249/+0
| | | | | | | | | | | | | | | | | | | | new feature Description: added a check that the chunk size must be smaller than pixels per block in SZIP request prints a message and exits, if not met Solution: Platforms tested: linux aix solaris Misc. update:
* [svn-r8904] Purpose:Pedro Vicente Nunes2004-07-201-11/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | h5diff and h5repack changes Description: h5diff introduced the following four modes of output: Normal mode: print the number of differences found and where they occured Report mode: print the above plus the differences Verbose mode: print the above plus a list of objects and warnings Quiet mode: do not print output (h5diff always returns an exit code of 1 when differences are found) h5repack added an extra parameter for SZIP filter (coding method) the new syntax is -f SZIP=<pixels per block,coding> (pixels per block is a even number in 2-32 and coding method is 'EC' or 'NN') Example of use: ./h5repack -i file1 -o file2 -f SZIP=8,NN -v updated usage messages, test scripts and files accordingly Solution: Platforms tested: linux AIX solaris Misc. update:
* [svn-r8882] Purpose:Pedro Vicente Nunes2004-07-151-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | bug fix, new feature Description: fixed bug in the parse function: cases where we have an already inserted name but there is a new name also example: -f dset1:GZIP=1 -l dset1,dset2:CHUNK=20x20 dset1 is already inserted, but dset2 must also be (it was not) added a CHECK_SZIP symbol to enable/disable checking of library related szip parameters added the print of the filter name in verbose mode (confirms visually that the filter was applied ) Solution: Platforms tested: linux solaris AIX Misc. update:
* [svn-r8869] Purpose:Pedro Vicente Nunes2004-07-131-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | h5repack changes Description: there were some requests to change some minor h5repack features h5repack only made a warning about a non available filter in verbose mode ( -v ) without -v it kept silent, and users sometimes missed this warning the request was that it should print this warning always. so, the new format, is e.g ./h5repack -i test_szip.h5 -o out.h5 Warning: dataset </dset_szip> cannot be read, SZIP filter is not available due to this, and to avoid a lot of these messages in the shell test script, I modified the script h5repack.sh so that it detects the presence of all filters in the environment (previously it only detected SZIP) the test files were also divided in more files , to make the script code easier to follow Solution: Platforms tested: linux AIX (no szip) solaris (no szip, no gzip ) Misc. update:
* [svn-r8781] James Laird2004-07-011-0/+11
| | | | | | | | | | | | | | | | Purpose: HDF5 now supports SZIP with no encoder. Description: SZIP can be configured to have both encoder and decoder or just to have the decoder. HDF5 can now query the configuration of any filter, and will throw errors if users try to write using a filter with encoding disabled. Solution: Added H5Zget_filter_info function, changed API for H5Pget_filter and H5P_get_filter_by_id. See SZIP RFC. Platforms tested: Copper (fortran, C++, parallel), Sleipnir (C++), Arabica (fortran, C++), Verbena (fortran, C++) Misc. update:
* [svn-r8383] Purpose:Quincey Koziol2004-04-181-4/+3
| | | | | | | | | | | | | Code cleanup Description: Clean up lots of warnings based on those reported from the SGI compilers as well as gcc. Platforms tested: SGI O3900, IRIX64 6.5 (Cheryl's SGI machine) FreeBSD 4.9 (sleipnir) w/ & w/o parallel h5committest