Files
hakmem/docs/status/CURRENT_TASK.md
Moe Charm (CI) a9ddb52ad4 ENV cleanup: Remove BG/HotMag vars & guard fprintf (Larson 52.3M ops/s)
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>
2025-11-26 14:45:26 +09:00

119 lines
4.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 更新