2013-3答案第一章作业
1.解释下列术语:
层次结构 编译 解释 虚拟机
透明性 计算机系统结构 计算机组成 计算机实现
系列机 软件兼容 并行性 时间重叠
资源重复 资源共享 SMP MPP
桌面计算机 服务器 嵌入式计算机 Amdahl 定律
CPI MIPS MFLOPS 基准测试程序
参考答案:
层次结构:在分析设计计算机系统时,通常采用层次结构的观点和方法去描述系统的组成与功能,这样可以控制计算机的复杂性,并使得计算机的分析与设计可以有组织地、系统地进行。
编译:利用编译程序将源语言编写的源程序翻译成目标程序的过程。机器执行时,计算机将直接执行目标程序,不再需要源程序与翻译程序。
解释:程序运行时,取一条指令,将其换化为机器指令, 再执行这条机器指令。
虚拟机:指通过配置软件(如某种语言的编译器或解释器)扩充机器功能后所形成的一台计算机,实际机器并不具备这种功能。
透明性:在计算机技术中,对本来是存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性(Transparency )
计算机系统结构:也称为计算机体系结构(Computer Architecture),是机器语言程序员(或编译程序设计者)所看到的计算机的属性,是硬件子系统的概念性结构与功能特性。
计算机组成(Computer Organization),也称为计算机组织。计算机组成的任务是研究硬件子系统各组成部分的内部结构和相互联系,以实现机器指令级的各种功能和特性。它包括:数据通路宽度的确定,各种功能部件的相互连接及性能参数的匹配,功能部件的并行性确定,控制部件的设计,缓冲器和排队的使用,可靠性技术的采用等。
计算机实现(Computer Implementation),是指计算机组成的物理实现。它包括处理机、 主存储器、I/O 子系统等部件的物理结构,器件的集成度和速度,信号传输,器件、模块、 插件、底板的划分与连接,专用器件的设计,电源、冷却、装配等技术以及有关的制造技术 和工艺等。
系列机(Family Machine )是指由一个制造商生产的具有相同的系统结构,但具有不同组成和实现的一系列不同型号的计算机。
软件兼容的(Software Compatibility),即同一个软件可以不加修改地运行于体系结构相同的各档机器上,而且运行结果一样,差别只是运行时间不同。
并行性(Parallelism )是指在同一时刻或是同一时间间隔内完成两种或两种以上性质相同或不相同的工作。只要时间上互相重叠,就存在并行性。实际上,并行性包括同时性与并发性。同时性(Simultaneity )是指两个或多个事件在同一时刻发生;并发性(Concurrency )是指两个或多个事件在同一时间间隔内发生的并行性。
时间重叠:多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。
资源重复:在并行性概念中引入空间因素,通过重复设置硬件资源,可以大幅度提高并行处理能力。
资源共享,指多个任务按一定时间顺序轮流使用同一套硬件设备,这样既降低了成本,又提高了计算机设备的利用率。
SMP (Symmetrical Multi-Processor)是对称多处理机,它由多个相同或相似的处理机组成,以总线或某种开关阵列互连成一台计算机。
MPP (Massively Parallel Processing)是大规模并行处理系统,属于多计算机系统,它是由成百上千个结点(含微处理机、本地存储器、网络接口等)以高带宽低时延的专有网络互联而构成的大规模计算机系统,由于其高性能而用于科学计算、军事、数据仓库、决策支持系统等领域。
桌面计算机包括个人计算机和工作站。个人计算机主要为一个用户提供良好的计算性能 和较低成本的工作环境。工作站是指具有完整人机交互界面、图形处理性能和较高计算性能,可配置大容量的内存和硬盘,I/O 和网络功能完善,使用多任务多用户操作系统的小型通用个人化计算机系统。
服务器是是为网上客户机在网络环境下提供共享资源(包括查询、存储、计算等)的高性能计算机,具有高可靠性、高性能、高吞吐能力、大内存容量等特点,并且具备强大的网络功能和友好的人机界面。其高性能主要体现在长时间的可靠运行、良好的扩展性、强大的外部数据吞吐能力等方面。
嵌入式计算机:在很多应用中,计算机作为应用产品的核心控制部件,隐藏在各种装置、设备和系统中,这样的计算机称为嵌入式计算机。
Amdahl 定律可以阐述为:系统中某一部件由于采用某种更快的执行方式后所获得系统性能的提高,与这种执行方式的使用频率或占总执行时间的比例有关。
CP :执行一条指令所需的平均时钟周期数(Clock cyclesPer Instruction, CPI):
CPI= 一个程序的CPU 时钟周期数/ IC(IC 表示一个程序的指令条数)
MIPS 表示每秒百万条指令数。对于一个给定的程序,MIPS 定义为:
MFLOPS ,每秒百万次浮点操作次数。MFLOPS 定义为:
基准测试程序(Benchmark )用于测试计算机系统的性能,对不同结构机器的性能提供量化比较结果,为用户选择更适合应用要求的机器提供决策。基准测试程序试图提供一个客观、公正的评价机器性能的标准
6.试以实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系与相互影响。 参考答案:
计算机系统结构、计算机组成和计算机实现是3 个不同的概念。计算机系统结构是指令系统及其模型;计算机组成是计算机系统结构的逻辑实现;计算机实现是计算机组成的物理实现。它们各自包含不同的内容和采用不同的技术,但又有紧密的关系。
7.对计算机系统结构,下列哪些是透明的?哪些是不透明的?
存储器的模m 交叉存取;浮点数据表示;I/O 系统是采用通道方式还是外围处理机方式;数据总线宽度;阵列运算部件;通道是采用结合型的还是独立型的;访问方式保护;程序性中断;串行、重叠还是流水控制方式;堆栈指令;存储器最小编址单位;Cache 存储器。 参考答案:
见下表,“√”为透明性概念,
存贮器的模m 交叉存取;透明(组成)
浮点数据表示;不透明(系统结构)
I/O系统是采用通道方式还是I/O处理机方式;不透明
数据总线宽度;透明(组成)
阵列运算部件;不透明(系统结构)
通道是采用结合型的还是独立型的;透明(组成)
访问方式保护;不透明(系统结构)
程序性中断;不透明(系统结构)
串行、重叠还是流水控制方式;透明(组成)
堆栈指令;存贮最小编址单位;不透明(系统结构)
Cache 存贮器。透明(组成)
12.试述Flynn 分类的4 种计算机系统结构有何特点。
参考答案:
Flynn 按照指令流和数据流两种不同的组合,把计算机系统的结构分为以下4 类:
(1)单指令流单数据流SISD (Single Instruction Stream Single Datastream ),SISD 是传统的顺序处理计算机;
(2)单指令流多数据流SIMD (Single Instruction Stream Multiple Datastream),SIMD 以阵列处理机为代表;
(3)多指令流单数据流MISD (Multiple Instruction Stream Single Datastream),MISD 实际代表何种计算机,存在着不同的看法;
(4)多指令流多数据流MIMD (Multiple Instruction Stream Multiple Datastream),多处理机与多计算机系统属于MIMD 结构。
单指令流单数据流(SingleInstructionStreamSingleDataStream ,SISD )
SISD 其实就是传统的顺序执行的单处理器计算机,其指令部件每次只对一条指令进行译码,并只对一个操作部件分配数据。
单指令流多数据流(SingleInstructionStreamMultipleDataStream ,SIMD )
SIMD 以并行处理机为代表,结构如图,并行处理机包括多个重复的处理单元PU1~PUn ,由单一指令部件控制,按照同一指令流的要求为它们分配各自所需的不同的数据。 多指令流单数据流(MultipleInstructionStreamSingleDataStream ,MISD )
MISD 的结构,它具有n 个处理单元,按n 条不同指令的要求对同一数据流及其中间结果进行不同的处理。一个处理单元的输出又作为另一个处理单元的输入。
多指令流多数据流(MultipleInstructionStreamMultipleDataStream ,MIMD )
MIMD 的结构,它是指能实现作业、任务、指令等各级全面并行的多机系统,多处理机就属于MIMD 。
14.试说明服务器与桌面机有哪些不同。
参考答案:
桌面计算机典型的系统结构是以总线形式将CPU 模块、存储器模块、各种I/O 模块互 连在一起,构成计算机系统。多数桌面机使用单一处理机,属于SISD 结构计算机。
服务器是网络中的核心设备,其可靠性是关键,如运行Google 、处理Cisco 业务、或者在eBay 上进行拍卖业务的服务器,必须确保每周7 天、每天24 小时连续运转。如果这样的服务器系统出现故障,那么其后果比一台桌面计算机的故障所带来的损失更具灾难性。服务器可采用ECC (Error Checking and Correcting)内存、RAID (Redundant Array of Independent Disks )技术、热插拔技术、冗余电源、冗余风扇、机箱锁、密码保护等方法使服务器具备容错能力和安全保护能力。上述硬件技术与安装于服务器之上的网络操作系统的系统备份等功能结合起来,使服务器具备高可靠性。服务器应具有可扩展性。由于服务需求或功能需求的迅速增长,服务器也应随之扩展。服务器要将其数据和硬件提供给网络共享,其主要设计目标就是为了达到高效的吞吐量。
17.如果某一计算任务用向量方式求解比用标量方式求解要快20 倍,称可用向量方式求解部分所花费时间占总的时间的百分比为可向量化百分比。为达到加速比2,可向量化的百分比应为多少?为获得加速比10,所需可向量化的百分比为多少?
参考答案:
假设加速比达到2,可向量化百分比为x ,加速比达到10,可向量化百分比为y 则 2 = 1/(1-x + x/20)
X = 10/19,同理y = 18/19
19.假设高速缓存Cache 工作速度为主存的5 倍,且Cache 被访问命中的概率为90%, 则采用Cache 后,能使整个存储系统获得多高的加速比?
参考答案:
加速比 = 1/(1-0.9 +0.9/5) = 25/7
22.某工作站采用时钟频率为15 MHz、处理速率为10 MIPS 的处理机来执行一个已知混合程序。假定每次存储器存取为1 周期延迟,试问:
(1)此计算机的有效CPI 是多少?
(2)假定将处理机的时钟提高到30 MHz,但存储器子系统速率不变。这样,每次存储器 存取需要两个时钟周期。如果30%指令每条只需要一次存储存取,而另外5%每条需要两次存储存取,并假定已知混合程序的指令数不变,并与原工作站兼容,试求改进后的处理机性能。
参考答案:
(1) CPI = 一个程序的CPU 时钟周期数/ IC = 时钟频率/MIPS =15/10 = 1.5
CPI 时间是1.5*(1/15)us = 0.1us
(2) 由第一问可得原始CPI 为1.5 ,改进后一次访存操作需要2 个时钟周期,比改进前
每次访存多了1 个时钟周期;
由于有30% 的指令由于需要1 次访存,所以它们的时钟周期数需要加1 ; 有5% 的指令由于需要2 次访存,所以它们的时钟周期数需要加2.
所以可得 CPI new = CPI original + 30%*1 + 5%*2 = 1.5 + 0.3 + 0.1 = 1.9
改进后CPI new的时间:1.9 *(1/30)us = 0.0627us
23.处理机的时钟
30 MHz
(1)计算在单处理机上用上述跟踪数据运行程序的平均CPI 。
(2)根据(1)所得CPI ,计算相应的MIPS 速率。
参考答案:
(1) 平均CPI = 1*60% + 2*18% + 4*12 + 8*10% = 2.24
(2) MIPS = 时钟周期/CPI = 30M/2.24 = 13.4
24.在SUN SPARC2 工作站上,对SPEC Bencmark 进行测试,获得了如下所示的速率值,求出其算术、几何及调和平均值(以MFLOPS 表示)。
参考答案:
= (1
/10) *(10.7+8.9+8.3+5.0+8.7+9.0+9.7+11.1+7.8+5.6) = 8.48
= 8.25
= 10/(1/10.7+1/8.9+1/8.3+1/5.0+1/8.7+1/9.0+1/9.7+1/11.1+1/7.8+1/5.6) = 7.98