Phase v5-2: SmallObject v5 C6-only 本実装 (WIP - header fix)
本実装修正: - tiny_region_id_write_header() を追加: USER pointer を正しく返す - TLS slot からの segment 探索 (page_meta_of) - Page-level allocation で segment 再利用 - 2MiB alignment 保証 (4MiB 確保 + alignment) - free パスの route 修正 (v4 から v5 への fallthrough 削除) 動作確認: - SEGV 消失: alloc/free 基本動作 OK - 性能: ~18-20M ops/s (baseline 43-47M の約 40-45%) - 回帰原因: TLS slot 線形探索 O(n)、find_page O(n) 残タスク: - O(1) segment lookup 最適化 (hash または array 直接参照) - find_page 除去 (segment lookup 成功時) - partial_count/list 管理の最適化 ENV デフォルト OFF なので本線影響なし。 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@ -70,4 +70,8 @@ SmallSegmentV5* small_segment_v5_acquire(void);
|
||||
void small_segment_v5_release(SmallSegmentV5* seg);
|
||||
SmallPageMetaV5* small_segment_v5_page_meta_of(void* ptr);
|
||||
|
||||
// Page-level allocation (v5-2 fix for segment reuse)
|
||||
SmallPageMetaV5* small_segment_v5_alloc_page(void);
|
||||
void small_segment_v5_free_page(SmallPageMetaV5* page);
|
||||
|
||||
#endif // HAKMEM_SMALLSEGMENT_V5_BOX_H
|
||||
|
||||
Reference in New Issue
Block a user