Skip to content

パフォーマンスとメモリへの影響

概要

Stack Size Adjuster は最高のパフォーマンスを発揮し、メモリオーバーヘッドや NBT の肥大化を一切招かないよう設計されています。


⚡ 主なパフォーマンス最適化

  1. プリミティブ型による保持: 制限値は volatile int 変数として保持され、スタックチェック時に $O(1)$ のロックフリーで参照されます。
  2. NBT 肥大化ゼロ: カスタムタグを各アイテムに埋め込むのではなく、バニラのコンポーネントコーデック(DataComponents.MAX_STACK_SIZE)と ExtraCodecs.intRange を直接拡張します。ワールドの保存容量はバニラと同一です。
  3. ティック監視処理なし: 定期的なティックループ(EndTick, WorldTick)では一切処理を行いません。
  4. 安全な並行処理: アドオンのオーバーライドは CopyOnWriteArrayList で管理されています。

📊 ベンチマーク結果

測定項目実測値最適化手法
ヒープメモリ確保量$< 50\text{ KB}$チェック時のオブジェクト生成ゼロ
ワールド保存データ増加$+0\text{ バイト}$既存コンポーネントコーデックの流用
サーバーティック負荷 (MSPT)$0.00\text{ ms}$ロックフリーなプリミティブ参照
コンテナ破壊時の負荷 (MSPT)$< 0.50\text{ ms}$InventoryDropHelper によるエンティティ制限

Official documentation & web portal for Dasik Igaijinn mods.