Skip to content

CoreSwap 1.20.1-1.0.9

Pre-release
Pre-release

Choose a tag to compare

@unknowbug unknowbug released this 06 Aug 11:52

修复 Issue #7低线程数/老平台 CPU 吞吐严重倒退(i3-10105 4C8T 上 Chunky 6:59 vs vanilla 2:42)。

根因

默认线程数 = \hardware_concurrency()\(逻辑线程数)——4C8T 上开 8 线程 = SMT 过分配:执行单元争抢 + thread_local 缓存翻倍(8 份挤 L3)+ 内存带宽饱和 → 吞吐倒退 2.5x。

修复(1.0.9)

  1. 默认线程数改为 物理核数(Windows \GetLogicalProcessorInformationEx\ 数物理核,SMT 不重复计;未来可区分 P/E 核)——4C8T → 4 线程
  2. 可配:\CORESWAP_THREADS\ 环境变量 / -Dcoreswap.threads=N\(服务端/客户端同享,可做 A/B 测试)
  3. 顺带修复:WG_B3DDUMP 诊断插桩 getenv 每次采样调用(热路径 393 万次/批)导致性能暴跌——改一次性

验证

  • 主世界 100% 逐位一致保持
  • 本机(12 物理核)16 chunks 171ms(~10.7ms/chunk)

请 i3-10105 用户重测 Chunky radius 650(预期从 6:59 大幅回落;也可 -Dcoreswap.threads=4\ 对比验证)。