当前位置:文档之家› 如何设计一个高性能计算机档

如何设计一个高性能计算机档

如何设计一个高性能计算机1.要设计一个高性能计算机,首先我们得了解计算机的基本组成,运算以及运行方式。

计算机的基本组成:输入设备,存储器,运算器,控制器,输出设备基本计算模式:主机/终端, 客户机/服务器,服务器聚集,网格计算,云计算。

2.了解计算的基本组成后我们还要知道高性能计算机的概念,从而从一个基本计算机身上,设计出一个高性能计算机。

高性能计算机及分类,实现高性能的途径-并行平衡性, 局部性, 周期隐藏SISD, SIMD, MIMD, MISD, SPMD指令级并行, VLIW, EPIC流水线, 向量机, PVP, 数组处理机SMP, 紧偶合, 共享存储, Cache 一致性MPP, 机群,松散偶合, 分布式存储ccNUMA, 计算资源虚拟化3.获得高性能的途径提高部件性能极其限度: CPU, 内存, 磁盘, 网络并行处理, 设计优化, 性能优化开发局部性: 空间局部性, 时间局部性并行性与局部性的矛盾周期隐藏(1)计算机--从串行到并行基本的串行计算机结构(CPU)4.高性能计算机分类基于体系结构的分类基于访存模式的分类基于指令流/数据流的分类1,机群系统:IA + Linux/NT: 联想深腾1800 系列,性价比高RISC + Unix: IBM sp 系列,性价比低2,UNIX SMP 小型机:IBM 690,SUN,商务计算为主, 易编程,可扩展性差3,(传统)大规模并行机(mpp):T3E,曙光1000编程不易,曾停止发展Cray XT系列的Red Storm 重新抬头, TOP10, 原因: 大规模时体积小4,向量机(传统超级机):CRAY, 银河I不再单独发展5,向量并行机:NEC地球模拟器, Cray X1速度高,效率高, 昂贵,专用,非产品化在世界TOP500份额居第二6, ccNUMA:SGI Qrigin3000, Altix3000兼顾可扩展性和可编程性7,专用机:IBM BlueGene, BlueGen/L解决规模(速度)和体积功耗矛盾5.分类基于指令流/数据流的体系结构指令流(程序流)/数据流并行单指令流单数据流(SISD): 单CPU计算机单指令流多数据流(SIMD):数组处理计算机多指令流单数据流(MISD:栈计算机(无实用机)多指令流多数据流(MIMD):MPP, clusterSPMD: 单程序/多数据流, MPP, clusterMPMD: 多程序流/多数据流, 高吞吐(事务处理)6.CPU 芯片发展趋势CPU 芯片最终收敛到两家:Intel, IBM理由:市场规模决定芯片生存现实:志强/安腾赶上/超过RISC芯片,单CPU 速度达到每秒100亿次IBM 采用铜连线、绝缘衬底、Low k 技术Power6速度超过80亿次/秒HP/Compaq向INTEL 靠拢,Alpha 停止发展SUN:采用志强SGI:放弃MIPS, 采用IA64做Altix 服务器最终趋势:IA 和RS6000(IBM Power) 存在和发展流水线与向量机7.流水线与向量机流水线: pipelines向量处理机: vector processor, 并行向量处理机(PVP)数组处理机: array processor内存访问流水线消息传递流水线(/message queue)8.网络计算模式1,主机(mainframe)/终端(1980年代中期年以前)直接I/O连接或互连网连接效率高,开放性,扩充性差,技术复杂2, 客户机/服务器(client/server)(1980年代后期以来)基于局域网(LAN)或广域网(W AN)开放、可扩充难管理总拥有成本(TCO)高3.大规模并行处理系统结构设计规范系统设计目标: 浮点速度, 字长, 内存总容量, 磁盘总容量,点-点通信带宽, 等分带宽(bi-section) ,可扩展性, 系统均衡性系统结构: 可扩展分布式(共享?)存储, MIMD/SPMD结点机: 单/SMP, CPU种类与主频, cache, 内存, I/O接口互连网络: 高速网: mesh(2D/3D), Tree, nCUBE; 以太网结点-网络接口: 与高速网对应, 单/双卡, 带宽9.当了解了计算机与高性能计算机的原理与技术的时候,我们就可根据这些理论来进行设计一个高性能计算机。

1.大规模并行处理系统结构设计规范(1)系统设计目标: 浮点速度, 字长, 内存总容量, 磁盘总容量,点-点通信带宽, 等分带宽(bi-section) ,可扩展性, 系统均衡性(2)系统结构: 可扩展分布式(共享?)存储, MIMD/SPMD(3)结点机: 单/SMP, CPU种类与主频, cache, 内存, I/O接口(4)互连网络: 高速网: mesh(2D/3D), Tree, nCUBE; 以太网(5)结点-网络接口: 与高速网对应, 单/双卡, 带宽2.大规模并行处理系统结构设计规范(续(1)I/O: 专用/通用结点机, PCI/专用通道, SAN/NAS外部网络连接: 前端机/客户机操作系统:结点OS(Unix/Linux/WindowsNT),并行OS (active message ), 实/虚存, 并行文件系统(2)使用模式: 批处理/交互式, 独占/多用户, client/server,直接login, 远程host, 网格(3)并行编程环境: 并行优化编译, 库函数, 调试器,PVM/MPI, HPF(4)可视化工具: 并行程序运行可视化, 运行结果可视化3.MPP结构设计规范实例系统设计目标:浮点速度: 25.6亿次/秒, 32CPU(计算)内存总容量: 1024MB, 磁盘总容量: 5GB点—点通信带宽: 80MB/秒(双); 等分带宽:480MBS可扩展性: CPU数, 内存, 磁盘, 通信, I/O系统结构: MIMD, 分布式内存结点机: 计算结点32个,单CPU, i860, 40MHz, 2指令/clock, 内存32MB;/O结点2个; 服务结点2个互连网络: 2_D mesh, wormhole 机制, 规模: 6 X 6;结点-网络接口: 双向DMA, FIFO, 带宽80MB/秒(双向) 4.MPP系统结构设计案例研究: 曙光1000典型的MPP系统: CM5, nCUBE, Paragon, T3D/E/F曙光1000系统总框图计算结点机框图计算结点总线– Mesh 接口:接收/发送FIFO, 异步收发控制, 代码校验I/O(服务)结点EISA总线—Mesh接口(图):EISA 总线端: 双向DMA(直接内存存取)Mesh端: 接收/发送FIFO, 异步收发控制,代码校验曙光1000大规模并行处理系统4.MPP (Cluster)的通信系统◆ 通信流程◆ 通信网络◆ 路由机制◆ 路由(寻径)规则◆ 通信芯片及设计◆ 消息传递界面MPI◆ 通信优化 — 主动消息传送active messaging5.MPP (Cluster)的通信流程MPI 并行程序中的 发送(Send )语句状态切换( context switching): 用户态◊ OS 态Memory copy: (被传数据) 用户空间◊系统空间打包启动发送返回用户态MPI 并行程序中的 接收(Send )语句查询方式(主动)/中断方式(被动)状态切换( context switching): 用户态◊ OS 态接受, 解包Memory copy: (已接收的数据)系统空间◊用户空间返回用户态Wormhole 路由器设计问题– 异步控制逻单元(ACE)如何设计?设备 前端机2, X( Y1,异步前进: 仅当Li+1非锁存数据时, Li才能能发新的申请; 当Li+1锁存时, Li不再锁存同一数据片(往前传))判正负和零, 修改, 剥离;3, 状态机(S0, S1, S2, S3) 和控制逻辑的设计4, 路由开关设计消息竞争: 在竞争输出锁存器L3时发生.1), 被堵塞: 进入mesh 时或拐弯时;前进道路已被占领2), 随机竞争:异步逻辑无时钟同步,势必造成不确定状态.5.用户级active message 的实现基本思路:将消息发送/接收协议处理由OS空间移至用户空间2.消息包格式XY长度Tag处理程序指针参数1,2,..2,用户级处理程序发送: 用户组包并发送接收: 抓取消息包并放入计算进程6.用户级active message 的实现3, 软件层user applicationsmessage passingprotocolactive messagesnetwork interface不进操作系统核心4,用户层为了消除进出OS和内存copying的额外开销,从用户空间直接访问网络端口(I/O ports).方式:中断/查询.Ports: FIFO中断向量,...虚地址空间Mesh 屏蔽寄存器10.以上就是一个如何设计一个高性能计算机的全部流程。

相关主题