← 上一章:第6-8章 | 📖 目录 | 完结 →


第 9 章 并行体系结构 —— 如果要同时算一万个 a+b,怎么更快

a+b 在这一章:单个 a+b 已经会跑了。但现实里要处理海量数据(一万个加法、一段视频、一次大模型推理)。靠不停提主频已经撞墙(功耗墙、散热),于是现代机器走”并行”路线:多核、流水、超线程。这一章是”如何变快”的总纲。


9.1 体系结构中的并行性

【知识点·为什么转向并行(摩尔定律撞墙)】

  • 🎓 集成度仍按摩尔定律增长,但提主频遇到功耗墙(功耗 ∝ 频率 × 电压²,频率翻倍→电压也要升→功耗翻 4-8 倍→散不掉热)、互连延迟、存储墙、设计复杂度等物理限制,故转向”尽可能多的并行处理”。
  • 🌱 以前靠”让一个工人跑更快”(提主频)来提速,现在跑不动了(太热太费电),改成”多请几个工人一起干”(并行)。

【知识点·并行性的两种含义、三条途径】

  • 🎓 含义:同时性(同一时刻发生)、并发性(同一时间间隔发生)。途径:时间重叠(流水)、资源重复(多套部件)、资源共享(软件轮流用)。
  • 🌱 并行=要么真的同时干,要么这段时间里交替着干。实现办法:流水线(错开时间)、堆硬件(多套)、分时复用(软件排班)。

【知识点·并行性等级】

  • 🎓 从数据看:位串字串→字串位并→字并位串→全并行;从程序看:指令内部并行→指令级并行→任务/过程级→作业/程序级。
  • 🌱 从”一位一位算”到”整批数据一起算”;从”一条指令内部并行”到”多个程序并行”,级别越来越高。

【知识点·多处理器耦合度 & Flynn 回顾】

  • 🎓 紧耦合(共享主存、传输率高)vs 松耦合(通过通道/网络连接);Flynn 四类:SISD(Single Instruction Single Data,单指令单数据流——普通单处理器)、SIMD(Single Instruction Multiple Data,单指令多数据流——向量机/GPU,一条指令同时处理多个数据)、MISD(Multiple Instruction Single Data,多指令单数据流——理论上不存在)、MIMD(Multiple Instruction Multiple Data,多指令多数据流——多处理器/机群,最常见的并行形式)。
  • 🌱 紧耦合=同一屋檐下共用一个大仓库的工人;松耦合=各自独立、靠网络联系的团队。

9.2 多线程与超线程

【知识点·超线程 / 同时多线程 SMT】

  • 🎓 引入硬件线程后,并行从”指令级”扩展到”线程级”;SMT(Simultaneous Multi-Threading,同时多线程——让一个物理核在同一时钟周期内同时处理多个线程的技术)结合超标量+细粒度多线程,一个时钟周期可发射不同线程的多条指令,减少”垂直浪费(资源冲突)“和”水平浪费(指令相关)“;超线程是Intel对SMT的实现——把1个物理核模拟成2个逻辑核。
  • 🌱 超线程=让一个核”分身”成俩,趁一个任务卡住(等数据)的空档去干另一个任务,把闲置的流水线段填满。

9.3 多处理器

【知识点·多处理器分类 & SMP】

  • 🎓 PVP(Parallel Vector Processor,并行向量处理器——专门处理向量运算的高性能并行机)、SMP(Symmetric Multi-Processing,对称多处理器,多个同功能处理器共享同一主存和I/O、由一个OS统管)、MPP(Massively Parallel Processing,大规模并行处理机——成百上千个处理器并行)、DSM(Distributed Shared Memory,分布共享存储——物理上分散但逻辑上统一编址的内存系统)。
  • 🌱 SMP=几个一模一样的CPU平等地共用同一套内存和外设,一个操作系统管全场(你家台式机的多核就接近这个)。

9.4 多核处理器

【知识点·多核优势”三高三低”】

  • 🎓 高并行性、高通信效率、高资源利用率;低功耗、低设计复杂度、较低成本。
  • 🌱 把多个核塞进一块芯片:能同时干更多活、核之间近所以沟通快、共享资源、还不用拼命提主频所以省电。

【知识点·多核组织 & 关键技术】

  • 🎓 同构多核(核相同对等)vs 异构多核(主核+协核,如CPU+GPU);对称SMP多核 vs 非对称AMP(Asymmetric Multi-Processing,非对称多处理——各核分工不同,不完全等价)多核;关键技术:cache组织(共享/私有)、cache一致性(多核各自cache同一数据要保持一致,用监听协议/目录协议)、核间互连(总线/交叉开关/片上网络)、低功耗、并行软件设计。
  • 🌱 同构=几个一样的核;异构=一个大核带几个专用小核(像CPU配GPU)。多核最头疼的是”cache一致性”:几个核各自抄了同一份数据,一个改了得通知其他人,否则就乱了。

