高性能程式設計
Benchmark、並發、鎖機制與性能優化。
⚡ 性能測試
Benchmark
- Benchmark - 性能測試基礎
- Google Benchmark 指南 - 完整使用指南
- 乘以 0.01 和除以 100 哪個快 - 微觀性能分析
🔒 並發與鎖機制
鎖與同步
- Linux 系統鎖與 C++ 鎖機制完整指南
- CAS - Compare-And-Swap 無鎖編程
🚀 性能優化
高性能實踐
💡 性能優化技巧
CPU 層級優化
-
Cache 友善設計
- 數據局部性
- Cache line 對齊
- 避免 False Sharing
-
減少分支預測失敗
- 使用 likely/unlikely
- 分支重排序
- 查表代替條件
-
SIMD 向量化
- 自動向量化
- 手動 SIMD 指令
- 批次處理
記憶體優化
-
記憶體池
- 減少 malloc/free
- 預分配資源
- 對象池模式
-
對齊與填充
- 結構體對齊
- Cache line 填充
- 避免偽共享
並發優化
-
無鎖數據結構
- CAS 操作
- Lock-free queue
- Memory ordering
-
減少競爭
- 讀寫鎖
- 細粒度鎖
- 無鎖算法
最後更新: 2025-12-01