让ChatGPT解析查证了下,我反而觉得Nvidia的这个Spatial SMT属于更容易实现的一种超线程技术,Nvidia只挑了自己好的说,没说自己不好的。
Nvidia的Spatial SMT是以一种较为强硬的方式,在SMT模式下尽可能隔离资源,让两个线程在同一个核心里不会打架,大家都能平稳运行。而X86里则是以一种较为灵活的方式分配资源,因此存在竞争问题。 但X86的SMT也绝不是Nvidia示意图这个,完全竞争性的,Nvidia这个图搞得X86的SMT就是比OS的时间片轮转多线程细粒度一点而已。但是X86也并不是完全不会分隔资源。总体来说,Nvidia这种强隔离的实现难度应该更低,要考虑的场景复杂性不高。
Nvidia的这个Spatial SMT最大的问题就是因为资源隔离程度高,那么假设有线程 A、B混合执行的情况下,如果A的需求高,B的需求低,那么需求高的A也只能用到50%的资源,被完全隔离了。 而在X86 SMT的弱隔离里,A是可以挤占超过50%的资源的。
发布于 云南
