多核计算:硬件与软件架构解析
1. 多核架构分类
1.1 架构分类概述
在详细研究处理器架构之前,我们先对架构类别进行高层次的分类。这种通用分类聚焦于处理器核心、缓存层级的组织方式,以及加速器等主要组件,同时简化了互连结构和 I/O 等其他组件和机制。
1.2 具体架构类型
- 同质架构(Homogeneous) :同质 CPU 架构是最简单的多处理器架构,所有 CPU 核心完全相同。每个核心都有私有的一级(L1)指令和数据缓存,通常还有二级(L2)缓存。这些核心通过互连结构连接到共享的末级缓存(LLC 或 L3),再通过它连接到外部主内存。互连网络可以是简单的总线或环形结构,也可以是基于网格的片上网络。
- 异质架构(Heterogeneous)
- 复杂度不同的异质架构 :多处理器系统包含不同复杂度的 CPU 核心,允许运行时系统进行性能/功耗权衡。
- 多指令集架构(ISA)的异质架构 :不同 ISA 的处理器核心存在于同一多处理器系统中,以满足大型系统中不同软件组件的不同功能需求。
- GPU 增强架构 :GPU 近年来成为多核处理器异质性的重要组成部分。尽管最初是为特定图形渲染任务设计的,但它在程序员能明确识别并行性的各种通用应用中受到青睐。
- 加速器架构 :加速器是现