98
§5 并并并并并并并并并并 并并并 并并并并并 并并并并 并并并并并并 并并并并并 并并并并并并并并 并并并并 统统 并并并并 并并并

§5 并发性发展及计算机系统的分类

  • Upload
    jed

  • View
    128

  • Download
    0

Embed Size (px)

DESCRIPTION

§5 并发性发展及计算机系统的分类. 并行性概念 计算机系统的并行性发展 并行处理系统的结构与多机系统的耦合度 计算机系统的分类. 并行性概念. 只要在 同一时刻 或是在 同一时间间隔 内完成两种或两种以上性质相同或不同的工作,它们在时间上能互相重叠。 同时性( Simultaneity ):两个或多个事件在同一时刻发生。 并发性( Concurrency ):两个或多个事件在同一时间间隔内发生。. 从计算机系统中执行程序角度来看. 指令内部 指令之间 任务或进程之间 作业或进程之间. 从计算机应用角度来看. - PowerPoint PPT Presentation

Citation preview

Page 1: §5  并发性发展及计算机系统的分类

§5 并发性发展及计算机系统的分类 并行性概念 计算机系统的并行性发展 并行处理系统的结构与多机系统的耦合度 计算机系统的分类

Page 2: §5  并发性发展及计算机系统的分类

并行性概念 只要在同一时刻或是在同一时间间隔内完成两种或两种以上性质相同或不同的工作,它们在时间上能互相重叠。 同时性( Simultaneity ):两个或多个事件在同一时刻发生。

并发性( Concurrency ):两个或多个事件在同一时间间隔内发生。

Page 3: §5  并发性发展及计算机系统的分类

从计算机系统中执行程序角度来看 指令内部 指令之间 任务或进程之间 作业或进程之间

Page 4: §5  并发性发展及计算机系统的分类

从计算机应用角度来看 Data-Level Parallelism (DLP) arises

because there are many data items that can be operated on at the same time.

Task-Level Parallelism (TLP) arises because tasks of work are created that can operate independently and largely in parallel.

Page 5: §5  并发性发展及计算机系统的分类

从处理数据的并行性来看 位串字串 位并字串 位片串字并 全并行 存储器操作并行 处理器操作步骤并行 处理器操作并行 指令、任务、作业并行

Page 6: §5  并发性发展及计算机系统的分类

从计算机技术实现方式来看 Instruction-Level Parallelism) exploits data-level par

allelism at modest levels with compiler help using ideas like pipelining and at medium levels using ideas like speculative execution.

Vector Architectures and Graphic Processor Units (GPUs) exploit data-level parallelism by applying a single instruction to a collection of data in parallel.

Thread-Level Parallelism exploits either data-level parallelism or task-level parallelism in a tightly coupled hardware model that allows for interaction among parallel threads.

Request-Level Parallelism exploits parallelism among largely decoupled tasks specified by the programmer or the operating system.

Page 7: §5  并发性发展及计算机系统的分类

并行性开发途径 时间重叠( Time Interleaving )是在并行性概念中引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。 举例:流水线 分离、细化功能部件→流水线→功能不同的多机系统→异构型多处理机系统

Page 8: §5  并发性发展及计算机系统的分类

指令流水线举例

取指 分析 执行

k K+1

k

k

K+1

K+1

K+2

K+2

K+2

部件

分析

取指

执行

时间

Page 9: §5  并发性发展及计算机系统的分类

并行性开发途径(续) 资源重复( Resource Replication ):是在并行性概念中引入空间因素,通过重复设置硬件资源来提高可靠性或性能。 多操作部件和多体存储器→相联、并行处理机→同构型多处理机系统

Page 10: §5  并发性发展及计算机系统的分类

CU

PE(0) PE(1) PE(N-1)

资源重复的例子

Page 11: §5  并发性发展及计算机系统的分类

并行性开发途径(续) 资源共享( Resource Sharing ):是利用软件的方法让多个用户按一定时间顺序轮流地使用同一套资源,以提高其利用率,这样也可以提高整个系统的性能。 网络打印机 多道程序、分时 OS →真正的处理机代替虚拟机→分布处理系统

Page 12: §5  并发性发展及计算机系统的分类

计算机系统的并行性发展 1960 年以前

算术运算的位运算( EDSAC 、 EDVAC 、 UNIVAC1 )

输入输出间操作的并行 直接存储器访问( DMA ) IBM709 系列

1960 年至 1970 年 流水线单处理机 多功能部件流水线 高速缓冲存储器 Cache

Page 13: §5  并发性发展及计算机系统的分类

计算机系统的并行性发展( 续)

1970 年至 1980 年 多种并行处理系统结构,例:向量、阵列、相联等

1980 年至 1990 年 RISC 、多处理机、数据流机、智能机

1990 年以来 MPP:Massively Parallel Processor 大规模并行处理机 SMP:Symmetric Multiprocessor 对称多处理机

