Kaveri APU带来了推土机架构的第三个版本“压路机”,而眼瞅着FX、Opteron系列更新无望,APU更是极有可能成为这一架构的唯一用武之地。那么,它的理论性能如何?所搭配的GCN GPU又是怎样呢?
AnandTech近日对AMD、Intel最近几代处理器的CPU、GPU峰值浮点性能进行了考察对比,包括不同指令集、浮点级别下每时钟周期性能、峰值浮点运算能力(每秒十亿次/GFlops),看看谁更适合通用计算。测试对象包括Kaveri、Trinity、Llano、Haswell、Ivy Bridge。
一个问题是,现在的CPU、GPU都支持动态加速,很难确定峰值计算时的确切频率。本文中CPU使用基准频率,GPU则是加速频率,因为在多线程、异构计算中,CPU不太可能加速。如果有需要,你也可以根据本文的结论推算出自己所需要频率下的相应性能。
GPU方面最新得到官方确认的是,Kaveri APU fp64双精度的性能是fp32单精度的16/1,与主流的GCN架构显卡相同(HD7900及其上是1/4)。
CPU峰值性能取决于代码编写、编译的SIMD指令集架构,这里考虑三种:SSE、AVX、AVX FMA(FMA3/FMA4)。
Intel在架构设计上的领先凸显无疑,各项指标都完秒,Haswell更是优化AVX、FMA指令集代码的首选。
Trinity/Kaveri里的推土机架构是两个整数单元共享一个浮点单元,自然很吃亏,SSE性能甚至还不如K10老架构的Llano,但是后者不支持AVX。
GPU峰值性能考虑了Haswell GT2、GT3e两种核显,后者集成了128MB嵌入式缓存,兼具四级缓存的作用。
GPU fp64的支持其实有点混乱,因为部分GPU尽在部分API下才支持它。Intel GPU fp64的比例没有官方公布,估计是fp16 1/4,但是Intel只在DirectCompute API下才能实现fp64,OpenCL下完全不行。
AMD Trinity/Richland APU更乱,OpenCL fp64的支持不符合标准规范,而是使用了私有的扩展cl_amd_fp64,DirectCompute/MS C++ AMP下似乎也不支持fp64。
Kaveri就好多了,所有API下都标准支持fp64,是所有集显方案中最齐全的,美中不足的就是Direct3D fp64还不如Haswell,跟独立显卡的差距自然也很大,但是它拥有独特的HSA异构系统架构,非常适合CPU+GPU联合加速的应用。
Kaveri fp64性能其实并不太好,CPU、GPU加起来也才大约110GFlops,因此做一般的加速计算还可以,特别是fp32异构应用超越Haswell GT2、Ivy Bridge,但是高性能应用上不够。
GT3e Iris Pro也有不少亮点,特别是有强大的CPU辅助,比较适合Windows 8 C++ AMP的开发,但缺点是Linux系统下现在不支持OpenCL,驱动还在开发。
简单地说,Kaveri规格全面,性能均衡,Haswell部分突出,但有缺失。