一本可以动手的计算系统教材

从 C++,
走进计算系统。

把对象、内存、线程和数据流串起来。用小例子理解机制,用代码检验想法,再把它说成清楚的面试回答。

基础01–18可阅读 · 09后先做M1,再依次学习10、11、12、13、14、15、16、17、18
完整G0另10h · 全书52章

同一段代码,改变了谁?

int value = 7;
int copy  = value;
int& ref  = value;
ref = 12;
value / copy?ref?

读完05.1“对象与别名”,再回来试着回答。打开这一课 →

全书的八个部分

先建立共同基础,再理解不同机器。

查看完整学习路线 →
  1. 01

    C++ 基础与工程 →

    从一个变量,到能独立构建和调试的程序。

    18 章
  2. 02

    数据结构与算法 →

    把边界、复杂度与正确性说清楚。

    4 章
  3. 03

    Linux 与并发系统 →

    理解进程、线程、内存与网络之间的协作。

    6 章
  4. 04

    架构、性能与并行 →

    先确认答案,再测量,再解释为什么快。

    8 章
  5. 05

    AMD · HIP 与 ROCm →

    从 host 到 kernel,理解执行、同步与工具。

    4 章
  6. 06

    Tenstorrent · 显式数据流 →

    计算、数据移动和缓冲区如何配合。

    4 章
  7. 07

    Cerebras · 晶圆级计算 →

    把算法拆到 PE,并让消息沿着 fabric 流动。

    4 章
  8. 08

    Compiler 与 runtime →

    程序如何被变换、装载,最后真正运行。

    4 章

一个学习循环

读一小段,
自己推一遍。

每章从问题开始,经过分步图解、两个例子、一个反例,再进入练习和英文口述。代码能下载,答案能展开,暂时不懂的地方可以留到复习。

了解怎样使用这本书 →

从学习到面试

用共同机制,
连接三家公司。

从 C++ systems 和性能工具出发,逐步接近 runtime、kernel 和 compiler。把「我读过」变成「我能解释、实现与验证」。

比较三种加速器模型 →