0. 指令集

指令集是存储在 CPU 内部,对 CPU 运算进行指导和优化的硬程序。拥有这些指令集,CPU 就可以更高效地运行。

  • Intel:x86,EM64T,MMX,SSE,SSE2,SSE3,SSSE3 (Super SSE3),SSE4.1,SSE4.2,AVX。
    • Core:酷睿;
    • Xeon:至强,主要供服务器使用;
  • AMD:x86,x86-64,3D-Now!指令集。

1. SISD、SIMD、MISD、MIMD


计算机体系结构的分类_单指令

  • SISD:Single Instruction Data Stream,单指令单数据流,

  • SIMD:Single Instruction Multiple Data,单指令多数据流,

    能够复制多个操作数,并把它们打包在大型寄存器的一组指令集。以加法指令为例,单指令单数据(SISD)的CPU对加法指令译码后,执行部件(EU,execution unit)先访问内存,取得第一个操作数;之后再一次访问内存,取得第二个操作数;随后才能进行求和运算。而在 SIMD 型的 CPU 中,指令译码后几个执行部件同时访问内存(自然存在多数据流),一次性获得所有操作数进行运算。这个特点使 SIMD 特别适合于多媒体应用等数据密集型运算。

    如:AMD 公司引以为豪的 3D NOW! 技术实质就是SIMD,这使K6-2、雷鸟、毒龙处理器在音频解码、视频回放、3D游戏等应用中显示出优异的性能。

2. CPU 的分类

  • SIMD:
    • SSE2:Streaming SIMD Extensions 2
    • NEON:Neon是适用于ARM Cortex-A系列处理器的一种128位SIMD(Single Instruction, Multiple Data,单指令、多数据)扩展结构。