Releases: CODARcode/libpressio
libpressio version 0.46.3
libpressio version 0.46.3
Bug Fixes
- MGARD apparently just switched their versioning scheme. Provide
default version number of 0 when they don't define all version number
parts.
libpressio version 0.46.2
libpressio version 0.46.2
Bug Fix
- Use a more intelligent way of finding MGARD headers that fails less
often.
libpressio version 0.46.1
libpressio version 0.46.1
Bug Fixes
- Fix several build failures on GCC-4.8 and add CI to ensure they don't
return.
libpressio version 0.46.0
libpressio version 0.46.0
Major Changes
- Potentially breaking change - libpressio now searches any parent
option, not just the global namespace when searching for an option. - Performance improvements to pressio_options by reducing allocating
conversions to std::string to only where strictly required through use
of std::string_view, perfect forwarding, and transparent comparisons.
Minor Changes:
- Added test case for Python bindings that uses io added in 0.45.0.
libpressio version 0.45.0
libpressio version 0.45.0
Major Changes
- Experimental support for LibPressio IO modules from the python binding
Minor Changes
- Added the QOI norm as a metric reported from MGARD
- Updated README with more up to date spack instructions
libpressio version 0.44.0
libpressio version 0.44.0
Major Changes
- Completely updated version of the MGARD plugin that support quality of
interest mode using libpressio metrics plugins. NOTE not all metrics
supported by libpressio are valid to use with MGARD QOI mode, only ones that
are "linear" such PSNR. - Added std::string_view to stdcompat this will be used in a future release to
improve performance by reducing copies
Minor Changes
- Updated the writing a compressor docs to use {get,set}_meta
Bug Fixes
- Fixed a bug where a void pointer was incorrectly defererenced in
pressio_option::get
libpressio version 0.42.2
libpressio version 0.42.2
Bug Fixes
- external:runtime was not not being included as was expected.
libpressio version 0.42.1
libpressio version 0.42.1
Bug Fixes:
- SZ supports using older versions again by protecting newer features
with conditional compilation - Documentation bug fix for ZFP
libpressio version 0.42.0
libpressio version 0.42.0
Major Changes
- All compressors now expose their metric via ${prefix}:metrics. This
is to enable better handling for compressor hierarchies. Setting a
metric this way, or with the old compressor_set_metrics function will
set this option. - New helper function set_meta_many and get_meta_many for configuring
meta objects when there are multiple children. - New helper class subgroup manager for mapping which buffers should be
passeed to recursive calls of compress_many vs decompress_many. Older
code was refactored to use this. - New metrics module noop which computes no metrics is now the default
for compressors instead of nullptr. This fixes some issues related to
using get_meta/set_meta with metrics - Breaking Change: the spatial_error module is no longer built by
default. This was to fix a problem where some compilers would issue
an error when they encounter an unknown pragma (#pragma omp parallel
for) without OpenMP enabled. This can be restored via
-DLIBPRESSIO_HAS_OPENMP=YES
Minor Changes
- many_dependent now exposes to_names and from_names to configure
variables to pass from one timestep to the next. - vastly improved error handling in many_dependent and many_independent
Bug Fixes
- distributed_manager now retains how many masters and how many workers
it has after a call to set_options. This resolves a bug where
distributed groups would un-intentionally revert after being set. - many_independent now passes the correct args to distributed_managers
constructor - the posix IO module now handles files larger than 2147479522 bytes the
most bytes that Linux will transfer in one call to read or write. - composite metrics now sets names and prefixes correctly and has better
error handling when they are not. - external metric now correctly parses the supported version 4 and 5 of
the input/output specification. - external metric now reports stderr even if the process fails
- external metric now reports an error and no longer hangs if no command
is set. - many bug fixes to how distributed_build_groups computed group sizes
that were improper - Fixed linking to SZ to properly be private in test code
- Added test cases for IO to better handle some failure cases
- Updated some test cases which incorrectly depended return an exact
set of metrics rather than a subset.
libpressio 0.41.0
libpressio 0.41.0
Major Changes
-
Added APIs for to support multiple buffers to io, compressors, and
metrics! This is to support more efficient parallel semantics. For
now, assume that all inputs must be the same on all MPI ranks; but
this may be relaxed in the future. These methods end in_many
-
Added an C api to convert pressio_options to a human readable string.
-
pressio_data_for_each gained a mutable version
-
Configurable objects now have a
set_meta
andget_meta
to better
work with meta compressors and make them easier to write. -
Optionally depend upon LibDistributed to provide many_independent and
many_dependent meta-compressors that operate on multiple buffers in
parallel using LibDistributed. -
New helper class
pressio_distributed_manager
to help classes interface
with LibDistributed -
LibPressio types now implement the LibDistributed serialize-able
interface for the MPI backend -
time and size now provide
_many
callbacks -
new io module: empty which creates a zero-initialized io module
-
new metrics: kl_divergence, printer which logs what actions were
performed, ks_test which computes the kolomov-smirnov test, and
kth_error which computes the kth_error statistic -
initial support for FTK consider this metric module unstable
-
Update docker file to Fedora 32
Minor Changes
- stdcompat is now refactored into multiple headers to include less when
not needed - stdcompat now supports byte, data, size, nth_element, span, void_t, negation, minus and clamp
- pressio_registries now support
contains
andfind
methods - Additional const attributes added to parameters of factory functions where possible
- Updated existing methods to use
pressio_data::to_vector
,get_meta
andset_meta
where
possible. - libpressio now builds as a UNITY build for faster compiles when
directed. This is not the default because it harms debug-ability and
tooling with current versions of libtooling. - improved documentation
Bug Fixes
- fix segfault in MGARD test
- fix segfault in pressio_option_new_strings
- size no longer segfaults when passed a nullptr for output
- errno header added where it was required for some standard libraries
- Only clone the metric pointer when it is set when constructing compressors
- pressio_io_clone now has a correctly spelled return type