跳到正文

Recoleta

A pure memory reduction mod for Minecraft

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

Recoleta

The mod ports the spirit of two JDK 25 JEPs into the running game without requiring a JDK 25 runtime:

JEP Native scope (JDK 25) Recoleta port Domain
519 – Compact Object Headers Shrinks every object header from 12 B to 8 B Encodes dominant Minecraft value data into compact primitive forms so typical per-instance footprint drops from 24-56 B to 8 B Header/value packing
521 – Generational Shenandoah Adds young/old generations to a low-pause concurrent GC Uses generational reuse pools, bounded per-tick reference draining, and heap-pressure callbacks to mimic low-pause locality inside the game loop Pooling and pressure-aware cleanup

Additional reduction paths

  • Bounded LRU with soft-reference values for cache-like workloads
  • Weak interning for repetitive strings to reduce duplicate heap copies
  • Thread-local reusable position/vector carriers for hot loops
  • Idle-time slack trimming for long-lived expandable buffers
  • Heap-pressure notifications wired to proactive eviction/reclaim callbacks
  • Per-render-style particle cap (below vanilla 16384) to reduce client memory spikes
  • Path collision caching now uses compact packed keys to reduce heavy key churn.
  • Path stepping reuses mutable vector slots to avoid transient vector allocations.
  • Spawn-distance checks use scalar math to avoid temporary geometry objects.
  • Hot spawn-position loops reuse mutable coordinate carriers instead of repeatedly allocating.
  • Small-NBT paths right-size backing maps for common tiny payloads.
  • NBT-load paths repack freshly-decoded compounds so loaded tags carry no slack.
  • Empty list-tag containers start with a small backing array sized for typical few-entry payloads (enchantments, lore, modifier lists).
  • Capability comparison short-circuits per-entry to avoid building two full tag snapshots on every item-stack equality check.
  • Chunk streaming packets start their block-entity list at a small capacity instead of the default 10-slot one.

Each reduction reports its hit count via the /recoleta memory status command so operators can verify a tuning is actually active.

Configuration

All toggles live in config/recoleta-memory.toml (Forge config). Edit at runtime; values are re-read on every access.

tips

Some changes are destructive, and I cannot guarantee that they will work well with all mods.

For the current release, any issues related to sable,Sinytra Connector,lithium and its derivatives will not be accepted, and compatibility with ModernFix and FerriteCore should be maintained.

常见问题

Recoleta 支持哪些 Minecraft 版本?

Recoleta 支持 Minecraft Java 版 1.19.2–1.21.1,共 3 个版本,可用的加载器:Fabric / Forge / NeoForge / Quilt。下载时注意选择和你游戏版本一致的文件。

Recoleta 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge / NeoForge / Quilt,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

CancriRecoleta 的其他作品

查看全部 →