泡泡网显卡频道 PCPOP首页      /      显卡     /      评测    /    正文

大者恒大!耕昇最强非公版GTX470评测

● Multi-threading多线程处理

    如果一个软件能够对多核心多线程处理器进行优化的话,那么在使用双核或四核处理器时,其运行效率将会提升2-4倍,遗憾的是如今的游戏都无法支持多核处理。

    通过大量的游戏性能测试来看,GPU占绝对主导,而CPU只是考验单核效能,通过对CPU极限超频可以让游戏性能提高不少,但使用四核或者带HT技术的“八核”处理器几乎不会有任何性能提升。在多核成为大势所趋的情况下大量CPU资源被白白浪费,瓶颈可能依然卡在CPU上面。

    DX11当中新增的多线程处理技术,则是专门针对多核应用而生的,它通过引入“延迟执行”的指令将一个渲染进程拆分为多个线程,并根据处理器核心/线程数设定延迟执行内容的数目。多线程的涵义是非常广的,每一帧画面可以被分为几个图层,每个图层又可以分为N个区块,所有的这些都可以被并行调度到延迟执行的线程之中。

    这是一项很聪明的技术,标记为“立即执行”的线程与传统的渲染没有区别,而标记为“延迟执行”的线程则可以在后台将图形生成所必须的资源做预先的存取,比如纹理拾取、像素生成、常数缓冲等操作都可以多线程并行处理,通过多核CPU富裕的资源来减少程序等待时间,从而使得渲染不再受到CPU的瓶颈制约。

    多线程技术是非常灵活的,它既可以在游戏中通过程序代码来控制,也可以通过DirectX自动分配,还能够通过驱动程序进行优化。即便是驱动没有针对多核进行优化,DX11运行库也会通过模拟的方式提供新的功能,也就是说所有DX11游戏都将或多或少的从多核多线程CPU中获益。

    多线程技术的引入对于双卡甚至多卡互联系统更为重要,以往多颗GPU在DirectX中只能模拟成一个虚拟GPU,所有的GPU必须共享指令缓冲区并接受CPU调度,渲染线程的拆分与合并指令延迟都很大,GPU越多则效率越低!而在DX11当中,如果用多核CPU搭配多路SLI系统的话,每颗CPU都可以单独控制一颗GPU的渲染线程,在均分CPU负担的同时,提高了GPU资源利用率,从而大幅提升游戏性能。

    NVIDIA称,GTX480 SLI在DX11游戏中的性能几乎达到了单卡的两倍,而不再是以往的1.8倍左右,这其中DX11多线程技术功不可没,当然也需要驱动程序的大力优化支持。

    其实多线程技术也能应用在DX9/DX10甚至是OpenGL上面,但由于API及函数指令的限制,开启多线程会产生很多重复的指令,导致性能提升有限甚至不升反降,因此微软并不建议在旧API模式开启多线程模式,除非程序员做过严格的测试与优化。

0人已赞

关注我们

泡泡网

手机扫码关注