硬件支持:
在并行计算机中,硬件提供了很大的支持
一.片内级
1.片内级并行
指的是指令级并行,如指令的流水线,通过指令调度,使指令交替执行,因为间隔时间很短,所以用户体验像是多指令并行,但其本质还是一次执行一个指令,没有做到真正意义上的并行。
2.片内多线程
首先解释一下线程和进程的区别,
进程指的是当前正在运行的程序,进程有独立的运行内存空间堆栈。
线程可以理解为轻量级的进程,一个进程可以分出多个线程,线程是没有自己独立的运行空间,只能所有线程和进程一起共享内存空间。
因此,可以通过一个进程下,衍生出多个线程这种方式,达到多指令并行的效果。
3.单片多处理器
指的是通过多核处理器,直接实现多指令并行。
二 .CPU级
1,多核处理器
与单片多处理器类似。
2.UMA对称多处理器系统
CPU的发展向多核心发展中,过多的处理器会存在着冗余的问题。因此把目光转到了总线上。
UMA——Uniform Memory Access 译为一致性内存访问
由于在一致性内存访问架构中,所有CPU对内存的访问都要通过总线完成,而总线发展缓慢,导致多核CPU通过一条总线共享内存成为瓶颈。
三.计算机级
1.分布式系统
分布式系统主要包括NUMA
NUMA的提出是为了解决UMA的问题。
NUMA全称Non-Uniform Memory A