Saves substantial file space in the drmemtrace scheduler's record-replay file when cores are idling by combining consecutive idle entries.
Adds checks to all unit tests which create replay files; this requires access to the non-public record format, done via a helper class.
Also tested on several real applications: for one the record file drops from 34MB to 4K, matching the size of the as-traced schedule files. Even tiny applications like threadsig show clear reductions. Consecutive idle entries were ballooning these files. Large applications had multi-GB files; with this fix they are orders of magnitude smaller.
Saves substantial file space in the drmemtrace scheduler's record-replay file when cores are idling by combining consecutive idle entries.
Adds checks to all unit tests which create replay files; this requires access to the non-public record format, done via a helper class.
Also tested on several real applications: for one the record file drops from 34MB to 4K, matching the size of the as-traced schedule files. Even tiny applications like threadsig show clear reductions. Consecutive idle entries were ballooning these files. Large applications had multi-GB files; with this fix they are orders of magnitude smaller.
Issue: #6471, #6675 Fixes: #6675