泰坦(英语:Titan)是一台由克雷公司承建的超级电脑,置放于美国能源部下属的橡树岭国家实验室中,供各项科学研究项目使用。泰坦是由原来也置放于橡树岭国家实验室的美洲虎(英文:Jaguar)经过多次升级改装而成。泰坦也是世界上第一台以通用图形处理器(GPGPU)为主要数据处理单元的超级电脑,2012年11月至2013年6月是世界上最快的超级电脑。美洲虎在2011年10月被宣布开始进行大幅升级,2012年10月,升级作业基本完工后这台超级电脑被更名为泰坦,并开始进行稳定性和性能测试,2013年中期方可供科学研究者们使用。[4][5]升级的预算开始时是6千万美元,其中绝大部分由美国能源部提供。而后来根据克雷公司的公开信息,整台泰坦超级电脑的费用最终是9千7百万美元,[4]为填补资金空缺,美国国家海洋和大气管理局也出了一小部分资金参与建造,以从主要出资方美国能源部的手上获得一定的使用权。[6]
泰坦使用由超微半导体提供的皓龙(Opteron)处理器链接英伟达提供的Tesla运算用图形处理器以进行协同运算,来在提供比美洲虎更高的运算性能之同时保持能源利用效率。整台泰坦共计18,688颗中央处理器和相同数量的图形处理器,理论峰值性能是27petaFLOPS(每秒27×1015次浮点运算),然而,在2012年11月的LINPACK基准性能测试中却仅取得17.59petaFLOPS的成绩(每秒17.59×1015次浮点运算)[3][7],尽管如此,但无论从性能上抑或是能效比上来说,仍然要比同时期的其它超级电脑更胜一筹。
泰坦可用于任何目的的数据处理。然而,数据处理任务的优先级,需要基于三个方面的考量:任务计划的重要度、任务计划对异构运算的利用潜力以及任务计划的运算程序源码与其它超级电脑的兼容性。经过筛选调度后,选中六个运算计划,这六个“前锋”计划在泰坦开放使用后由泰坦依调度运行处理,这些处理任务多为关于纳米科技或气候模型。不过其它没被选为首先处理的任务计划,仍会进行优先级调度,进入等候贮列,以待泰坦的运行处理。由于以图形处理器来处理数据,基于图形处理器拥有比中央处理器多得多的线程的理由,不少程序需要进行源码变动处理以适应新的混合架构,这些处理常常需要有更高级的运算平行度,而这些变更甚至也可以在以中央处理器为主的超级电脑上获得性能的提升。
2011年10月至12月期间,美洲虎200个机柜中的96个机柜中装备的Cray XT5平台主机(刀片服务器,配置为每节点两颗6核心的AMD Opteron处理器)升级为Cray XK6平台主机(刀片服务器,配置为每节点一颗16核心的Opteron 6274处理器),其它剩余的机柜仍照常运作。同年12月,所有运算任务转移至96个已更换Cray XK6主机平台的机柜中,剩余的104个机柜中的主机均升级Cray XK6。[18] 系统内部连接(允许各节点的处理单元相互沟通的网络)也被升级,橡树岭国家实验室的ESnet网络连接的带宽也升级为100Gb/s,以便更快地从其它实验室、大学和研究机构进行数据交换。[19]系统存储器容量也随着Cray XK6主机平台的升级而翻倍扩增至600TB,其中有960台Cray XK6主机(占用10个机柜)还装有以NVIDIA Fermi架构显示核心(即用于NVIDIA GeForce 400/500系列显卡的图形处理器)为基础的NVIDIA Tesla运算加速卡。这960个节点作为泰坦日后硬件配置的参考,并用来为日后泰坦的完全升级测试程序源码。美洲虎至泰坦的第一阶段的升级使得这台超级电脑的峰值性能从2.3petaFLOPS提升至3.3petaFLOPS,这个阶段下这台超级电脑仍称为美洲虎。[17]
2012年中期,英伟达推出NVIDIA Kepler架构的图形处理器,也在不久推出基于这个架构的NVIDIA Tesla运算处理器。2012年9月13日开始,按照实验室和克雷、英伟达签订的合约,英伟达提供超过一万八千块NVIDIA Tesla K20X运算加速卡(基于开普勒架构的GK110顶级显示核心,用作通用图形处理器[20][21])装进美洲虎超级电脑的Cray XK6平台主机中,每节点一块,更换图形处理器后Cray XK6平台更名为Cray XK7平台。中央处理器维持不变,仍为16核心的Opteron 6274处理器。[4][22]同年10月底基本完工并且将这台超级电脑更名为泰坦。[23]
2013年3月份,英伟达发布了消费级市场最强单芯片显卡——GeForce GTX Titan,使用和泰坦超级电脑上使用的Tesla K20X运算卡相同的“GK110”显示核心。[32]这种关系也是这款显卡的最大卖点所在,主要针对民间对游戏图形和科学运算都有需要的发烧级玩家。[33]
为了更大幅度地提升平行运算性能,建造方选择用通用图形处理器实现,因为图形处理器平行运算效率相比传统的中央处理器的有更为巨大的优势所在。[40]尽管图形处理器/通用图形处理器的时钟频率要比中央处理器低不少,但每颗NVIDIA GK110显示核心拥有2,688个时钟频率为732MHz的流处理器(CUDA核心),全部流处理器联合进行运算处理,从而使得整个系统性能更高。[1][34]因此,在泰坦超级电脑上,中央处理器核心主要用以分配运算任务给通用图形处理器,数据处理主要由通用图形处理器来实现。而此前的超级电脑,则是由中央处理器直接处理数据,即使有通用图形处理器的加入也就是辅助运算的角色。[40]
泰坦超级电脑也是Green500中排名第三的超级电脑(截至2012年11月),每消耗一瓦特的电功率获得2142.77megaFLOPS(21.4277亿次浮点运算每秒)的运算性能。[48]Green500也是全球500强超级电脑的排名,但不同于TOP500的是Green500是根据性能功耗比来进行排名。[49]
CAAR目前已和英伟达以及其它代码提供者合作开发新版编译器,将指令集成到供通用图形处理器使用的编程语言当中,[52]以使研究者们可以和以前一样,以Fortran、C或C++来编写他们的代码而无须学习新的编程语言,并且编译器可以将这些代码编译为通用图形处理器可以高效运作的程序。[52]
目前泰坦的程序开发工具中,“图形处理器加速库”包括MAGMA、CULA、cuBLAS/cuSPARSE;“加速编译器指令”包括 OpenACC、PGI Accelerator、CAPS HMPP Workbench;“低级图形处理器编程语言”有NVIDIA C for CUDA、PGI CUDA Fortran、OpenCL。这些工具中有部分甚至允许开发者在不了解关于NVIDIA CUDA的知识的情况下使用。[54]在泰坦上适用的编译器有PGI(Portland Group Compiler Suite,默认使用这个)、GCC、CCE(Cray Compiling Environment)以及英特尔提供的编译器。[55]
目前来说,对现有科学研究项目中的代码重写的部分主要是多线程化、增进并发性的部分,即所谓的多核多线程优化,只是更深入、更适合通用图形处理器的架构特性(通用图形处理器拥有比中央处理器多得多的线程和更好的运算并发性)。不过这样的程序源码优化也适用于传统以中央处理器为基础的机器上,这些机器也可以从中获得性能提升。天体物理学家兼程序员Bronson Messer,表示“一个应用程序要将泰坦的性能发挥至极限,必须寻求方法来使通用图形处理器满负载运作,需要明确的是通用图形处理器尽管处理速度很快,但灵活度显然不如中央处理器。”[52]作业管理者也发现,一些计划项目的代码在重写后,在那些不是基于图形处理器的机器上的效率也变得大有提升,“Denovo”项目的程序在基于中央处理器的机器上甚至还比原先获得双倍的性能提升表现。[51]
要求调用图形处理器的进行运算作业的代码变更量因不同项目而变。根据负责NRDF项目的梅瑟博士(Dr. Messer)的意见,他们的代码中调用图形处理器的算法源码只占整个代码中很小的百分比,因为这些程序算法的运算都相对简单,但处理进程重复而且具有平行性。[56]NRDF的程序用CUDA Fortran写成,CUDA Fortran是Fortran语言链接CUDA指令扩充库(NVIDIA CUDA库)给予图形处理器使用的Fortran改进版本。[56]
在泰坦正式激活的当天,时任美国能源部长朱棣文发表声明,表示“高性能计算领先之国家,在国防、科学、医学、能源等一系列领域均将拥有比其它不具备超级电脑的国家更为巨大的优势,泰坦将和能源部下属的其它超级电脑一起,成为确保美利坚合众国之创新优势的有力工具。”[59]
负责“NRDF”项目的梅瑟博士的研究需要数以百计的偏微分方程来追踪能量、角度、散射角以及在一颗恒星进入超新星阶段时每种不同类型的中微子模拟,得出数百万个单独的方程。另外,一个名为“Chimera”(奇美拉/凯米拉)的代码,以神话中的生物奇美拉来命名之,乃它有三个“头”:一个是仿真恒星物质(主要是其化学组成)的流体力学;第二个是模拟辐射转移;第三个是模拟核燃烧(即热核反应/核融合)。第三个“头”首先由图形处理器群运行处理,由于热核反应的过程模拟最容易由图形处理器的架构来处理,尽管其它方面的源码也将及时进行适应性修改及优化目前,项目模拟了14或15种核素,但如果图形处理器提供良好的加速,梅瑟博士预计,与经验观察相比,将有多达200种核素可以在更高的精度上被模拟出来。[62]
“VERA”项目是一个轻水反应炉的 仿真,在美洲虎超级电脑上的CASL(Consortium for Advanced Simulation of Light Water Reactors,联合轻水反应炉高级仿真)编写并运作。VERA允许工程师监视反应炉使用寿命里反应炉核心任何部分的性能表现和状态,以辨别找出有研究 价值或改进反应炉设计等他们感兴趣的研究点。[63]尽管不是六个先锋计划中的一员,但VERA将会在CAAR的协助下进行充分优化并由泰坦的管理团队进行测试后在泰坦上继续运作。计算机科学家汤姆·埃文斯(Tom Evans)发现,相比于以往在传统中央处理器为主的超级电脑之间进行程序码适应性修改以及优化作业,为泰坦的混合架构修改及优化VERA的代码难度十分大。尽管如此,他们的目标是要将仿真整个反应炉燃料循环的时间,从以往需要18~36个月,在泰坦上缩短至只需一个星期。
泰坦使用由超微半导体提供的皓龙(Opteron)处理器链接英伟达提供的Tesla运算用图形处理器以进行协同运算,来在提供比美洲虎更高的运算性能之同时保持能源利用效率。整台泰坦共计18,688颗中央处理器和相同数量的图形处理器,理论峰值性能是27petaFLOPS(每秒27×1015次浮点运算),然而,在2012年11月的LINPACK基准性能测试中却仅取得17.59petaFLOPS的成绩(每秒17.59×1015次浮点运算)[3][7],尽管如此,但无论从性能上抑或是能效比上来说,仍然要比同时期的其它超级电脑更胜一筹。
泰坦可用于任何目的的数据处理。然而,数据处理任务的优先级,需要基于三个方面的考量:任务计划的重要度、任务计划对异构运算的利用潜力以及任务计划的运算程序源码与其它超级电脑的兼容性。经过筛选调度后,选中六个运算计划,这六个“前锋”计划在泰坦开放使用后由泰坦依调度运行处理,这些处理任务多为关于纳米科技或气候模型。不过其它没被选为首先处理的任务计划,仍会进行优先级调度,进入等候贮列,以待泰坦的运行处理。由于以图形处理器来处理数据,基于图形处理器拥有比中央处理器多得多的线程的理由,不少程序需要进行源码变动处理以适应新的混合架构,这些处理常常需要有更高级的运算平行度,而这些变更甚至也可以在以中央处理器为主的超级电脑上获得性能的提升。
目录
历史介绍
泰坦是橡树岭实验室美洲虎超级电脑的升级版。美洲虎初期纯粹使用中央处理器,而后期也以图形处理器辅助中央处理器运算。[8][9]原美洲虎升级计划
为了在保持性能功耗比的情况下提升数据处理性能,原来的美洲虎超级电脑在2005年落成后不久时已经制定了多种升级方案,当时美洲虎仍使用Cray XT3主机平台,峰值运算性能为25teraFLOPS。[10]2008年美洲虎的Cray XT3主机平台升级Cray XT4主机平台,峰值性能也提升至263teraFLOPS;2009年继续升级至Cray XT5主机平台,峰值性能为1.4petaFLOPS。[10]在升级为泰坦前,未来的升级计划原定的峰值性能为1.76petaFLOPS。[11]泰坦建造计划
2005年当美洲虎落成时,橡树岭国家实验室已计划打造一台达到20petaFLOPS性能级别的超级电脑,而以传统的中央处理器架构来实现在当时来说有不低的难度和成本,因此选择以中央处理器+图形处理器的混合架构方案,尽管这个方案直到2010年才得以实现,2011年以后计划将升级后的美洲虎更名为泰坦。[12]2010年11月16日在ACM/IEEE超级运算研讨会非正式私人会议上公布了美洲虎的大升级计划(亦即泰坦的建造),在会议的前一年(2009年)还和NVIDIA签署通用图形处理器的供应协议。[13][14]2011年10月11日对外宣布开始第一阶段的升级。[15]最初的计划是将新建一个占地15,000平方米(160,000平方英尺)的新机房,来置放升级后的美洲虎,但最后限于预算而取消,改为沿用美洲虎现有的基础设施。[16] 2011年10月9日,美洲虎的主机开始了为期一年的汰换升级,完全升级后的超级电脑会重命名为“泰坦”。[17]第一阶段
第一阶段的升级主要是更换新的中央处理器。2011年10月至12月期间,美洲虎200个机柜中的96个机柜中装备的Cray XT5平台主机(刀片服务器,配置为每节点两颗6核心的AMD Opteron处理器)升级为Cray XK6平台主机(刀片服务器,配置为每节点一颗16核心的Opteron 6274处理器),其它剩余的机柜仍照常运作。同年12月,所有运算任务转移至96个已更换Cray XK6主机平台的机柜中,剩余的104个机柜中的主机均升级Cray XK6。[18] 系统内部连接(允许各节点的处理单元相互沟通的网络)也被升级,橡树岭国家实验室的ESnet网络连接的带宽也升级为100Gb/s,以便更快地从其它实验室、大学和研究机构进行数据交换。[19]系统存储器容量也随着Cray XK6主机平台的升级而翻倍扩增至600TB,其中有960台Cray XK6主机(占用10个机柜)还装有以NVIDIA Fermi架构显示核心(即用于NVIDIA GeForce 400/500系列显卡的图形处理器)为基础的NVIDIA Tesla运算加速卡。这960个节点作为泰坦日后硬件配置的参考,并用来为日后泰坦的完全升级测试程序源码。美洲虎至泰坦的第一阶段的升级使得这台超级电脑的峰值性能从2.3petaFLOPS提升至3.3petaFLOPS,这个阶段下这台超级电脑仍称为美洲虎。[17]
第二阶段
第二阶段的升级主要是更换安装新的用作通用数据处理的图形处理器。2012年中期,英伟达推出NVIDIA Kepler架构的图形处理器,也在不久推出基于这个架构的NVIDIA Tesla运算处理器。2012年9月13日开始,按照实验室和克雷、英伟达签订的合约,英伟达提供超过一万八千块NVIDIA Tesla K20X运算加速卡(基于开普勒架构的GK110顶级显示核心,用作通用图形处理器[20][21])装进美洲虎超级电脑的Cray XK6平台主机中,每节点一块,更换图形处理器后Cray XK6平台更名为Cray XK7平台。中央处理器维持不变,仍为16核心的Opteron 6274处理器。[4][22]同年10月底基本完工并且将这台超级电脑更名为泰坦。[23]
测试验收
“泰坦”在2013年初接受验收测试,但只完成了92%的测试项目,低于原来通过95%的测试项目的要求。[18][24]后来检查发现,导致测试出现问题的是主板的PCI-E插槽内的金手指连接器虚焊或焊接部位出现裂缝。[25]对于这个问题,克雷公司按照合同要求承担修复所需费用,并且以每星期12到16个机柜的速度修复这个缺陷。[25]修复过程中其它能正常运作的机柜照常运算以供研究者们继续进行他们的运算任务,[25]而且到2013年3月11日,共8,972颗通用图形处理器通过测试后,正式投入运作[26]2013年4月8日,橡树岭国家实验室宣布修复工作已完成,预计2013年5月完成最后的验收测试项目。[27]6月12日,橡树岭实验室宣布泰坦已经完成了测试。[28]资金和建造
泰坦的升级建造仍由美洲虎的承建商克雷公司来负责进行,其主要资金来源是美国能源部下属的橡树岭国家实验室。当时实验室的资金用来升级中央处理器的 话是十分充足的,但剩下的资金就不足够用来购置18,688块通用图形处理器(运算加速卡),因此美国国家海洋和大气管理局也同意出资填补资金缺口,但需 要以一定的使用权和使用时限作为回报。[29][30]橡树岭实验室的科学计算负责人杰夫·尼科尔斯(Jeff Nichols)表示“泰坦花了实验室大约6千万美元,后来国家海洋和大气管理局的出资不足1千万美元,但是具体数字则因为保密协议就不便公开了。”[29][8]与克雷公司的全部合约共计约9千7百万美元,不包括泰坦落成以后的可能的升级。[8]商业化
在美洲虎超级电脑升级完成后,克雷将用于泰坦超级电脑的Cray XK7主机平台作商业化推广,还表示日后仍会有很大的硬件升级空间与性能提升空间。[31]2013年3月份,英伟达发布了消费级市场最强单芯片显卡——GeForce GTX Titan,使用和泰坦超级电脑上使用的Tesla K20X运算卡相同的“GK110”显示核心。[32]这种关系也是这款显卡的最大卖点所在,主要针对民间对游戏图形和科学运算都有需要的发烧级玩家。[33]
硬件配置
机架、电源供应
泰坦超级电脑使用和美洲虎超级电脑相同的200个机柜的设计,占地404平方米,基本上只是更换了机柜和布线。[5][34]沿用改进自美洲虎超级电脑的电力供应系统和冷却系统,节省了能源部/实验室约两千万美元的经费。[6]泰坦的总耗电功率最大8.2兆瓦,[35]比美洲虎高出了1.2兆瓦,但是泰坦提供比美洲虎快了几乎10倍的运算性能,特别是浮点运算方面。[2][5]电力供应系统的交流电输入电压高达480伏,供每个机柜使用,由于使用更高的电压,因此可以使用比美国标准的208伏(线电压)电缆更细的输入电缆,由更小直径的电缆铜芯上节省出来的资金就有一百万美元。[2]为应付电力供应突然中断的事件,碳纤维飞轮能量存储器可以维持网络系统和存储系统16秒的电力供应,[36]如果两秒内电力供应没有恢复,柴油发电机就会在大约7秒的时间内启动,并一直驱动飞轮,[36]但是飞轮和发电机被设计成只为网络系统和存储系统维持电力供应,以便能快速重新打开整台机器,发电机也不会为运算处理单元基础设施提供后备电力供应,因此外接电力供应中断时(即使发电机已启动)是不会进行运算处理作业的,这个特性和笔记本电脑的“睡眠”功能类似。[36]冷却系统
泰坦的机柜使用主动式风冷散热器,但是外界空气进入机柜前则要事先经过冷却处理,[37]所用的空气冷却器,可制冷质量为6,600吨(相当于23.2兆瓦的热功率),以5.5摄氏度(约42华氏度)的低温冷却水作为空气冷却器的散热介质,从机柜中带走热量的热空气会流到至空气冷却器冷却,再回流进入机柜,如此往复循环。[37]另外,“泰坦”的散热系统设计时并没有考虑噪音问题,因此这台超级电脑运作时的噪音非常巨大,以至于机房需要更好的隔音措施,进入机房并且逗留超过15分钟的人员必须采取像是佩戴隔音耳塞或耳机等的听力保护措施。[38]运算主机
完整的泰坦超级电脑上有18,688个运算节点,每部刀片服务器拥有四个运算节点,24部刀锋主机为一个机柜。[39]- 整台超级电脑共299,008个处理器核心和超过710TB的存储器容量(包括显示存储器,全部存储器打开ECC功能后共693.6TB可用);[2]
- 存储器使用硬盘阵列存储,原来容量是10PB(由13,400块,每块7,200转每分1TB容量的硬盘组成[43]),其有效传送速率为240GB/s。[2][34]在2013年4月,进行了一次存储器的升级,升级后的存储器容量增至40PB,其有效传送速率达到1.4TB/s。[2][44][45]
你根本不能从传统的基于CPU的架构上获得这个级别的性能、能源效率和成本效率。加速运算是未来十年使exascale性能级别得以达成的最好而且最现实的方式。
“
”
主机管理
在运算主机以外,为方便管理并监视泰坦的运作状况,还另外设置了登录管理节点。每个登录节点的配置为一颗八核心的AMD Opteron 6140中央处理器和256GB的存储器。在授权用户通过网络连接至登录管理节点并登录后,默认是在登录管理节点上进行任务调度、监视运算节点运作状况等 作业。[41]显示设施
为了让科研人员能够更好地明白泰坦的数据处理结果,泰坦也设有显示输出,通过链接名为“EVEREST”的显示设备来实现。EVEREST,全名 “Exploratory Visualisation Environment for Research and Technology”,意即“技术和研究的探索可视化环境”,是一个装有一块10米×3米(30英尺×10英尺)的主荧幕和一块尺寸要小上一些的副荧幕 的房间,荧幕的分辨率均为3千7百万像素×3千3百万像素,还附带3D显示能力(需要配合3D眼镜使用)。[46]性能、能效比表现
泰坦的理论峰值性能为每秒27×1015次浮点运算(27petaFLOPS),或者是每秒2.7千万亿次运算作业。[47]2012年11月12日,泰坦通过LINPACK基准性能测试,最终成绩为每秒17.59×1015次浮点运算,TOP500最后宣布了新的第一名由泰坦超级电脑夺得,取代前任第一IBM红杉。尽管目前的实际峰值性能和理论峰值性能相比有较大落差,但能效比仍然要比众多超级电脑优胜。[3]泰坦超级电脑也是Green500中排名第三的超级电脑(截至2012年11月),每消耗一瓦特的电功率获得2142.77megaFLOPS(21.4277亿次浮点运算每秒)的运算性能。[48]Green500也是全球500强超级电脑的排名,但不同于TOP500的是Green500是根据性能功耗比来进行排名。[49]
软件支持
操作系统、文件系统
泰坦超级电脑使用克雷公司基于Linux核心开发的Cray Linux Environment分布式操作系统。Cary Linux Environment操作系统由以下两部分组成:登录管理节点为全功能Linux核心的操作系统,运算节点则是为提升性能和效率而特别优化精简的基于轻量级Linux核心CNL(Compute Node Linux)的操作系统。[41]文件系统使用Lustre分散式文件系统,代号“Spider”。[50]程序编写与编译器
不同于以往以中央处理器作主要数据处理单元或以图形处理器辅助处理数据的超级电脑,泰坦超级电脑以图形处理器为主要的数据处理单元。在初期,不少项目的程序源码一般重新编写或编译以方便泰坦的通用图形处理器运行,而且还要求这些源码能兼容于以中央处理器为主的系统,以便项目可以不仅可以由泰坦进行处理,还能供其它仍使用传统中央处理器架构的超级电脑运行。[51]Oak Ridge Leadership Computing Facility(OLCF)还成立了Center for Accelerated Application Readiness(加速申请中心,CAAR)来帮助科学研究者们重写或重新编译他们所写的代码以供泰坦运作之,并且在英伟达总部举办开发者研习会,让研 究人员和程序员学习并使用泰坦和其它类似的超级电脑的架构、编译器和应用程序。[52][53]CAAR目前已和英伟达以及其它代码提供者合作开发新版编译器,将指令集成到供通用图形处理器使用的编程语言当中,[52]以使研究者们可以和以前一样,以Fortran、C或C++来编写他们的代码而无须学习新的编程语言,并且编译器可以将这些代码编译为通用图形处理器可以高效运作的程序。[52]
目前泰坦的程序开发工具中,“图形处理器加速库”包括MAGMA、CULA、cuBLAS/cuSPARSE;“加速编译器指令”包括 OpenACC、PGI Accelerator、CAPS HMPP Workbench;“低级图形处理器编程语言”有NVIDIA C for CUDA、PGI CUDA Fortran、OpenCL。这些工具中有部分甚至允许开发者在不了解关于NVIDIA CUDA的知识的情况下使用。[54]在泰坦上适用的编译器有PGI(Portland Group Compiler Suite,默认使用这个)、GCC、CCE(Cray Compiling Environment)以及英特尔提供的编译器。[55]
目前来说,对现有科学研究项目中的代码重写的部分主要是多线程化、增进并发性的部分,即所谓的多核多线程优化,只是更深入、更适合通用图形处理器的架构特性(通用图形处理器拥有比中央处理器多得多的线程和更好的运算并发性)。不过这样的程序源码优化也适用于传统以中央处理器为基础的机器上,这些机器也可以从中获得性能提升。天体物理学家兼程序员Bronson Messer,表示“一个应用程序要将泰坦的性能发挥至极限,必须寻求方法来使通用图形处理器满负载运作,需要明确的是通用图形处理器尽管处理速度很快,但灵活度显然不如中央处理器。”[52]作业管理者也发现,一些计划项目的代码在重写后,在那些不是基于图形处理器的机器上的效率也变得大有提升,“Denovo”项目的程序在基于中央处理器的机器上甚至还比原先获得双倍的性能提升表现。[51]
要求调用图形处理器的进行运算作业的代码变更量因不同项目而变。根据负责NRDF项目的梅瑟博士(Dr. Messer)的意见,他们的代码中调用图形处理器的算法源码只占整个代码中很小的百分比,因为这些程序算法的运算都相对简单,但处理进程重复而且具有平行性。[56]NRDF的程序用CUDA Fortran写成,CUDA Fortran是Fortran语言链接CUDA指令扩充库(NVIDIA CUDA库)给予图形处理器使用的Fortran改进版本。[56]
研究计划
由于泰坦超级电脑的研发依靠美国能源部和美国国家海洋和大气管理局的资金资助,因此来自美国联邦政府部门的科学研究不少,有能源(包括可再生能源、核能)、气候变化、高效率引擎、新型燃料、新型材料等一系列科学研究项目。[57][58]在泰坦正式激活的当天,时任美国能源部长朱棣文发表声明,表示“高性能计算领先之国家,在国防、科学、医学、能源等一系列领域均将拥有比其它不具备超级电脑的国家更为巨大的优势,泰坦将和能源部下属的其它超级电脑一起,成为确保美利坚合众国之创新优势的有力工具。”[59]
使用计划安排
尽管泰坦可以用于几乎任何类型的科学研究项目,但使用请求往往超出了许可时间,因此制定出项目优先级选择标准,其标准是:根据项目计划的重要度来决 定运行时间的选择,这里面若有能力充分发挥混合架构运算能力,并且还能够在其它超级电脑上运作的,则优先考虑(即不可只让泰坦单独处理)。2009年,OLCF收到了50个首先使用它们的超级电脑的项目,经筛选后剩下六个成功进入候选,这六个项目中不仅是重要的科学研究项目,还赋予它们完全使用并发挥混合运算的运算能力。[34][51]这六个首先使用泰坦的项目中,大部分是关于新型纳米材料、气候变化模型的研究。不过,其它未入选的项目,仍然会进入泰坦的任务调度队列,等待泰坦的运行处理。科学研究项目
在泰坦上首先处理的六个项目分别是“S3D”、“WL-LSMS”、“Denovo”、“LAMMPS”、“CAM-SE”和“NRDF”:- “S3D”是一个研究燃烧模型的分子物理学项目,研究细颗粒周围的燃烧的情形,以提升柴油和生物燃料的发动机的燃烧效率。2009年,泰坦的前身美洲虎,获得了一个与烃类自燃火焰和直接燃油喷射柴油发动机燃烧效率提升相关的一个已完全解决的模拟过程;[51]
- “WL-LSMS”项目,模拟除绝对零度以外的各个温度下,电子和原子在磁性物质中的相互作用,早前的一个处理程序源码版本在美洲虎上首次获得超过1petaFLOPS的运算性能;[51]
- “Denovo”项目,模拟核反应炉的运作情况,旨在提升核反应炉的能量转换效率、降低能量损失。[34]Denovo项目的运算程序在为泰坦进行源码优化后,在传统的以中央处理器为主的超级电脑上获得比优化前快两倍的性能,在泰坦上获得比美洲虎快3.5倍的性能表现;[51][60]
- “LAMMPS”项目,全称“Large-scale Atomic/Molecular Massively Parallel Simulator”(大尺寸原子/分子大规模平行模拟器),是一个关于分子动力学的研究计划,模拟微粒从原子的尺度跨越至相对论的尺度的情形,以提高材料科学的水平以及其在半导体、原生质/生物材料、聚合物等方面的应用;[61]
- “CAM-SE”是两个项目合并组成,分别是“Community Atmosphere Model”(群落大气模型)和“High Order Method Modeling Environment”(高级方法建模环境),前者是一个全球大气模型,后者则是求解流体和热力学方程。这两个项目共同协作可以以更高的精确度模拟气候变化;
- “NRDF”项目,全称“Non-Equilibrium Radiation Diffusion”(非均匀放射性分布)通过模拟并描绘超新星产生的非带电粒子,来研究其在镭射核融合、流体动力学、医学成像、核子反应炉、能量存储以及燃烧过程的研究等方面的潜在应用价值。[51]
负责“NRDF”项目的梅瑟博士的研究需要数以百计的偏微分方程来追踪能量、角度、散射角以及在一颗恒星进入超新星阶段时每种不同类型的中微子模拟,得出数百万个单独的方程。另外,一个名为“Chimera”(奇美拉/凯米拉)的代码,以神话中的生物奇美拉来命名之,乃它有三个“头”:一个是仿真恒星物质(主要是其化学组成)的流体力学;第二个是模拟辐射转移;第三个是模拟核燃烧(即热核反应/核融合)。第三个“头”首先由图形处理器群运行处理,由于热核反应的过程模拟最容易由图形处理器的架构来处理,尽管其它方面的源码也将及时进行适应性修改及优化目前,项目模拟了14或15种核素,但如果图形处理器提供良好的加速,梅瑟博士预计,与经验观察相比,将有多达200种核素可以在更高的精度上被模拟出来。[62]
“VERA”项目是一个轻水反应炉的 仿真,在美洲虎超级电脑上的CASL(Consortium for Advanced Simulation of Light Water Reactors,联合轻水反应炉高级仿真)编写并运作。VERA允许工程师监视反应炉使用寿命里反应炉核心任何部分的性能表现和状态,以辨别找出有研究 价值或改进反应炉设计等他们感兴趣的研究点。[63]尽管不是六个先锋计划中的一员,但VERA将会在CAAR的协助下进行充分优化并由泰坦的管理团队进行测试后在泰坦上继续运作。计算机科学家汤姆·埃文斯(Tom Evans)发现,相比于以往在传统中央处理器为主的超级电脑之间进行程序码适应性修改以及优化作业,为泰坦的混合架构修改及优化VERA的代码难度十分大。尽管如此,他们的目标是要将仿真整个反应炉燃料循环的时间,从以往需要18~36个月,在泰坦上缩短至只需一个星期。
Comments
Post a Comment
https://gengwg.blogspot.com/