SMP On Board, SMP on Chip Cluster: 机群、集群

Page 14: §5  并发性发展及计算机系统的分类

坐落于 Lawrence Livermore 国家实验室的 ASCI White

Page 15: §5  并发性发展及计算机系统的分类

FUJITSU VPP5000

Page 16: §5  并发性发展及计算机系统的分类

IBM p690 32x1.7GHz Power4+,217

GFlops 128GB 内存, 205GB/S内存带宽

3 x I/O 抽屉, 60 x PCI-X ,18GB/S I/O 子系统带宽

42x146.8GB UltraSCSI3 磁盘, 1920MB/S 磁盘接口带宽( stripping )

2 x Gigabit Ethernet 接口

IBM

Page 17: §5  并发性发展及计算机系统的分类

传统的科学工程研究方法 理论 + 实验 局限:

困难:大型风道 昂贵:小鸟撞飞机 缓慢:气候变化、星际演变 危险:武器设计、药物设计

Page 18: §5  并发性发展及计算机系统的分类

并行计算 -- 高性能计算 并行计算 (Parallel Computing )

高端计算 (High-end Parallel Computing) 高性能计算 (High Performance Computing) 超级计算 (Super Computing) 任何高性能计算和超级计算都离不开使用并行技术

计算科学与传统的两种科学,即理论科学和实验科学,并立被认为是人类认识自然的三大支柱,他们彼此相辅相成地推动科学发展与社会进步。在许多情况下,或者是理论模型复杂甚至理论尚未建立,或者实验费用昂贵甚至无法进行时,计算就成了求解问题的唯一或主要的手段

Page 19: §5  并发性发展及计算机系统的分类

计算能力挑战 为寻找出潜在的抑制剂药物,需要对所有已知化合物数据库中的微生物药物靶标做甄别,甄别工作需要高性能计算机辅助完成 360万亿次的高性能计算机需要运行 365天 1000万亿次的高性能计算机需要运行 30天 5000万亿次的高性能计算机,需要运行一年完成所有已知的人类药物靶标

目前最高性能的 Intel四核 PC 的性能大约为 500亿次每秒

Page 20: §5  并发性发展及计算机系统的分类

日益膨胀的高性能计算需求

HPC 目前成为国家各行业科技创新的基础,当前对 HPC 人才的需求持续攀升

Page 21: §5  并发性发展及计算机系统的分类

高性能计算应用分类– 计算密集型应用计算密集型应用(( Computing-intensive)Computing-intensive) ::

• 大型科学工程计算,数值模拟等。大型科学工程计算,数值模拟等。• 应用领域:石油、气象、应用领域:石油、气象、 CADCAD 、核能、制药、环境监测分、核能、制药、环境监测分析、系统仿真等。析、系统仿真等。

– 数据密集型应用数据密集型应用(( Data-intensive)Data-intensive) ::• 数字图书馆,数据仓库,数据挖掘,计算可视化等。数字图书馆,数据仓库,数据挖掘,计算可视化等。• 应用领域:图书馆、银行、证券、税务、决策支持系统等。应用领域:图书馆、银行、证券、税务、决策支持系统等。

– 通信密集型应用通信密集型应用(( Network-intensive)Network-intensive) ::• 协同工作,网格计算,遥控和远程诊断等。协同工作,网格计算,遥控和远程诊断等。• 应用领域:网站、信息中心、搜索引擎、电信、流媒体等。应用领域:网站、信息中心、搜索引擎、电信、流媒体等。

Page 22: §5  并发性发展及计算机系统的分类

全球气候变化

系统速度

天气预报72小时

油藏建模机翼设计

物体特性分析

年后199519911980 1988 1993

存储器容量

48

结构生物学

药物设计

化学动力学

1000GB

100GB

10GB

1GB

100MB

10MB小时天气预报

100Mfl ops 1Gfl ops 10Gfl ops 100Gfl ops 1Tfl ops

人类基因湍流飞行海洋环流粘滞流体超导建模半导体建模

视觉量子染色

3维等离子体建模

动力学

动力学

动力学

Page 23: §5  并发性发展及计算机系统的分类

对计算能力的需求持续增长

Page 24: §5  并发性发展及计算机系统的分类

2020 年以前超级计算机发展趋势 2000 年 每秒 10万亿次浮点运算 2005 年 每秒 100万亿次浮点运算 2009 年 每秒 1000万亿次浮点运算( Pflop/

s ) 2013 年 每秒 1亿亿次浮点运算 2016 年 每秒 10亿亿次浮点运算 2020 年 每秒 100亿亿次浮点运算( Eflop/s )基本上每 10 年左右性能提高 1000倍

Page 25: §5  并发性发展及计算机系统的分类
Page 26: §5  并发性发展及计算机系统的分类

超级计算机发展路线图时间 2020 年 2030 年 2050 年器件 CMOS 纳米量子器件 量子、生物分子