【知识点·Cache 一致性】

  • 🎓 不一致来源:可写数据共享、I/O活动、核间线程迁移;维护:软件预防、硬件发现解决(监听协议、目录协议)。
  • 🌱 几个人各抄了同一份通讯录,张三改了号码,得喊一嗓子让大家更新,不然有人还按旧号打——这就是cache一致性要解决的。

9.5 多核实例(了解)

  • ARM Cortex-A15 MPCore、Intel 酷睿(环形总线)、至强融核(众核)、龙芯多核——把前面技术综合落地的真实产品。

第 10 章 现代计算机系统结构(了解,考试占比低)

【知识点·安腾 IA-64 / EPIC】

  • 🎓 安腾(Intel与HP联合设计的64位服务器处理器,采用 IA-64(Intel Architecture 64,英特尔64位指令集架构)指令集)采用 EPIC(Explicitly Parallel Instruction Computing,显式并行指令计算——由编译器而非硬件决定哪些指令可以并行执行),由编译器显式指出可并行的指令,配合大量寄存器和谓词执行(每条指令带一个条件位:条件为真才真正执行结果写回,为假则”空跑”不写回——用来消除 if/else 分支跳转,把两个分支都发射,只让该走的那条生效),挖掘指令级并行。
  • 🌱 安腾的思路是”让编译器提前把能并行的活打好包”,硬件照着并行做。属于把前9章(指令、流水、并行、存储)综合运用的高级实例。

第10章多为实例与展望,理解前9章后顺带浏览即可,不是考试重点。



📝 章节小测

本章考试占比低,主要出选择/判断题。

【题 1 · 判断】 “提高 CPU 主频是提升性能最有效的手段,没有物理上的限制。” 对还是错?

【题 2 · 简答】 什么是 Cache 一致性问题?为什么多核处理器必须解决它?

【题 3 · 选择】 Intel 超线程技术的本质是: A. 把一个物理核变成两个物理核 B. 把一个物理核模拟成两个逻辑核,利用流水线空闲段 C. 把时钟频率翻倍 D. 增加 L1 Cache 容量


🏁 全书合龙:a+b 的”一生”完整回放

把十章串成一个连贯故事,这就是你脑子里该有的整体画面:

你写下 a+b.c                                         【第1章: 高级语言级, 冯诺依曼机器】
   │ gcc 编译 / 汇编器汇编                            【第4章: 翻译成机器指令 LOAD/ADD/STORE】
   ▼
机器指令(补码表示的数 + 01指令)                       【第2章: a,b存成补码】
   │ 装入主存, 必要时虚存映射                          【第3章: 住进内存, Cache加速, 虚存扩容】
   ▼
┌──────────────── CPU 循环 ────────────────┐
│ 取指: 按PC取指令入IR, PC+1                 │         【第5章: 指令周期-取指】
│ 译码: 认出这是ADD                         │
│ 执行: ALU用补码加法算a+b, 防溢出           │         【第2章+第5章: 运算器执行】
│   ↑ 取a/b、回写, 经总线传输, 仲裁定时       │         【第6章: 总线】
└───────────────────────────────────────────┘
   │ scanf 输入(键盘) / printf 输出(屏幕)             【第7章: 外设硬件】
   │   慢外设用 中断/DMA 与CPU高效配合                 【第8章: I/O方式】
   ▼
屏幕显示 a+b 的结果 ✅
   │ 想同时算一万个? → 多核/流水/超线程                【第9章: 并行】
   ▼
现代真实机器(酷睿/安腾)把这一切综合实现               【第10章: 实例】

🎓 一句话总纲:计算机组成原理 = “存储程序 + 程序控制”思想下,五大部件如何用合适的数据表示、运算方法、存储层次、指令系统、控制时序、总线互连和 I/O 机制,协同把内存里的指令自动执行完。

🌱 一句话大白话:你写的每一行代码,最后都变成内存里一堆开关(0/1),CPU 像个超守纪律的工头,照着这些开关一拍一拍把活干完,再把结果给你看——这门课就是把这台”自动工厂”每个车间拆开讲清楚。

看懂这张回放图,你就拥有了所谓的”整机概念”——这正是这门课最想给你的东西。接下来去做《03_模拟卷》,检验一下吧!

← 上一章:第6-8章 | 📖 目录 | 完结 →