Phase 1 完了:環境変数整理 + fprintf デバッグガード ENV変数削除(BG/HotMag系): - core/hakmem_tiny_init.inc: HotMag ENV 削除 (~131 lines) - core/hakmem_tiny_bg_spill.c: BG spill ENV 削除 - core/tiny_refill.h: BG remote 固定値化 - core/hakmem_tiny_slow.inc: BG refs 削除 fprintf Debug Guards (#if !HAKMEM_BUILD_RELEASE): - core/hakmem_shared_pool.c: Lock stats (~18 fprintf) - core/page_arena.c: Init/Shutdown/Stats (~27 fprintf) - core/hakmem.c: SIGSEGV init message ドキュメント整理: - 328 markdown files 削除(旧レポート・重複docs) 性能確認: - Larson: 52.35M ops/s (前回52.8M、安定動作✅) - ENV整理による機能影響なし - Debug出力は一部残存(次phase で対応) 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
119 lines
4.0 KiB
Markdown
119 lines
4.0 KiB
Markdown
# CURRENT TASK - Larson Master Rebuild
|
||
|
||
**Last Updated**: 2025-11-26
|
||
**Branch**: `larson-master-rebuild`
|
||
**Scope**: Larson バグ修正 + 安定化 + 性能回復
|
||
|
||
---
|
||
|
||
## 🎯 現状サマリ
|
||
|
||
### ベースライン性能(larson-master-rebuild)
|
||
| Benchmark | Performance | Status |
|
||
|-----------|-------------|--------|
|
||
| Larson 1T | **51.35M ops/s** | ✅ 安定動作 |
|
||
| Random Mixed 10M | **62.18M ops/s** | ✅ 安定動作 |
|
||
|
||
### 旧 master の問題
|
||
- Larson: **クラッシュ** (Step 2.5 バグ)
|
||
- Random Mixed: ~80M ops/s だったが Larson が壊れた
|
||
|
||
---
|
||
|
||
## 📋 作業計画
|
||
|
||
### Phase 0: 安定ベースライン確立 ✅ DONE
|
||
- [x] `larson-fix` ブランチから `larson-master-rebuild` 作成
|
||
- [x] Larson 動作確認 (51M ops/s)
|
||
- [x] Random Mixed 動作確認 (62M ops/s)
|
||
|
||
### Phase 1: クリーンアップ & リファクタリング 🔄 IN PROGRESS
|
||
**目標**: 安定状態でコードベースを整理
|
||
|
||
#### 1.1 Cherry-pick 済み(7コミット)
|
||
- [x] `9793f17d6` レガシーコード削除 (-1,159 LOC)
|
||
- [x] `cc0104c4e` テストファイル削除 (-1,750 LOC)
|
||
- [x] `416930eb6` バックアップファイル削除 (-1,072 KB)
|
||
- [x] `225b6fcc7` 死コード削除: UltraHot, RingCache等 (-1,844 LOC)
|
||
- [x] `2c99afa49` 学習システムバグドキュメント
|
||
- [x] `328a6b722` Larsonバグ分析更新
|
||
- [x] `0143e0fed` CONFIGURATION.md 追加
|
||
|
||
#### 1.2 追加クリーンアップ(TODO)
|
||
- [ ] P0/P1/P2 ENV整理コミットの独立部分を手動ポート
|
||
- [ ] 不要なデバッグログ削除
|
||
- [ ] ビルドシステム整理
|
||
|
||
### Phase 2: 性能最適化ポート 📊 PENDING
|
||
**目標**: 62M → 80M+ ops/s 回復
|
||
|
||
#### 2.1 簡単なチューニング(独立・低リスク)
|
||
- [ ] `e81fe783d` tiny_get_max_size inline化 (+2M)
|
||
- [ ] `04a60c316` Superslab/SharedPool チューニング (+1M)
|
||
- [ ] `392d29018` Unified Cache容量チューニング (+1M)
|
||
- [ ] `dcd89ee88` Stage 1 lock-free (+0.3M)
|
||
|
||
#### 2.2 本丸(UNIFIED-HEADER)
|
||
- [ ] `472b6a60b` Phase UNIFIED-HEADER (+17%, C7ヘッダ統一)
|
||
- [ ] `d26519f67` UNIFIED-HEADERバグ修正 (+15-41%)
|
||
- [ ] `165c33bc2` Larsonフォールバック修正(必要なら)
|
||
|
||
#### 2.3 スキップ対象
|
||
- ❌ `03d321f6b` Phase 27 Ultra-Inline → **-10~15%回帰**
|
||
- ❌ Step 2.5関連コミット → **Larsonクラッシュの原因**
|
||
|
||
### Phase 3: 検証 & マージ 🔀 PENDING
|
||
- [ ] Larson 10回平均ベンチマーク
|
||
- [ ] Random Mixed 10回平均ベンチマーク
|
||
- [ ] master ブランチ更新
|
||
|
||
---
|
||
|
||
## 🔍 根本原因分析
|
||
|
||
### Larson クラッシュの原因
|
||
**First Bad Commit**: `19c1abfe7` "Fix Unified Cache TLS SLL bypass"
|
||
|
||
Step 2.5 が TLS_SLL_PUSH_DUP を「修正」するために追加されたが:
|
||
1. TLS_SLL_PUSH_DUP は実際には発生しない(ベースで10M回テスト済み)
|
||
2. Step 2.5 がマルチスレッド環境で cross-thread ownership 問題を引き起こす
|
||
3. 結論:**不要な「修正」が Larson を壊した**
|
||
|
||
### 80M 達成の主要因
|
||
| コミット | 内容 | 改善幅 |
|
||
|---------|------|--------|
|
||
| `472b6a60b` | UNIFIED-HEADER (C7統一) | **+17%** |
|
||
| `d26519f67` | UH バグ修正 | +15-41% |
|
||
| その他チューニング | inline, policy等 | +4-5M |
|
||
|
||
---
|
||
|
||
## 📁 関連ファイル
|
||
|
||
### 修正対象
|
||
- `core/front/tiny_unified_cache.c` - Step 2.5 なしのまま維持
|
||
- `core/tiny_free_fast_v2.inc.h` - LARSON_FIX 関連
|
||
- `core/box/ptr_conversion_box.h` - UNIFIED-HEADER で変更予定
|
||
|
||
### ドキュメント
|
||
- `LEARNING_SYSTEM_BUGS_P0.md` - 学習システムバグ記録
|
||
- `CONFIGURATION.md` - ENV変数リファレンス
|
||
- `PROFILES.md` - 性能プロファイル
|
||
|
||
---
|
||
|
||
## ✅ 完了マイルストーン
|
||
|
||
1. **Larson 安定化** - 51M ops/s で動作 ✅
|
||
2. **Cherry-pick Phase 1** - 7コミット完了 ✅
|
||
3. **ベースライン確立** - 62M/51M で安定 ✅
|
||
|
||
---
|
||
|
||
## 🎯 次のアクション
|
||
|
||
1. **Phase 1.2**: 追加クリーンアップ作業
|
||
2. **Phase 2.1**: 簡単なチューニングコミットをポート
|
||
3. **Phase 2.2**: UNIFIED-HEADER を慎重にポート
|
||
4. **Phase 3**: 検証 & master 更新
|