计算速度 Exaflops(1018) Zettaflops(1021) >Yottaflops(1024)

并行度 >109-10 1011 -1012 1013 -1015

内存容量 25PB EB(1018B) ZB(1021B)

功耗 40MW MW MW

用途 核聚变模拟蛋白质折叠等

地球模拟生命科学等

MEMS优化脑科学模拟等

2010 2020 2030 2050

Page 27: §5  并发性发展及计算机系统的分类

并行计算软件环境及现状 操作系统: UNIX 、 LINUX 、 Windows NT 在 SMP,DSM 并行机上编译系统通常具有一定的对用户程序

(C/Fortran) 进程自动并行化的能力,但经常需要人工干预 ( 通过编译制导 ,命令行选项等 ) 以达到理想的并行效率,且并行主要针对循环进行 (属于细粒度并行 )

在分布式内存并行机上尚无通过高效的自动并行工具,主要依靠人工编写并行程序

并行算法的设计及并行程序的编制已成为目前特约大规模并行计算机应用的主要障碍

并行编程现状 并行软件开发远远落后于并行系统体系结构的发展。缺少合适的并行软件是阻碍主流用户社会接纳并行计算的原因

与串行软件相比,并行软件数量少,功能原始

Page 28: §5  并发性发展及计算机系统的分类

编程环境 落后的并行编译器、调试器 vs. 通用先进的串行编程环境 . 自动并行编译器远远满足不了程序并行化的要求 .

算法 并行模型的多样化 ( 并行计算机系统结构的多样性 ) vs. 串行编程中的唯一模型 : 冯 .诺依曼模型

问题的并行求解的困难在于问题的多样性和求解过程中所需的创造性劳动,使得这一过程难以进行自动化

对串行机而言 , 解法 = 唯一串行算法 + 计算程序 ( 通用 ) 对并行机而言 , 解法 = 某种并行算法 +有针对性的计算程序 (很难通用 )

程序员 稀少而初级的并行编程人员 vs. 成熟而经验丰富的串行程序员

Page 29: §5  并发性发展及计算机系统的分类

并行处理计算机的结构 流水线计算机(时间重叠) 阵列处理机(资源重复)

多处理机系统(资源共享)

数据流计算机

Page 30: §5  并发性发展及计算机系统的分类

流水线计算机、阵列处理机和多处理机 流水线计算机:主要通过时间重叠,让多个部件在时间上交错重叠地并行执行运算和处理,以实现时间上的并行。

阵列处理机:主要通过资源重复,设置大量算术逻辑单元,在同一控制部件作用下同时运算和处理,以实现空间上的并行。

多处理机系统:主要通过资源共享,让共享输入 /输出子系统、数据库资源及共享或不共享贮存的一组处理机在统一的操作系统全盘控制下,实现软件和硬件各级上相互作用,达到时间和空间上的异步并行。

Page 31: §5  并发性发展及计算机系统的分类

多机系统 指的是多处理机系统和多计算机系统 多处理机系统:是由多台处理机组成的单一计算机系统,各处理机都可有自己的控制部件,可带自己的局部存储器,能执行各自的程序。

多计算机系统:是由多台独立的计算机组成的系统,各计算机分别在逻辑上独立的操作系统控制下运行,机间可以互不通信,即使通信也只是经通道或通信线路以文件或数据集形式进行,实现多个作业的并行。

Page 32: §5  并发性发展及计算机系统的分类

多机系统的耦合度 为了反映多机系统中各级器之间物理连接的紧密程度和交叉作用能力的强弱。

最低耦合系统( Least Coupled System ):各种脱机系统

松散耦和系统( Loosely Coupled System ):如果多台计算机通过通道或通信线路实现互连,共享某些磁带、磁盘等外围设备,以较低频带在文件或数据集一级相互作用。间接耦合系统

紧密耦合系统( Tightly Coupled System ):如果多台机器之间通过总线或高速开关互连,共享主存,并有较高的信息传输速度,可以实现数据集一级、任务级、作业级的并行。直接耦合系统

Page 33: §5  并发性发展及计算机系统的分类

P/ C

LM

NI C

定制网络

(c)MPP

P/ C

LM

NI C

MB MB

…VP

SM

交叉开关

(a)PVP

VP VP

SMSM

… P/ C

SM SM I / O

总线或交叉开关

(b)SMP

P/ C P/ C…

P/ C

LM

NI C

DI R

MB

定制网络

(d)DSM

P/ C

LM

NI C

DI R

MB

LD

P/ C

M

MB

I OB

(e)COW

LD

P/ C

M

MB

I OB

( ATM etc. )商品网络 以太网, ,

Bri dge

NI CNI C

Bri dge …

Page 34: §5  并发性发展及计算机系统的分类

