iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
Software Development

從 C++ 菜鳥到 Low-Latency 勇者:一場分秒必爭的賽局 系列

本系列聚焦於 C++ 程式設計與 Low-Latency 技術,透過五大主題深入探討低延遲系統的設計與優化,分享個人見解並在實作過程中持續提升專業能力。
無論是對 C++ 有興趣的初生之犢,或對 High Performance Computing 有經驗的武林高手,都歡迎加入這場艱難的學習之旅,挑戰自己的效能極限!

參賽天數 24 天 | 共 24 篇文章 | 1 人訂閱 訂閱系列文 RSS系列文
DAY 1

[Day 1] 前言 && 大綱

拖延了一個月,終於把這次的參賽主題拍板定案! 明明本人是個連 C++ 都還不夠熟練的大菜鳥,卻總是喜歡挑戰一些看起來生澀難懂的主題,把自己搞得緊張兮兮還不敢斷更...

2026-08-31 ‧ 由 yoyochang 分享
DAY 2

[Day 2] Advanced Modern C++ Foundations: RAII

去年曾經讀過《Effective C++》,當時對 Resource Acquisition Is Initialization (RAII) 的理解較為片面,...

2026-09-01 ‧ 由 yoyochang 分享
DAY 3

[Day 3] Advanced Modern C++ Foundations: STL

在學習 C++ STL 時不能只知道 container 如何使用,更要理解 abstraction 背後的 runtime cost。例如 vector、li...

2026-09-02 ‧ 由 yoyochang 分享
DAY 4

[Day 4] Advanced Modern C++ Foundations: Abstraction I

上一篇我們以 STL 為基點,探討 memory layout、cache locality、allocation 及 tail latency,並拆解 Low...

2026-09-03 ‧ 由 yoyochang 分享
DAY 5

[Day 5] Advanced Modern C++ Foundations: Abstraction II

上一篇文的低延遲系統的大哉問中,提到了幾個在 compile time 常見且實用的語法。接下來我們將進一步拆解這些語法的運作方式,了解它們各自適合的使用情境,...

2026-09-04 ‧ 由 yoyochang 分享
DAY 6

[Day 6] 進度存檔 | Low-Latency 新手村冒險日誌

終於講完第一個小章節了!雖然有不少內容和《Effective C++》相關,但在重新複習的過程中依舊學到了新的知識點,也算是重新認識了一些以前忽略的細節。所以今...

2026-09-05 ‧ 由 yoyochang 分享
DAY 7

[Day 7] Hardware-Aware Memory & CPU Architecture: Machine Code I

在一般的 C++ 開發中,我們往往習慣從 source code 的角度思考問題: 這個 class 的 interface 是否設計得好? 這個 abstr...

2026-09-06 ‧ 由 yoyochang 分享
DAY 8

[Day 8] Hardware-Aware Memory & CPU Architecture: Machine Code II

同樣一段 C++ code,即使 algorithmic complexity 完全相同,產生的 machine code 也可能因為 branch patte...

2026-09-07 ‧ 由 yoyochang 分享
DAY 9

[Day 9] Hardware-Aware Memory & CPU Architecture: Data-Oriented Design I

在 Low-Latency C++ 系統中,效能瓶頸往往不在 CPU arithmetic,而是在 memory access。當 CPU 執行速度遠快於主記憶...

2026-09-08 ‧ 由 yoyochang 分享
DAY 10

[Day 10] Hardware-Aware Memory & CPU Architecture: Data-Oriented Design II

在真正追求 nanosecond-level latency 的 C++ 系統中,資料如何排列與存取就是效能的一大考量。上篇文章已經提到 Array of St...

2026-09-09 ‧ 由 yoyochang 分享