听说苹果M1能打英伟达RTX?那跑个光追试试
不得不说,自发布以来,苹果M1芯片的各项测评表现都令人印象深刻。甚至此前有人发现M1 Mac Mini在某项TensorFlow速度测试中的得分高于英伟达RTX 2080Ti。
所以一位从事光线追踪 (Ray tracing)技术的程序员,就对M1产生了兴趣。
他发现,M1比他的Haswell(英特尔第四代酷睿处理器)旧电脑Cinebench得分高1.6倍,比Tiger Lake(第11代)新电脑得到的分数高2倍!
于是他又自己动手测了个新的跑分,看一看M1纯粹的光线追踪性能。
图源维基百科,光线追踪可以制作照片级真实感的图像
那M1芯片的光追性能可以打英伟达RTX吗?
往下看。
测试基准ChameleonRT
这位测试者买了一台Mac Mini 来测试他自己的光线追踪项目ChameleonRT。
也就是此次测评采用的基准,一个开源的光线追踪器,可在多个光线追踪后端(Embree/DXR/OptiX/Vulkan/Metal/OSPRay)上运行。
这和文章开头提到的很流行的光线追踪基准程序CineBench有点不一样。
AnandTech 的 CineBench 跑分也使用了Embree 进行光线追踪。这是一个由英特尔开发的CPU光线追踪库,提供优化的加速结构遍历和原始交叉内核。Embree已广泛应用于电影、科学可视化和其他领域。所以ChameleonRT 也实现了一个Embree 后端。
接下来就切入正题看看M1在ChameleonRT基准上的光线追踪性能评测:
M1的光线追踪性能比较
测试使用以下两个场景:Sponza和San Miguel。
Sponza是一个有26万个三角形的小场景,San Miguel有996万个,分别对应左右两图:
比较方法:使用基准运行渲染1280x720像素图像并运行约200帧,然后记录平均帧速率 (FPS) 和每秒追踪的百万光线数 (MRay/s)。
下面是使用Embree CPU后端渲染两种场景的“公平”比较结果:
Sponza
San Miguel
苹果M1芯片都居于中间水平。
此外,出于好奇心,测评人员还进行了“极其不公平”的比较,将 M1 上的 Metal GPU 光线追踪后端与 英伟达RTX 2070 上的 DirectX 光线追踪、Embree CPU 后端与 i9-9920X 进行比较。
“不公平”比较结果如下:
Sponza使用Embree CPU后端进行的基准测试结果
△ San Miguel使用Embree CPU后端进行的基准测试结果
可以发现,i9-9920X在使用AVX2指令集时表现最好。
Sponza使用GPU后端进行的基准测试结果
San Miguel使用GPU后端进行的基准测试结果
可以看出,分数差距较大,但评测人员本身也没有期待它能超过极具竞争力的英伟达RTX 2070,只是为了看看M1能排在什么位置。
最后,评测人员总结道:
但即使是当前这样的性能水平,对于轻量级芯片来说也令人印象深刻,因为它不会遇到与 XPS 13 相同的热问题(做这些基准测试时风扇很安静),并且可以在 1/4 SIMD 宽度的 CPU 上提供更好的性能,还有一个 GPU 光线追踪 API,可以在这些基准测试中提供比 CPU 快 1.6-2 倍的加速。
很期待在未来的M系列芯片中看到对 8-wide的 SIMD 和硬件加速光线追踪的支持。
“毫不奇怪M1的表现不是很好”
而对于以上M1芯片的光线追踪性能评测,有网友用一句“太长不看“总结道:
基本上是7年前一台拥有 i7-4790k处理器的台式机的性能。
评论区看法基本一致,另一位网友总结道:任何支持光线追踪的东西都有专门的硬件来处理,毫不奇怪M1的表现不是很好。
也就是说,“如果你想要一个M1 Mac来处理光线追踪,性能好不了。但这并不是什么大事,因为图形并不是M1真正的卖点。”
参考链接:
[1]https://www.willusher.io/graphics/2020/12/20/rt-dive-m1
[2]https://www.reddit.com/r/apple/comments/nomun4/a_dive_into_ray_tracing_performance_on_the_apple/
— 完 —