并行向量处理机( PVP ) 结构特点:具有少量的高性能专门设计的 VP;定制高带宽互连网;共享存储器;大量的向量寄存器而无高速缓存。

典型结构:

VP

SM

交叉开关

VP VP

SMSM

Page 35: §5  并发性发展及计算机系统的分类

分布共享存储多处理机( DSM )

结构特点:MIMD—DM,CC—NUMA;单地址空间的应用界面;DIR 用以支持分布高速缓存一致性;定制互连网络。

典型结构:

P/ C

LM

NI C

DI R

MB

定制网络

P/ C

LM

NI C

DI R

MB

Page 36: §5  并发性发展及计算机系统的分类

大规模并行处理机( MPP ) 结构特点: MIMD—DM , NORMA;商用微处理器具有片上高速缓存;分布式存储器;定制的互连网络。物理和逻辑上均是分布内存;能扩展至成百上千个处理器 (微处理器或向量处理器 );采用高通信带宽和低延迟的互联网络 (专门设计和定制的 );一种异步的 MIMD 机器;程序系由多个进程组成,每个都有其私有地址空间,进程间采用传递消息相互作用;

典型结构:

P/ C

LM

NI C

定制网络

P/ C

LM

NI C

MB MB

Page 37: §5  并发性发展及计算机系统的分类

对称多处理机( SMP ) 共享内存多处理机:任意处理器可直接访问任意内存地址 ,且访问延迟、带宽、几率都是等价的 ; 系统是对称的;

结构特点:商用微处理器具有片上高速缓存;MIMD—SM ,对称, UMA;共享存储器;总线或交叉开关互连;总线侦听协议。常用作 CC—NUMA 或机群系统中节点处理器。

典型结构:

P/ C

SM SM I / O

总线或交叉开关

P/ C P/ C…

Page 38: §5  并发性发展及计算机系统的分类

机群系统 Cluster 结构特点: MIMD-DM自治系统,每个节点是一个独立的计算机;互连网络使用标准低成本商用局网;节点机可以是工作站或 PC 机,带有磁盘,具有完整的 OS 。是近代最流行的并行分布式系统。

典型结构:

LD

P/ C

M

MB

I OB LD

P/ C

M

MB

I OB

( ATM etc. )商品网络 以太网, ,

B

NI CNI C

B …

Page 39: §5  并发性发展及计算机系统的分类

访存模型

UMA:

NORMA:

NUMA: 多处理机(单地址空间共享存储器)

UMA: Uniform Memory Access

NUMA: Nonuniform Memory Access

多计算机(多地址空间非共享存储器)

NORMA:No-Remote Memory Access

Page 40: §5  并发性发展及计算机系统的分类

均匀存储器存取 (UMA)均匀存储器存取( UMA - U

niform Memory Access )所有处理器均匀共享物理存储器,这里所谓均匀是指所有处理器对所有存储字具有相同的存取时间

每台处理器可带私有高速缓存外围设备也可以一定形式共享 各处理机之间的通信是通过共享存储器的共享变量来实现的

这一类多处理机由于对资源的高度共享 ,常称紧耦合系统 (tightly coupled system)

UMA:

Page 41: §5  并发性发展及计算机系统的分类

均匀存储器存取 (UMA) 对称多处理机系统 (symmetric multi-pr

ocessor)所有处理机都能同样访问所有外围设备;所有处理机都能同样运行执行程序,如操作系统的内核、 I/O服务程序

不对称处理机系统 (asymmtric multi-processor) 只有一台或一组处理机( MP主处理机)执行操作系统并操纵 I/O ,其余处理机( AP附属处理机)没有 I/O 能力

Page 42: §5  并发性发展及计算机系统的分类

非均匀存储访问 (NUMA)

• 非均匀存储访问 (NUMA—Nonuniform Memory Access)– 被共享的存储器在物理上是分布在所有的处理其中的,其所有本地存储器的集合就组成了全局地址空间

– 处理器访问存储器的时间是不一样的:访问本地存储器 (LM)较快,而访问外地的存储器较慢(此即是非均匀存储访问名称的由来)

– 每台处理器可带私有高速缓存,且外设也可以某种形式共享

NUMA:

Page 43: §5  并发性发展及计算机系统的分类

非远程存储访问 (NORMA)

非远程存储访问 (NORMA — No-Remote Memory Access)所有存储器都是私有的,仅能由其处理器所访问

绝大都数都不支持远程存储器的访问

NORMA:

Page 44: §5  并发性发展及计算机系统的分类

结构模型 ---- 访存模型

UMA:NUMA:

NORMA:

Page 45: §5  并发性发展及计算机系统的分类

多处理机 & 多计算机

UMA: NUMA: NORMA:

多处理机

(共享存储)

多计算机

(分布式存储)

Page 46: §5  并发性发展及计算机系统的分类

MIMD

多计算机( )多地址空间非共享存储器

( I BM SP2, DEC TruCl usterTandem Hymal aya, HP,

Mi crosof t Wol fpack, etc)

