吉林大学多核程序设计第一章系统分析.pptVIP

  • 62
  • 0
  • 约7.44千字
  • 约 56页
  • 2016-06-01 发布于湖北
  • 举报

吉林大学多核程序设计第一章系统分析.ppt

计算机发展方向 巨型机 微型机 银河系列、曙光系列 PC机 核心:微处理器(体积小、重量轻、功耗低、功能强、可靠性高、结构灵活) 1.1 微处理器发展史 微处理器发展大体经历以下几个过程: 第一代微处理器(4位):英特尔4004,8008 第二代微处理器(8位):采用NMOS工艺,采用汇编 语言、BASIC、Fortran编程,使用单用户操作系统。如英特尔8080,8085 第三代微处理器(16位):以1978年英特尔的8086出现为起点 第四代微处理器(32位):运算模式包括实模式、保护模式和“虚拟86”。英特尔80386 DX, 80486, Pentium 4… 2005年,Intel首发基于双核技术的Intel Pentium D处理器,正式揭开x86处理器多核时代。x86处理器多核技术的发展,人们也在进行并行化的探索,又出现了并行计算机体系结构 处理器发展史中的一些重要技术 高速缓存(Cache)技术: CPU速度快, Mem速度较慢, Cache技术可解决该矛盾。 Cache是位于CPU与Mem之间的临时存储器,它的容量比Mem小但交换速度快。在Cache中的数据是Mem中的一小部分,但这一小部分是短时间内CPU即将访问的,当CPU调用大量数据时,就可避开Mem直接从Cache中调用,从而加快读取速度 流水线技术: 流水线技术是一种将每条指令分解为多步,并让各步操作重叠,从而实现几条指令并行处理的技术。程序中的指令仍是一条条顺序执行,但可以预先取若干条指令,并在当前指令尚未执行完时,提前启动后续指令的另一些操作步骤。这样可以加快程序的运行。 处理器发展史中的一些重要技术 超线程(Hyper-Threading, HT)技术: 超线程技术就是利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器能使用线程级并行计算,进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高CPU的运行效率。 采用超线程技术能同时执行两个线程, 是因为他们使用了芯片的不同部分, 他们并不能象两个真正的CPU那样,每各CPU都具有独立的资源。 当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。因此超线程的性能并不等于两颗CPU的性能。 处理器发展史中的一些重要技术 新指令集:提高在多媒体和3D图形方面的处理能力 MMX (MultiMedia Extensions), 多媒体扩展指令集. SSE (Streaming SIMD Extensions), 第二套多媒体专用指令集,加速CPU的3D运算能力。 3D Now:3D加速指令集,加速CPU的浮点运算。 并行计算机 由一组处理单元组成,这组处理单元通过相互之间的通信与协作,以更快的速度共同完成一项大规模的计算任务。 60年代初期,晶体管以及磁芯存储器的出现,处理单元变得越来越小,存储器也更加小巧和廉价。出现规模不大的共享存储多处理器系统,即大型主机(Mainframe); 60 年代末期,同一个处理器开始设置多个功能相同的功能单元,流水线技术也出现了,在处理器内部的应用大大提高了并行计算机系统的性能。 两个最主要的组成部分 计算节点 节点间的通信与协作机制 并行计算机 Flynn分类法: Flynn根据指令流和数据流的不同组织方式,把计算机系统的结构分为以下四类: 单指令流单数据流(Single Instruction stream Single Data stream, SISD) 单指令流多数据流(Single Instruction stream Multiple Data stream, SIMD) 多指令流单数据流(Multiple Instruction stream Single Data stream, MISD) 多指令流多数据流(Multiple Instruction stream Multiple Data stream, MIMD) ——指令流:机器执行的指令序列;数据流:指令流调用的数据序列,包括输入数据和中间结果。 Flynn分类法: 并行计算机 并行计算机 单指令流单数据流 ——传统的串行计算机,硬件不支持并行,指令串行执行,在某个时钟周期内,CPU只能处理一个数据流,早期的计算机是这样的平台。 单指令流多数据流采用一个指令流同时处理多个数据流。此类机器在数字信号处理、图像处理以及多媒体信息处理等许多领域应用都非常有效。 多指令流单数据流采用多个指令流同时对一个数据流进行处理。多个指令流处理多个数据流才是更加有效的处理方式,因此,多指令流单数据流并行计算机一般只是作为一种理论模型出现,而并没有投入到实际应用当中。 多指令流多数据流能够同时执行多个指令流,这些指令流分别对不

文档评论(0)

1亿VIP精品文档

相关文档