● CUDA-Z软件Performacne性能界面
这个界面为我们展示了GPU的存储器速度和整数浮点运算能力。是CUDA-Z最有价值的一个界面,也是它相对于其他信息类软件最为不同的方面。
性能界面分为存储性能和核心性能两个部分,在介绍这部分之前,我们要先熟悉几个专有名词。
CUDA编程模型将CPU作为主机(Host),GPU作为协处理器(co-processor)或者称为设备(Device),在一个系统中可以存在一个主机和多个设备。
在这个模型中,CPU与GPU协同工作各司其职。CPU负责进行对逻辑性强的事物处理和串行计算,GPU则专注于执行高度线程化的并行处理任务。CPU和GPU拥有各自独立的存储器地址空间:主机端的内存和设备端的显存。CUDA对内存的操作与一般的C程序基本相同,但是增加了一种新的Pinned memory;操作显存则需要调用CUDA API中的存储器管理函数,这些管理操作包括开辟、释放和初始化显存空间,以及在主机端和设备端进行数据传输等。
Performacne性能界面
CUDA-Z的存储性能测试,包括主机到设备(Host to Device)、设备到主机(Device to Host)、设备到设备(Device to Device)3个方面。其中的Pinned指页锁定内存(也被称为page-locked),而Pageable指可分页内存,它们都位于主机(CPU)端。
第二部分GPU核心性能分别测试了单精度浮点运算能力Single-precision Float、双精度浮点运算能力Double-precision Float、32位整数运算能力32-bit Integer和24位浮点运算能力24-bit Integer。G92核心的GTS250没有双精度运算能力,所以这一栏为不支持。GTX200系列以上显卡测试后可以得到相关数据。
需要注意的是这里的测试数据都是理论值,实际运算时,会有很多不同情况出现。比如运算程序中循环和分支过多,都会严重影响GPU的运算能力。衰减程度视架构设计和运算器周边资源配备而定。
下方的选项是:Update Results in Background(后台更新测试数据),选择后数据会实时更新。而Export按钮则可以由用户自行选择生成一个TXT或者HTML报告。
最后的About界面显示了CUDA-Z软件的制作信息,有兴趣的朋友可以点击链接去他们的网站进行了解。
对于CUDA-Z的了解到此为止,在通用计算飞速发展的基础上,各种对于GPU通用计算性能的测试软件也会不断涌现,在以后的显卡测试中,我们会将通用计算作为重要的一个项目。
下面让我们进入实测阶段,看看NVIDIA通用计算概念提出之后诞生的四代产品(G80G92、GT215、GT200、GF100)中,谁拥有最强的通用计算性能,不同架构在遇到不同运算精度的衰减程度到底如何。
实际上在最初策划中,本次测试应该包含G80架构的Geforce 8800GTX显卡,但是非常遗憾我们在文章发布之前没能及时找到这款4年前的显卡。鉴于G80到G92架构在通用计算层面的改进非常有限,我们觉得暂时忽略这款元老级别的显卡,下次更详细的测试一定会弥补这个遗憾,希望读者体谅。