NORMA

UMA

NUMA

Cluster

MPP( I ntel TFLOPS)紧耦合

PVP(Cray T90)

SMP( I ntel SHV, SunFi re, DEC 8400,

SGI PowerChal l enge, I BMR60, etc. )

COMA (KSR-1, DDM)

CC-NUMA(Stanford Dash,

SGI Ori gi n 2000, Sequent NUMA-Q,HP/ Convex Exempl ar)

NCC-NUMA (Cray T3E)

DSM(TreadMarks,Wi nd Tunnel ,I VY, Shri mp,

etc. )

( )

松散耦合( )

中央存储器

分布存储器

多处理机单地址共享

()

空间存储器

Page 47: §5  并发性发展及计算机系统的分类

名次解释 UMA:Uniform Memory Access 均匀存储访问 NUMA:Nouniform Memory Access 非均匀存储访问 COMA:Cache-Only Memory Access 全高速缓存存储访

问 CC-NUMA:Cache-Coherent Nonuniform Memory Acce

ss 高速缓存一致性均匀存储访问 NCC-NUMA:Cache-Coherent Nonuniform Memory Acc

ess 非高速缓存一致性均匀存储访问 NORMA:No-Remote Memory Access 非远程存储访问 DSM:Distributed Shared Memory 分布式共享存储 PVP:Parallel Vector Processor 并行向量处理机

Page 48: §5  并发性发展及计算机系统的分类

计算机系统的分类 采用的基本器件 处理器性能 1966 年 Michael J,Flynn 1978 年 David J.Kuck :用指令流和执行流( Execution Stream )及其多倍性来描述计算机系统总控制器的结构特征

1972 年冯泽云:提出用数据处理的并行度来定量地描述各种计算机系统特性 。

Page 49: §5  并发性发展及计算机系统的分类

按采用的基本器件分类 计算机的更新换代

第一代 电子管计算机 第二代 晶体管计算机 第三代 中小规模集成电路 第四代 大或超大规模集成电路 第五代 VLSI (甚大规模集成电路)

目前的绝大多数计算机系统是 VLSI计算机 公认的第五代计算机什么时候诞生? 第五代计算机以什么作为标志来划分? 计算机性能的大幅度提高或更新换代,一方面依靠器

件的不断更新,同时也依赖系统结构的不断改进。

Page 50: §5  并发性发展及计算机系统的分类

第一代1945~1954

电子管继电器

存储程序计算机程序控制 I/O

机器语言汇编语言

普林斯顿 ISA 、ENIAC 、 IBM

701

第二代1955~1964

晶体管、磁芯

印刷电路

浮点数据表示、寻址技术、中断、 I/O 处理机

高级语言、编译、批处理监控程序

Univac LARC 、 CDC

1604IBM 7030

第三代1965~1973 )

多层印刷电路微程序

流水线、 Cache 、先行处理、系列机

多道程序分时操作系

IBM 360/370CDC

6600/7600DEC PDP-8

第四代1974~1990

LSI 、 VLSI半导体存储器

向量处理分布式存储器

并行和分布处理

Cray-1 、 IBM 3090

DEC VAX 9000Convax-1

第五代1990~

高性能微处理器高密度电路

超标量、超流水、 SMP 、MP 、 MPP

大规模、可扩展并行与分布处理

SGI Cray T3EIBM 、 SP2 、

DECAlphaServer 840

0

五代计算机的特征表

Page 51: §5  并发性发展及计算机系统的分类

按处理器性能分类 按系统成本划分 按用途划分 按数据类型划分 按处理器个数和种类划分

Page 52: §5  并发性发展及计算机系统的分类

按计算机系统成本分类 巨型计算机、超级计算机 SuperComputer 大型计算机 MainComputer 中型机算机 MidComputer 小型计算机 MiniComputer 微型计算机 MicroComputer 工作站介于小型机和微型机之间,具有小型机的性能,微型机的价格。

Page 53: §5  并发性发展及计算机系统的分类

划分原则:以性能为特征,按价格来划分 存在问题:

划分标准是随时间而变化 每五年左右降低一个等级

设计方法: 最高性能:特殊用途 最佳性能价格比:一般商用计算机 最低价格:家用计算机等 Small is fast.

Page 54: §5  并发性发展及计算机系统的分类

按用途划分 种类:

科学计算、事务处理、实时控制、工作站、服务器、家用计算机等

划分原则: 科学计算:浮点运算能力 事务处理:字符处理、十进制运算 实时控制:中断响应速度、 I/O 能力 工作站:图形处理能力 服务器:数据处理速度、数据存储能力 家用计算机:价格便宜,软件丰富

发展方向:具备上述所用功能的通用计算机 各种专用处理机、协处理器、嵌入式处理器

Page 55: §5  并发性发展及计算机系统的分类

