正文内容 评论(0

重量级对抗 5770 CF挑战4870 X2与HD 5870
2009-10-30 16:55:21  出处:快科技 作者:威廉母 编辑:威廉母     评论(0)点击可以复制本篇文章的标题和链接

[DirectX 11架构优势介绍(二)]

DirectX Compute Shader

前面已经提到,无论是对DirectX 11还是AMD来说DirectX Compute Shader都是非常重要的一点,因为它是微软为GPU运算应用程序编程接口(API),与OpenCL一样,为开发人员提供了并行计算的API。

重量级对抗 5770 CF挑战4870 X2与HD 5870

ComputeShaders11 在游戏应用中主要包括:图像处理和过滤、透明重叠物体演算(OIT)、阴影渲染、物理运算、人工智能、光线追踪等!通过AMD的Steam架构实现,无缝集成DirectX 11的图形代码,并且通过微软WHQL硬件兼容性认证。

与DirectCompute 10相比,DirectCompute 11在技术上拥有众多的领先优势:在线程调度上,DirectCompute 10是2D模式,而DirectCompute 11则可以通过一个3D阵列代替多个2D阵列,节省硬件开销。其次在线程数量上,DirectCompute 10支持768个,而DirectCompute 11可达1024个。线程共享内存DirectCompute 10 16KB,DirectCompute 11是前者的两倍,为32KB,内容共享访问方面,DirectCompute 10只能支持256字节写入,DirectCompute 11则支持全32Bit读取和写入,更为有效的共享内存I/O。

对游戏开发者来说,通过ComputeShaders11可以应用更加复杂数据结构,并在这些数据结构中运行更多的通用算法。与其他完整的可编程的DX10和DX11管线阶段一样,CS将会共享一套着色处理器。

重量级对抗 5770 CF挑战4870 X2与HD 5870

正式由于DirectX 11的这种灵活性,目前已经有多家大型游戏公司开始研发对应的游戏,通过上图可以看出,用不到2010年,我们至少会有三款DirectX 11大作供我们娱乐,而在2010年第2季度之前则会有5-6款甚至可能更多游戏与我们见面。

多线程的支持

对于DirectX 11来说支持多线程(multi-threading)是处理性能大幅度提升的一个关键点。DirectX 10时代,所有的色彩信息被光栅化显示到屏幕上都是通过了同步方式,虽然工作状态和渲染流水线足够稳定,但是效率却非常低,制约了效果的进一步提升。而多线程的支持无疑可以大大加快处理效率。例如,要处理器场景中的人像和三个镜像,DX11会启动四个单独线程进行并行处理,效率自然要比现在DirectX 10依次进行的做法高很多。

重量级对抗 5770 CF挑战4870 X2与HD 5870

另外还有一个好消息就是DirectX10/10.1同样可以实现对多线程技术的支持,无论是AMD还NVIDIA,只要在显卡驱动中引入DirectX 11的多线程技术即可,这就是说即使采用DirectX 10显卡玩DirectX 11游戏也同样可以进行多线程渲染,可以大幅度提高画面的处理速度。

DirectX 11中,Direct 3D设备被分为三个独立的接口:Device、immediate Context(立即执行)和Deferred Context(延迟执行),这三者都被是各自独立的线程,而且Device和Deferred Context还可以继续拆分多线程,将等待执行的数据传给immediate Context或渲染线程。同时,CPU也可以利用GPU多线程加快DirectX处理时间,减少CPU瓶颈。

责任编辑:

文章内容举报

  • 支持打赏
  • 支持0

  • 反对

  • 打赏

文章价值打分

当前文章打分0 分,共有0人打分
  • 分享好友:
  • |
本文收录在
#快讯

  • 热门文章
  • 换一波

  • 好物推荐
  • 换一波

  • 关注我们

  • 微博

    微博:快科技官方

    快科技官方微博
  • 今日头条

    今日头条:快科技

    带来硬件软件、手机数码最快资讯!
  • 抖音

    抖音:kkjcn

    科技快讯、手机开箱、产品体验、应用推荐...