下一代计算机系统将由异构平台组成
2011-11-09JackDongarra
下一代计算机系统将由异构平台组成
主要芯片制造商(如nVIDIA)最近的一些举动较之前更确切无疑地表明,微处理器及大型高性能计算(HPC)系统未来的设计从本质上说都将是混合/异构的。这些异构系统将依赖于这两大类型的组件以不同的比例集成。
多核及众核CPU技术:核数仍将继续增加,因为寄期望于既想封装越来越多的组件到一个芯片上,同时又想绕开功耗墙、指令级并行墙及存储器墙(等挑战)。
专用硬件及大规模并行加速器:例如,nVIDIA的GPU近几年在浮点性能上已超越了标准CPU。而且即便不是更容易,它们或许也已变得和多核CPU编程一样容易了。
未来设计中这两种组件类型间的相对平衡尚无法确定,而且似乎还会随着时间的推移而变动。目前看起来确凿无疑的是下一代计算机系统(从笔记本到超级计算机)都会由异构组件所组成。事实上,千万亿次(每秒1015次浮点运算)的性能屏障也是被这种系统攻克的。
然而在基于异构处理器的新型计算领域中,开发者们所面临的问题及挑战依然十分严峻。软件基础架构的关键部分早就难以跟上变化的步伐。在某些情况下,性能无法随着核数而扩展,因为不断增加的大部分时间都消耗在了数据移动而不是运算上。在另一些情况下,软件的性能调优在硬件到位后的数年才姗姗完成,刚发布就已过时。在一些情况下,如在新近发布的一些GPU上,软件根本就无法运行,因为编程环境变动得太过剧烈。
这篇文章是Jack Dongarra教授为《例释CUDA》所作的序。《例释CUDA》一书探讨了软件开发挑战的核心。
该书通过举例的形式介绍了CUDA C的编程,并洞察了构建及高效使用nVIDIA GPU的过程。它讲解了并行计算的基本性概念,从简单的例子到调试(包括逻辑的和性能的),同时也涵盖了一些使用和构建应用相关的高级主题和问题。中文译本由上海交通大学林新华翻译。
Jack Dongarra 美国田纳西大学校特聘教授,美国橡树岭国家实验室杰出研究员