按数据类型划分 定点计算机 浮点计算机 向量计算机 堆栈计算机等

Page 56: §5  并发性发展及计算机系统的分类

按处理器个数和种类划分 单处理机、多处理机、分布处理机 关联处理机 超标量处理机、超流水线处理机、 VLIW处理机

SMP (对称多处理机)、 MPP (大规模处理机)、机群( Cluster )系统等

Page 57: §5  并发性发展及计算机系统的分类

Hennessy 分类

Page 58: §5  并发性发展及计算机系统的分类

Personal Mobile Device (PMD) is the term we apply to a collection of wireless devices with

multimedia user interfaces such as cell phones, tablet computers, and so on.

Cost is a prime concern given the consumer price for the whole product is a few hundred dollars.

Applications on PMDs are often Web-based and media-oriented

Responsiveness and predictability are key characteristics for media applications

Other key characteristics in many PMD applications are the need to minimize memory and the need to use energy efficiently.

Sales in 2010 included about 1.8 billion PMDs (90% cell phones)

Page 59: §5  并发性发展及计算机系统的分类

Desktop Computing The first, and probably still the largest mark

et in dollar terms spans from low-end netbooks that sell for u

nder $300 to high-end, heavily configured workstations that may sell for $2500.

Throughout this range in price and capability, the desktop market tends to be driven to optimize price-performance

Sales in 2010 , 350 million desktop PCs

Page 60: §5  并发性发展及计算机系统的分类

Servers As the shift to desktop computing occurred in the

1980s, the role of servers grew to provide larger-scale and more reliable file and computing services. Such servers have become the backbone of large-scale enterprise computing, replacing the traditional mainframe.

First, availability is critical. A second key feature of server systems is

scalability. Finally, servers are designed for efficient

throughput. Sales in 2010, 20 million servers.

Page 61: §5  并发性发展及计算机系统的分类

Clusters/Warehouse-Scale Computers The growth of Software as a Service (SaaS) for applications like search,

social networking, video sharing, multiplayer games, online shopping, and so on has led to the growth of a class of computers called clusters.

Clusters are collections of desktop computers or servers connected by local area networks to act as a single larger computer. Each node runs its own operating system, and nodes communicate using a networking protocol.

The largest of the clusters are called warehouse-scale computers (WSCs), in that they are designed so that tens of thousands of servers can act as one.

Price-performance and power are critical to WSCs since they are so large.

WSCs are related to servers, in that availability is critical. Supercomputers are related to WSCs in that they are equally expensiv

e, costing hundreds of millions of dollars, but supercomputers differ by emphasizing floating-point performance and by running large, communication-intensive batch programs that can run for weeks at a time.

Page 62: §5  并发性发展及计算机系统的分类
Page 63: §5  并发性发展及计算机系统的分类
Page 64: §5  并发性发展及计算机系统的分类

20 英尺产品占地面积 15 ㎡,最大重量 20 吨,可容纳 7680 个计算核心,能够提供百万亿次计算能力,整合 47 个云海集装箱形成的数据中心可达到世界性能最高的天河一号峰值能力,最大可提供 6PB 存储空间,能够容纳 300 万部高清电影或者 50万人口医疗视频资料, 2 个 smartcloud 集装箱数据中心可存储美国国会图书馆藏书。

Page 65: §5  并发性发展及计算机系统的分类

Embedded Computers found in everyday machines;

microwaves, washing machines, most printers, most networking switches, and all cars contain simple embedded microprocessors.

The total number of embedded processors sold was nearly 19 billion. In total, 6.1 billion ARM-technology based chips were shipped in 2010.

Page 66: §5  并发性发展及计算机系统的分类

个人计算机

1981 年 8月 12 日

1985 年

1986 年

1990 年

1993 年

1994 年

1995 年

2000 年

IBM5150IBM5150

Windows1.0

Windows1.0

CompaqCompaq

Windows3.1

Windows3.1

PentiumPentium

NetscapeNetscape

Windows95

Windows95

Pentium4Pentium4

Page 67: §5  并发性发展及计算机系统的分类

Wrist PC

Desktop PC

Tablet PC

Pocket PCPhone PC

无线连接无线连接

Wearable

computer

Page 68: §5  并发性发展及计算机系统的分类

Michael J,Flynn 分类 指令流:是指机器执行的指令序列。 数据流:是指指令流调用的数据序列,包括输入数据和中间结果。

多倍性:是指在系统性能瓶颈部件上处于同一执行阶段的指令或数据的最大可能个数。

Page 69: §5  并发性发展及计算机系统的分类

Michael J,Flynn 分类 SISD 单指令流单数据流

传统的单处理机属于 SISD 计算机 SIMD 单指令流多数据流

并行处理机是 SIMD 计算机的典型代表 我国的 YH-I 型是此类计算机型

MISD 多指令流单数据流 实际上不存在,但也有学者认为存在

