Releases: mmtk/mmtk-core
Releases · mmtk/mmtk-core
MMTk 0.29.0
0.29.0 (2024-11-08)
What's Changed
CI
- Install cargo-msrv using stable toolchain. by @wks in #1215
- Update CI macos image by @qinsoon in #1216
- Performance history canary by @wks in #1209
- Change the default testing branch for Julia tests by @qinsoon in #1221
- Fix auto merge branches by @qinsoon in #1230
Documentation
Misc
- Fix a race between forwarding bits and VO bits. by @wks in #1214
- Remove space for nogc link by @Pat-Lafon in #1217
- Make env_logger an optional dependency by @wks in #1226
- Use modern syntax for optional dependencies by @wks in #1229
- Fix nightly build and add
inline
attributes to{un,}likely
by @k-sareen in #1228
New Contributors
- @Pat-Lafon made their first contribution in #1217
Full Changelog: v0.28.0...v0.29.0
MMTk 0.28.0
0.28.0 (2024-09-27)
What's Changed
API
- Require ObjectReference to point inside object by @wks in #1195
- Return if a GC ran or not for
handle_user_collection_request
by @k-sareen in #1205
CI
- Update ci-perf-kit to 0.7.6 by @qinsoon in #1199
- Update ci-perf-kit to plot epoch by @qinsoon in #1208
Misc
- Skip iterating through unallocated memory for
MonotonePageResource
by @k-sareen in #1189 - Fix find_last_non_zero_bit, and align metadata address before converting to data address. by @qinsoon in #1188
- Panic message and outdated comments by @wks in #1191
- Filter the result for find_prev_non_zero_value_fast to make sure it is in the search range by @qinsoon in #1192
- Assert OBJECT_REF_OFFSET_LOWER_BOUND invariant by @wks in #1194
- Minor fixes by @wks in #1196
- Add a feature immix_stress_copying by @qinsoon in #1202
- Update migration guide for #1205 by @qinsoon in #1211
Full Changelog: v0.27.0...v0.28.0
MMTk 0.27.0
0.27.0 (2024-08-09)
What's Changed
Policy
- Clear pin bits by @udesou in #1166
- Set the unlog bits for objects in the bootimage by @k-sareen in #1168
- Fix bug in line mark when
MARK_LINE_AT_SCAN_TIME=false
by @k-sareen in #1171
API
- Require object reference to be aligned by @qinsoon in #1159
- Internal pointer support by @qinsoon in #1165
- Heap traversal by @wks in #1174
CI
Misc
- Extensible eBPF timeline attributes by @wks in #1162
- Only map with executable permissions when using code space by @k-sareen in #1176
- Fix style check for Rust 1.80 by @qinsoon in #1178
- Extra assertions for mutators and epilogues by @wks in #1182
- Refactor iterate_meta_bits by @wks in #1181
Full Changelog: v0.26.0...v0.27.0
MMTk 0.26.0
0.26.0 (2024-07-01)
What's Changed
Policy
- Clear side forwarding bits properly by @wks in #1138
- Fix mark bit clearing in PrepareChunkMap by @wks in #1148
- Let MarkSweepSpace use BlockPageResource by @wks in #1150
- Add SweepChunk to native MarkSweepSpace by @wks in #1158
API
Documentation
- Fix broken link and stale descriptions in doc by @wks in #1139
- API migration guide. by @wks in #1133
- Add back
DummyVM
as a part of the porting guide. Minor changes to MMTk initialization in the porting guide. by @qinsoon in #1142 - Fix broken link to mmtk.h by @wks in #1149
Misc
- Fix clippy warnings for Rust 1.79 by @wks in #1151
- Display number of slots in timeline visualization by @wks in #1154
Full Changelog: v0.25.0...v0.26.0
MMTk 0.25.0
0.25.0 (2024-05-17)
What's Changed
Plan
- Allow roots to be pinned for StickyImmix nursery collections by @k-sareen in #1108
- Check
FULL_NURSERY_GC
for StickyImmix as well by @k-sareen in #1124
Policy
Scheduler
API
- Allow nursery size to be proportional to the heap size by @qinsoon in #1087
- Remove NULL ObjectReference by @wks in #1064
- Fix write barrier parameter type by @wks in #1130
- Allow querying if the current GC may move objects. by @wks in #1128
CI
- Use host toolchain and explicit target in CI script by @wks in #1109
- Fix ignores in merge check by @qinsoon in #1117
- Fix the openjdk test name in merge check by @qinsoon in #1119
Misc
- Bump dependencies after version 0.24 by @wks in #1105
- Don't use
PROT_EXEC
withmmap
on macos by @eileencodes in #1110 - Rename associated types in GCWorkContext by @wks in #1116
- Add missing pinning metadata to mock_vm by @wks in #1121
- Use to_address for SFT access by @wks in #1122
- Ensure reference objects are either traced or cleared by @wks in #1126
- Dump process map on
mmap
failure and fix typos by @k-sareen in #1127 - Fix compiler errors and warnings for Rust 1.78.0 by @wks in #1132
- Remove fl_map and refactor FreeListPageResoure by @wks in #953
New Contributors
- @eileencodes made their first contribution in #1110
Full Changelog: v0.24.0...v0.25.0
MMTk 0.24.0
0.24.0 (2024-04-08)
What's Changed
Misc
- Check and fix broken links in docs by @qinsoon in #1085
- Allow binding to implement GC trigger by @qinsoon in #1083
- Resolve issues for unit tests on 32 bits by @qinsoon in #1095
- Use SFTDenseChunkMap on 64bits when vm_space is enabled by @qinsoon in #1094
- Fix warnings with the stable Rust toolchain by @wks in #1099
- Use proper logging for the treadmill by @wks in #1101
Full Changelog: v0.23.0...v0.24.0
MMTk 0.23.0
0.23.0 (2024-02-09)
What's Changed
API
CI
- Stop using the deprecated set-output in our CI configs by @qinsoon in #1059
- Rename CI tests to minimal/extended tests by @qinsoon in #1073
- Properly get PR number for merge group by @qinsoon in #1077
Misc
- MMTk Enhancement Proposal by @wks in #1056
- Timeline visualization tool by @wks in #1022
- Add a document for project principles by @qinsoon in #1069
- Fix un-cleared VO bits for contiguous monotone PR by @wks in #1071
- Use live memory to estimate collection pages in mem balancer by @qinsoon in #1050
- Fix issues in sanity GC by @qinsoon in #1079
Full Changelog: v0.22.1...v0.23.0
MMTk 0.22.1
MMTk 0.22.0
0.22.0 (2023-12-21)
What's Changed
API
- Flush mutator buffers in
destroy_mutator
by @k-sareen in #1045 - NULL and movement check in process_edge by @wks in #1032
Documentation
- Mention revoking TLABs of all mutators after a GC by @k-sareen in #1018
- Add missing docs for the vm module by @qinsoon in #1021
- Add missing docs for some util modules by @qinsoon in #1024
- Add missing docs for the rest of the util module by @qinsoon in #1026
- Add missing docs for the rest of the code base (merge after #1026) by @qinsoon in #1028
- Update some stale comments by @k-sareen in #1036
CI
- Use new running scripts in ci-perf-kit by @qinsoon in #1005
- Upload perf build and log as artifacts (merge after #1005) by @qinsoon in #1011
- Fix multiple issues in recent CI changes by @qinsoon in #1014
- Fix CI for OpenJDK nogc config by @qinsoon in #1019
- Use ci-perf-kit 0.7.4: ignore runs with unmatched key/value in the logs. by @qinsoon in #1025
- Fix Ruby binding test repo checkout by @wks in #1048
Misc
- Post-release dependency version bump for v0.21.0 by @wks in #1013
- Introduce MockVM by @qinsoon in #1049
Full Changelog: v0.21.0...v0.22.0
MMTk 0.21.0
0.21.0 (2023-11-03)
What's Changed
Plan
- Move some states from BasePlan to GlobalState by @qinsoon in #949
- Extract set_collection_kind and set_gc_status by @qinsoon in #957
- Expose
is_emergency_collection
to VM bindings by @wks in #997
Policy
- Clear all side forwarding bits by @wks in #974
- Stop using the name "ForwardingWord" by @wks in #976
- Implement get_gc_trigger() for LockFreeImmortalSpace by @qinsoon in #1003
API
- Expose alloc_slow. Add a section in user guide about allocation optimization by @qinsoon in #967
- Use BumpPointer::default() by @qinsoon in #993
- Fix mention of
to_object_reference()
in comment by @k-sareen in #998
Documentation
- Fix rustdoc warnings in Rust 1.73 by @qinsoon in #978
- Add a section about debugging tips in user guide by @qinsoon in #987
- Update doc comments by @wks in #1000
- Add document for release by @qinsoon in #1007
- Move constants and add comments for stress copying by @wks in #1008
- Update bibtex of the tracing paper to include the DOI by @caizixian in #1009
CI
- Fix performance baseline workflow by @qinsoon in #971
- Allow auto merge binding PRs by @qinsoon in #988
- Apply a delay before we enable auto merge on a PR by @qinsoon in #992
- Use
cargo generate-lockfile
to update JikesRVM's Cargo.lock by @qinsoon in #996
Misc
Full Changelog: v0.20.0...v0.21.0