跳转至

Parallel Processors

Introduction

通过简单的将更小的计算机进行连接以创造出更强性能的计算机是多处理器(multiprocessor)的设计思路。如果软件能够高效利用多处理器,那么将一个大型的低效的处理器替换为多个高效的小型处理器可以获得更好的性能。因此,多处理器软件必须能够在可变数量的处理器上正常运行。

对于相互独立的任务,高性能意味着高吞吐量,称为任务级并行或者进程级并行。这些任务通常是同时运行在多个处理器上的单一程序,被称为并行处理程序(parallel processing program)

为了避免重复,多处理器通常被称为多核微处理器而不是多处理器微处理器,多核芯片中的处理器被称为(core)。这些多核处理器通常都是共享内存处理器(shared memory processor, SMP),因为它们总是共享一个物理地址空间

下图展示了串行(serial)、并行(parallel)、顺序(sequential)和并发(concurrent)之间的差异

从图中可以看出,顺序程序和并发程序既可以运行在串行硬件上,也可以运行在并行程序上

并发变革的主要挑战不是使顺序程序在并行硬件上获得更高性能,也是使并发程序在多处理器上获得更高性能

The Difficulty of Creating Parallel Processing Program

并发的挑战不在于硬件,而在于编写一个使用多处理器更快的完成一个任务

评论