MIMD 多指令流多数据流 包括了大多数多处理机及多计算机系统 我国的 YH-II 型计算机是这种类型的计算机

Page 70: §5  并发性发展及计算机系统的分类

SISD典型单处理机 单功能部件处理机

IBM1401 、 VAX-11 多功能部件处理机

IBM360/91 、 370/168 、 CDC6600 等 流水线处理机

指标量流水线处理机

Page 71: §5  并发性发展及计算机系统的分类

CU PU MMCS DS

IS

SISD

CU :控制部件, PU :处理机, MM :贮存模块, SM :共享主存IS :指令流, CS :控制流, DS :数据流

CU

PU1

PU2

PUn

MM1

MM2

MMm

DS1

DS2

DSn

CS

IS

SIMD

SM

Page 72: §5  并发性发展及计算机系统的分类

SIMD 种类:

并行处理机、阵列处理机、向量处理机、相联处理机、超标量处理机、超流水线处理机

多个 PU 按一定方式互连,在同一个 CU控制下,对各自的数据完成同一条指令规定的操作;从 CU 看指令顺序执行,从 PU 看数据并行执行

Page 73: §5  并发性发展及计算机系统的分类

CU1 PU1

PU2

PUn

MM1 MM2 MMm

DS

DS

CS1

ISn

MISD

SM

CU2

CUn

CS2

CSnIS2

IS1

CU :控制部件, PU :处理机, MM :贮存模块, SM :共享主存IS :指令流, CS :控制流, DS :数据流

Page 74: §5  并发性发展及计算机系统的分类

MISD 几条指令对同一个数据进行不同的处理,实际上不存在

Page 75: §5  并发性发展及计算机系统的分类

CU1 PU1

PU2

PUn

MM1

MM2

MMm

DS1

DSn

CS1

ISn

MIMD

CU2

CUn

CS2

CSn

IS2

IS1

DS2

CU :控制部件, PU :处理机, MM :贮存模块, SM :共享主存IS :指令流, CS :控制流, DS :数据流

Page 76: §5  并发性发展及计算机系统的分类

MIMD 紧密耦合:

IBM3081 、 IBM3084 、 UNIVAC-1100/80 松散耦合:

D-825 、 Cmmp 、 CRAY-2

Page 77: §5  并发性发展及计算机系统的分类

Flynn 分类法得到广泛应用 SIMD 、 MIMD 、 SPMD 、 XIMD 、。。。。

主要缺点 分类太粗

在 SIMD 中包含有多种处理机 对流水线处理机的划分不明确 标量流水线为 SISD ,向量流水线为 SIMD

根本问题是把两个等级不同的功能并列对待 数据流受指令流控制,造成 MISD 不存在

非冯计算机的分类?其他新型计算机的分类

Page 78: §5  并发性发展及计算机系统的分类

David J.Kuck 分类 用指令流和执行流( Execution Strea

m )及其多倍性来描述计算机系统总控制器的结构特征。 SISE :单处理机系统 SIME :多操作部件的处理机 MISE :带指令级多道程序的单处理机 MIME :多处理机

Page 79: §5  并发性发展及计算机系统的分类

主要缺点 有些系统,如分布处理机,没有总控制器

分类级别太低。没有处理机级和机器级 分类太粗,如 SIME 中包含了多种处理机

Page 80: §5  并发性发展及计算机系统的分类

冯泽云分类 提出用数据处理的并行度来定量地描述各种计算机系统特性。 WSBS (字串位串) WSBP (字串位并) WPBS (字并位串) WPBP (字并位并)

位片宽

字宽

SISD

SIMD ( MPP )

SIMD

MIMD

1

m

n

1 m’ n’

Page 81: §5  并发性发展及计算机系统的分类

Von Neumann结构计算机

运算器ALU

控制器

输出设备输入设备

存储器

Van Nenmann基本思想于 1936 年~ 1946 年期间形成,由冯·诺依曼等人于 1946 年提出

Page 82: §5  并发性发展及计算机系统的分类

冯·诺依曼的设计思想

“ 程序存储”

核心思想核心思想计算机的程序和数据可以一同存在于存储器中,计算机通过在存储器中顺序读取程序来获取指令

Page 83: §5  并发性发展及计算机系统的分类

主存储器

程序控制器

I/O 设备

算术-逻辑

单元

存储数据和指令

存储数据和指令

对二进制数进行算术和逻辑运算

对二进制数进行算术和逻辑运算

控制内存中的指令并执行

控制内存中的指令并执行 系统的输入

输出设备系统的输入

输出设备

Page 84: §5  并发性发展及计算机系统的分类

存储程序控制 Stored Program Control 实现指令流程的三或四个阶段

取指令 取操作数 执行指令 写回结果

Page 85: §5  并发性发展及计算机系统的分类

Von Neumann机结构的主要特征

存储器是字长固定的、顺序线性编址的一维结构,每一个地址是唯一定义的

