革命性DX11架构!GTX480/470权威评测
第五章/第五节 Fermi计算架构:NVIDIA Nexus开发平台
NVIDIA Nexus是第一个设计用于支持大规模并行CUDA C、OpenCL和DirectCompute应用的开发环境。它通过将支持并行处理的硬件源代码的调试与性能分析工作直接交由Microsoft Visual Studio进行,有效消除了CPU和GPU之间的生产率差距。Visual Studio是Windows操作系统下使用最广泛的集成应用开发环境。
Nexus支持Visual Studio开发人员使用与在编写和调试CPU代码时用到的完全相同的工具与接口,来编写和调试GPU源代码,包括来源和数据断点、以及内存检测等。此外,Nexus还扩展了Visual Studio的功能,提供了工具来管理大规模并行计算,如支持对数千个并行运行的线程中的某一个进行检测和调试,以及对所有并行线程计算得出的结果进行高效的可视化呈现等。
Nexus是开发能够同时利用CPU和GPU的协处理应用的非常好的环境。它能够在两个处理器间捕获性能事件和信息,并在单个相互关联的时间线内将信息显示给开发人员。在此基础之上,开发人员能够了解到其应用在整个系统中的执行和表现情况,而不是被局限于某个子系统或处理器。
● 本章小节:
很显然,Fermi并非简单地添加执行单元构建而成,它解决了GPU计算领域的一些最富挑战性的问题。数据局部性的重要性通过Fermi的两级高速缓存结构及其整合的加载/存储内存路径,得到了充分展现。双精度计算性能被提升到了超级计算级别,同时原子操作的执行速度加快了二十多倍。最后,Fermi的全面ECC支持也有力彰显了NVIDIA大举进攻高性能计算市场的野心。
在软件方面,Fermi架构首次提供了C++和Nexus支持。其中C++是世界上应用最广的基于对象的编程语言;Nexus是全球首个设计用于支持大规模并行GPU计算应用的开发环境。
凭借其卓越性能、强大功能和出色可编程性的完美组合,Fermi架构将是GPU计算下一代发展的必然方向。
本章资料来源:NVIDIA下一代CUDA计算架构Fermi白皮书