经过一段时间的重测,RDNA3在Wave64模式下,可以轻松跑满理论浮点吞吐率。
之前的测试中我使用Pixel Shader测试理论吞吐率,在Wave64模式下仅仅只有5/6的理论值。
前端时间重写了测试,这次我使用Compute Shader以便控制WorkGroup和Wavefront大小。
最终发现在WorkGroup较大时,吞吐率出现了明显的下降,这种下降与Wavefront大小无关。
如下图:

通过RGP观察,我发现在使用大WorkGroup的情况下,6个SE的负载极其不均衡,其中一个SE大概在刚好过半的位置就没有了任何负载。具体原因未知。
3月份的头版驱动中,TimeSpy分数出现了大幅下滑的问题,通过RGP观察时可以发现同样的问题。
功耗问题
我稍微对比了一下AN 两张卡定功耗定电压,FMA输入寄存器数量不同时,可达到频率与吞吐率

可以看到,RDNA3对于寄存器数量的非常敏感,在使用三个寄存器时,即便SIMD远远无法满负载工作,依然只能跑到相对比较低的频率,这时候寄存器功耗我想应该是占了大头中的大头。而反观Ampere,这时候时它频率能boost到最高的时候,说明对于Ampere来说SIMD的功耗才是大头。但一般来说SIMD的设计其实都比较类似,功耗区别不会太大。
基本而言RDNA3的能耗比劣势就是寄存器功耗导致的
之前的测试中我使用Pixel Shader测试理论吞吐率,在Wave64模式下仅仅只有5/6的理论值。
前端时间重写了测试,这次我使用Compute Shader以便控制WorkGroup和Wavefront大小。
最终发现在WorkGroup较大时,吞吐率出现了明显的下降,这种下降与Wavefront大小无关。
如下图:

通过RGP观察,我发现在使用大WorkGroup的情况下,6个SE的负载极其不均衡,其中一个SE大概在刚好过半的位置就没有了任何负载。具体原因未知。
3月份的头版驱动中,TimeSpy分数出现了大幅下滑的问题,通过RGP观察时可以发现同样的问题。
功耗问题
我稍微对比了一下AN 两张卡定功耗定电压,FMA输入寄存器数量不同时,可达到频率与吞吐率

可以看到,RDNA3对于寄存器数量的非常敏感,在使用三个寄存器时,即便SIMD远远无法满负载工作,依然只能跑到相对比较低的频率,这时候寄存器功耗我想应该是占了大头中的大头。而反观Ampere,这时候时它频率能boost到最高的时候,说明对于Ampere来说SIMD的功耗才是大头。但一般来说SIMD的设计其实都比较类似,功耗区别不会太大。
基本而言RDNA3的能耗比劣势就是寄存器功耗导致的