按地址访问、单元位数固定、运算速度与访存次数有关 由指令形式的低级语言驱动,指令 = 操作码 + 地址码

操作数的类型由操作码决定 指令在存储器中是按其执行顺序存储,程序分支由转移指

令实现 存储器内指令和数据同等看待 二进制编码、运算 以运算器为中心, I/O 与存储器之间数据通过运算器,运

算器、存储器、 I/O 设备的操作及之间的联系,由控制器控制

Page 86: §5  并发性发展及计算机系统的分类

Von Neumann型结构的局限性 以数值计算为主,对自然语言、图像、图形和符号处理的能力较差;

程序算法在整体上为顺序型,限制并行操作发挥; 软件系统越来越复杂,正确性不能保证,软件生产效率低;

硬件投资大,可靠性差,体系结构受限制; 应用人员既懂专业知识,又具备编程技巧;

Page 87: §5  并发性发展及计算机系统的分类

Von Neumann型结构的缺点 存在两个瓶颈

物理瓶颈: CPU 与存储器之间频繁交换信 智能瓶颈:每次只能顺序执行一条指令

低级的机器语言与高级语言程序设计之间存在巨大的语义差距

复杂的数据结构对象无法直接放到一维线性结构地址空间存储器中,必须经过地址映像

Page 88: §5  并发性发展及计算机系统的分类

Von Neumann型结构的改进 增加了新的数据表示:浮点数、字符串 采用虚拟存储器,方便了高级语言编程 引入堆栈,支持过程调用、递归机制 采用变址寄存器,并增加间接寻址方式 增加 CPU 内的通用寄存器和增设 Cache 采用存储器交叉访问技术,以及无冲突并行存储器 采用指令流水技术 采用多功能部件 采用支持多处理机 采用自定义数据表示 使程序和数据空间分开

Page 89: §5  并发性发展及计算机系统的分类

存储器为中心、分散控制

Page 90: §5  并发性发展及计算机系统的分类

总线结构,分散控制 总线:连接计算机各功能部件的连线和管理信息传输

规则的逻辑电路称为总线。 特点:在任何时刻,只能有一个部件向总线上发送信息,可以有多个部件同时接收信息

组成:数据总线、地址总线、控制总线。 单总线结构

Page 91: §5  并发性发展及计算机系统的分类

三总线结构

Page 92: §5  并发性发展及计算机系统的分类

四十年来计算机系统结构的改进 串行算法 -----〉适应并行算法

出现向量计算机、并行计算机、多处理机 高级语言与机器语言的语义差距减少

出现面向高级语言计算机机器和直接执行高级语言机器

硬件系统与操作系统和数据库管理系统软件相适应 出现面向操作系统机器和数据库计算机

指令驱动型 -----〉数据驱动型、需求驱动型 出现数据流计算机和规约机

Page 93: §5  并发性发展及计算机系统的分类

四十年来计算机系统结构的改进 出现专用计算机

快速傅里叶变换计算机、过程控制计算机 提高可靠性

出现容错计算机 计算机系统功能分散化、专业化

出现各种功能分布计算机、外围计算机、通讯处理 出现与大规模、超大规模集成电路相适应的计算机系统结构

出现非数值化信息的智能计算机,如自然语言、声音、图形和图像处理

Page 94: §5  并发性发展及计算机系统的分类

计算机技术的发展趋势 吞吐率相对于延时的发展趋势 集成电路的发展限制 计算机发展的新方向

原子、分子计算机 量子计算机 DNA 计算机 光子计算机 微、纳米流体计算机

Page 95: §5  并发性发展及计算机系统的分类

工作站 Workstation 以个人计算环境和分布式网络环境为前提的高性能计算机。 70 年代末期,美国 Xero公司 Alto 机

工作站的特点 32 位或 64 位微处理器 内存 64MB 或 128MB 以上,硬盘容量 10GB 以上 采用开放式 OS 和良好的人机交互界面例 UNIX 、

Linux 、 Windows NT 具有高分辨率显示器, 1024*768 以上 内置网络环境 采用国际标准;

Page 96: §5  并发性发展及计算机系统的分类

工作站实例

联想补天工作站

SGI OCTANE2 工作站

SGI O2 工作站

Sun Blade™ 2000 工作站HP Unix 工作站

Page 97: §5  并发性发展及计算机系统的分类

名词解释 机器 多级层次结构 计算级系统结构 兼容机 模拟 仿真 并行性

指令流 数据流 多倍性 SISD SIMD MISD MIMD

Page 98: §5  并发性发展及计算机系统的分类

小结 名词解释

兼容性、系列机、可移植性、模拟、仿真、并行性 计算机系统的多级层次结构 系统结构、组成和实现的关系 计算机系统的设计原则、思路 计算机系统的分类( Flynn ) Von Neumann 型计算机系统的主要结构特征