Skip to content

Commit 0c199c3

Browse files
committed
prepare for release
1 parent b771337 commit 0c199c3

1 file changed

Lines changed: 52 additions & 0 deletions

File tree

ChangeLog

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,57 @@
11
----------------------------------------------------------------------------
22

3+
DTLMod (0.4) February 16, 2026
4+
5+
Major improvements:
6+
- Data Reduction framework
7+
- New abstract ReductionMethod interface for extensible data reduction strategies
8+
- Decimation method: spatial subsampling with per-dimension stride, optional
9+
interpolation (linear, quadratic, cubic), configurable computational cost,
10+
and support for both publisher-side and subscriber-side application
11+
- Compression method: size reduction with preserved shape, supporting three
12+
compressor profiles (fixed ratio, SZ-inspired, and ZFP-inspired models),
13+
separate compression and decompression costs, and per-transaction ratio
14+
variability
15+
- Publisher-side reduction state is propagated to subscribers through
16+
inquire_variable, enabling detection and prevention of conflicting
17+
double reductions
18+
- Reduction operations work with both File and Staging engines
19+
- New documentation pages for the reduction feature (Reduction, Decimation,
20+
and Compression) and updated Main Concepts page
21+
- Improved test coverage
22+
- Comprehensive C++ and Python tests for both reduction methods
23+
- Coverage of error handling, parameter validation, re-parameterization,
24+
and publisher-subscriber workflows for each reduction method
25+
- New test for subscriber-first arrival pattern in File engine
26+
- Code quality and CI improvements
27+
- Improved coverage reporting with SonarQube and CodeFactor integration
28+
- Added subscriber synchronization barrier in File engine
29+
- Removed unnecessary defensive guards and race condition checks that
30+
cannot occur under SimGrid's maestro orchestration
31+
32+
API Changes:
33+
- New Stream method:
34+
- Stream::define_reduction_method(name) creates a named reduction method
35+
("decimation" or "compression") for the stream
36+
- New Variable methods and properties:
37+
- Variable::set_reduction_operation(method, parameters) applies a reduction
38+
with key-value parameters to a variable
39+
- Variable::is_reduced(), is_reduced_by_publisher(), is_reduced_by_subscriber()
40+
query the reduction state
41+
- Variable::get_reduction_method() retrieves the applied ReductionMethod
42+
- New ReductionMethod class with query methods:
43+
- get_reduced_variable_global_size(), get_reduced_variable_local_size()
44+
- get_reduced_variable_shape()
45+
- get_flop_amount_to_reduce_variable(), get_flop_amount_to_decompress_variable()
46+
- Full Python bindings for all reduction operations, including nine new
47+
exception types for parameter validation errors
48+
- Engine::put() now automatically simulates reduction cost and transports the
49+
reduced data size when the variable is reduced
50+
- Engine::get() now automatically simulates decompression cost after receiving
51+
compressed data
52+
53+
----------------------------------------------------------------------------
54+
355
DTLMod (0.3) January 19, 2026
456

557
Major improvements:

0 commit comments

Comments
 (0)