目前比较流行的多核处理器的架构有下面几种: (1)SMP(Symmetric Multi-Processor) 这种架构的处理器由多个核组成,每个核有自己独立的 Cache,所有核共享内存和 IO。 (2)SMT(Symmetric Multi-Thread) 这种架构的处理器的每个核由多个线程组成(此处的线程指的硬件线程,而不是我们所说的 操作系统的线程概念),每个核下的所有线程共享寄存器、ALU(CPU 运算单元)、Cache、 内存、IO 等资源,线程之于用户也像一个虚拟的 CPU。这种架构的最大优势在于线程和线 程之间的切换很快,通常一个时钟周期内就能完成。 (3)NUMA(Non-Uniform Memory Access) 这种架构和前面两种的区别在于它不是简单的一个处理器,而是一个由多个处理器组成的系 统,每个处理器作为一个结点在该系统中存在。对于内存、IO 等资源所有结点也是共享的。 目前比较流行的处理器架构大多都推出了多核处理器的产品,比如 Intel 的 X86 双核处理 器、Freescale 的 PPC 多核处理器、SUN 的 SPARC 多核处理器、RMI 和 Cavium 的 MIPS 多核处理器等。 MIPS 这种架构诞生于 Standford 大学,它的名字含义有双重意义,一是 “Microcomputer without Inter-locked Pipeline Stages”,另一种是 “Millions of Instructions Per Second”,它设计 思想的核心是采用多级指令流水线技术达到高效的处理速度,目前比较常用的 MIPS 采用 5 级流水线的技术。因其性能高效、结构简单,MIPS 被誉为 RISC(Reduced Instruction Set Computing) 家族中最优美的一款处理器架构。基于 MIPS 的多核处理器因为其低功耗、 高性能从而在嵌入式市场得到了广泛的应用。 《See MIPS Run》,Dominic Sweetman,这本书介绍了 Linux 如何在 MIPS 中运行。 《The Performance of Spin Lock Alternatives for Shared-Memory Multiprocessors》,Thomas E. Anderson,这篇文章介绍了 Spinlock 性能方面的问题。 《Linux 内核的排队自旋锁(FIFO Ticket Spinlock)》,林昊翔、秦君,这篇文章对排队自旋锁 介绍了很详细。 |
|
来自: serenayang001 > 《Linux》