Async

Async

异步通过多CPU核心和线程并行处理实体,提升实体性能。

Async - Minecraft 实体多线程模组 ⚙️

Async 通过跨多个 CPU 核心和线程并行处理实体,从而提升实体性能。

支持 Fabric 需要 Fabric API 适用于 NeoForge

可从 Modrinth 获取 在 GitHub 上查看源代码 在 Discord 上与我们交流

重要提醒❗

Async 目前处于 alpha 测试阶段,属于实验性模组。使用它可能导致实体行为异常或游戏崩溃。

Async 是什么?🤔

Async 提升了实体处理的性能。该模组利用多线程技术,让多个 CPU 核心在处理大量实体时能够提升性能。

💡 主要优势:

  • 改善 TPS:即使面对大量实体,也能保持稳定的刻(tick)时间。
  • 🚀 多线程:利用多个 CPU 核心进行并行实体处理。
  • 🎲 异步随机刻(实验性):异步处理随机刻以提升性能。

📋 要求

  • Minecraft:26.1 或更新版本
  • Java:25 或更新版本
  • 加载器:Fabric、Quilt 或 NeoForge
  • 依赖:Fabric API(适用于 Fabric/Quilt)

📊 性能对比(9000 个村民)

配置 TPS MSPT
Lithium + Async 20 41.8
Lithium(不使用 Async) 4.4 225.4
Purpur 5.72 176.18

🛠️ 测试配置

  • 处理器:AMD Ryzen 9 7950X3D
  • 内存:64 GB(分配 16 GB 给服务器)
  • Minecraft 版本:1.21.4
  • 实体数量:9000
  • 实体类型:村民
模组列表 Concurrent Chunk Management Engine、Fabric API、FerriteCore、Lithium、ScalableLux、ServerCore、StackDeobfuscator、TT20(TPS 修复器)、Tectonic、Very Many Players、Fabric Carpet。

⚠️ 不兼容的模组

  • ❌ Moonrise - 已知不兼容
  • ❌ Open Parties and Claims - 已知不兼容
  • ⚠️ ...也可能与其他模组存在冲突。

如果您在其他模组上遇到问题,请在我们的 GitHubDiscord 上报告。

🔧 命令

配置

  • /async config toggle — 在游戏中启用或禁用该模组(无需重启服务器)。使用此命令可即时查看 Async 如何优化您的服务器。
  • /async config reload — 从磁盘重新加载配置文件。
  • /async config setAsyncEntitySpawn [true|false] — 启用或禁用并行生物生成处理(默认禁用)。不提供参数时,显示当前值。警告:与 Carpet 模组的 lagFreeSpawning 规则不兼容。
  • /async config setAsyncRandomTicks [true|false] — 启用或禁用异步随机刻处理(实验性功能,默认禁用)。不提供参数时,显示当前值。
  • /async config synchronizedEntities — 列出当前同步处理的实体。默认为 minecraft:tntminecraft:itemminecraft:experience_orb
  • /async config synchronizedEntities add <entity|namespace:*> — 添加一个实体类型,或某个命名空间下的所有实体,到同步处理。
  • /async config synchronizedEntities remove <entity|namespace:*> — 从同步处理中移除一个实体类型,或某个命名空间下的所有实体。

统计

  • /async stats — 显示模组状态、异步生成和随机刻状态、实体总数以及使用中的线程数。
  • /async stats entity — 显示每个世界中的实体数量,以及其中有多少是异步处理的。
  • /async stats entity <number> — 额外显示数量最多的前 <number>(1-100)个实体类型,每个标记为 asyncsync。例如,/async stats entity 10 显示数量最多的前 10 个实体类型。
  • /async stats entity <number> <ticks> — 记录 <ticks> 个刻,然后显示前 <number> 个实体类型及其平均 mspt 使用情况。

⚙️ 配置

Async 也可以通过其配置文件进行配置:

  • disabled — 完全禁用该模组。
  • maxThreads — 要使用的线程数。默认为 -1(自动)
  • enableAsyncSpawn — 并行生物生成处理。
  • enableAsyncRandomTicks — 异步随机刻(实验性)。
  • synchronizedEntities — 必须在主线程上刻的实体类型。

📥 下载

该模组可在 Modrinth 上获取。

🔄 Minecraft 版本支持

仅对最新版本的 Minecraft 提供完全支持。不支持为更旧的 Minecraft 快照版本提供支持。

📭 反馈

我们的反馈和错误报告追踪器可在 GitHub 上获取: 在 GitHub 上报告问题

您也可以在 Discord 上与我们交流: 在 Discord 上与我们交流

🙌 致谢

该模组基于 MCMTFabric 的代码,而后者的代码又基于 JMT-MCMT。非常感谢 Grider 和 jediminer543 的宝贵贡献!