Skip to content

Releases: mmtk/mmtk-core

MMTk 0.31.0

30 Apr 00:28
42a434b
Compare
Choose a tag to compare
MMTk 0.31.0 Pre-release
Pre-release

0.31.0 (2025-04-17)

What's Changed

Plan

Policy

Scheduler

  • Make work packet buffer size configurable from one location by @k-sareen in #1285
  • Make EDGES_WORK_BUFFER_SIZE constant public to bindings by @k-sareen in #1291

CI

Documentation

  • Special topic chapter for finalizers and weak references by @wks in #1265
  • User Guide chapter for address-based hashing by @wks in #1294

Misc

  • Move to Rust 1.83 by @qinsoon in #1253
  • Unique object enqueuing option by @wks in #1255
  • Fix a subtraction overflow in get_free_pages. by @wks in #1261
  • Force fixed heap size when using NoGC by @wks in #1264
  • Make GC triggering and heap resizing consistent by @wks in #1266
  • Bump MSRV to 1.74.1 by @wks in #1276
  • Fix clippy warning about operator precedence by @wks in #1280
  • Fixing MSRV-breaking dependencies by @wks in #1284
  • Check if an object is in our heap before using VM map during counting live bytes by @qinsoon in #1289
  • Aggregate live bytes info in on_gc_finished by @qinsoon in #1292
  • Fix broken stats gathering code if no. of GCs > MAX_PHASES by @k-sareen in #1295
  • Fix contiguous chunk iterator in monotonic PR by @wks in #1299

Full Changelog: v0.30.0...v0.31.0

MMTk 0.30.0

20 Dec 05:38
c0f9788
Compare
Choose a tag to compare
MMTk 0.30.0 Pre-release
Pre-release

0.30.0 (2024-12-20)

What's Changed

Policy

  • Allow setting object metadata for VM space objects. Expose VO bit under a feature. by @qinsoon in #1248

Misc

  • Fix clippy warnings for Rust 1.83 by @wks in #1242
  • Annotate mmap ranges using PR_SET_VMA by @wks in #1236
  • Fix warnings for lifetime in MmapAnnotation impl by @qinsoon in #1244
  • Collect live bytes per space, and report by space by @qinsoon in #1238
  • Minor changes for debugging. by @wks in #1245
  • Use macos-15 for style check by @qinsoon in #1249
  • Check the option before aggregating live bytes data. Panic if the option is enabled on malloc space. by @qinsoon in #1250

Full Changelog: v0.29.0...v0.30.0

MMTk 0.29.0

10 Nov 00:12
8640ab8
Compare
Choose a tag to compare
MMTk 0.29.0 Pre-release
Pre-release

0.29.0 (2024-11-08)

What's Changed

CI

Documentation

  • Document the policy about performance testing environment and epochs by @qinsoon in #1206

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

Full Changelog: v0.28.0...v0.29.0

MMTk 0.28.0

28 Sep 06:48
c4fdce0
Compare
Choose a tag to compare
MMTk 0.28.0 Pre-release
Pre-release

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

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

09 Aug 07:02
160b770
Compare
Choose a tag to compare
MMTk 0.27.0 Pre-release
Pre-release

0.27.0 (2024-08-09)

What's Changed

Policy

API

CI

  • Parallelize and workaround CI style checks by @wks in #1184

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

01 Jul 23:06
6cae51c
Compare
Choose a tag to compare
MMTk 0.26.0 Pre-release
Pre-release

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

17 May 09:44
dccce90
Compare
Choose a tag to compare
MMTk 0.25.0 Pre-release
Pre-release

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

  • Remove data race for marksweep block lists by @qinsoon in #1112

Scheduler

  • Remove coordinator and support forking by @wks in #1067

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 with mmap 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

Full Changelog: v0.24.0...v0.25.0

MMTk 0.24.0

08 Apr 10:52
86518d2
Compare
Choose a tag to compare
MMTk 0.24.0 Pre-release
Pre-release

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

09 Feb 06:22
2d3677d
Compare
Choose a tag to compare
MMTk 0.23.0 Pre-release
Pre-release

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

12 Jan 00:13
Compare
Choose a tag to compare
MMTk 0.22.1 Pre-release
Pre-release

0.22.1 (2024-01-11)

What's Changed

  • Revert a mistake in v0.22 that prevents cargo publish by @qinsoon in #1065

Full Changelog: v0.22.0...v0.22.1