游戏开发论坛

 找回密码
 立即注册
搜索
楼主: smile636

[请问]DX中的DrawPrimitive是异步的吗?

[复制链接]

27

主题

179

帖子

259

积分

中级会员

Rank: 3Rank: 3

积分
259
发表于 2006-12-23 23:58:00 | 显示全部楼层

Re:[请问]DX中的DrawPrimitive是异步的吗?

顶呀~~~~~~~~~~~~~~~

11

主题

36

帖子

36

积分

注册会员

Rank: 2

积分
36
发表于 2006-12-24 16:48:00 | 显示全部楼层

Re:[请问]DX中的DrawPrimitive是异步的吗?

楼上的大哥些解说得好专业,赞赞赞!!!~~~~

35

主题

370

帖子

376

积分

中级会员

Rank: 3Rank: 3

积分
376
 楼主| 发表于 2006-12-24 17:12:00 | 显示全部楼层

Re:[请问]DX中的DrawPrimitive是异步的吗?

我又来了~
呵呵,谢谢大家的热心回复~

35

主题

370

帖子

376

积分

中级会员

Rank: 3Rank: 3

积分
376
 楼主| 发表于 2006-12-24 17:18:00 | 显示全部楼层

Re:[请问]DX中的DrawPrimitive是异步的吗?

再问个问题 呵呵:
     setStreamSource需要消耗多少时间(时间不用说具体的,和setTransform,drawprim..,setTexture(和这个函数好比较点吧?)这些函数比较)

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2006-12-25 13:15:00 | 显示全部楼层

Re:[请问]DX中的DrawPrimitive是异步的吗?

平均来说比较耗时,高于你说的那些函数。

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2006-12-25 13:16:00 | 显示全部楼层

Re:[请问]DX中的DrawPrimitive是异步的吗?

没看到 dp,dp 、dip是将所有设置提交到 driver,这样来说 dp 是最耗时。没有dip,这些设置本身的开销就是个函数调用的开销。

8

主题

553

帖子

560

积分

高级会员

Rank: 4

积分
560
发表于 2006-12-25 14:16:00 | 显示全部楼层

Re:[请问]DX中的DrawPrimitive是异步的吗?

为什么dp最费时?
楼上的既然意识到其它的一些状态设置都是可以batch的,dp为什么不行?
再说了,API和硬件命令又不一一对应,而且现在的runtime,driver都是multi-thread环境,将来只有lock/getData等才会阻塞CPU,单纯的分析某个API的时间一点意义都没有。

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2006-12-25 17:40:00 | 显示全部楼层

Re:[请问]DX中的DrawPrimitive是异步的吗?

我指的耗时是cpu到gpu的消耗的时间,在Driver 没有将 command buffer 提交到 gpu 之前,SetXXX 函数的耗时仅仅是一个函数调用的开销,当然从 user mode -> core mode 的开销是另外一回事。D3D 中有篇文章讲到如何正确获取 SetXXX 函数的调用开销,可以参考一下。

35

主题

370

帖子

376

积分

中级会员

Rank: 3Rank: 3

积分
376
 楼主| 发表于 2006-12-25 18:16:00 | 显示全部楼层

Re:[请问]DX中的DrawPrimitive是异步的吗?

请允许我继续问问题。。。
      
       现在的显卡都有多条顶点和像素渲染管,渲染一个物体的时候是不是都同时用上了?以前我看了显卡评测,好象多像素渲染管的显卡在较多的多重纹理的游戏中才有性能优势。
      但另一方面我觉的显卡因该优化成每次都可以使用上(并行操作)
      setstreamsource这个和顶点渲染管有关是吧?

8

主题

553

帖子

560

积分

高级会员

Rank: 4

积分
560
发表于 2006-12-25 21:37:00 | 显示全部楼层

Re: Re:[请问]DX中的DrawPrimitive是异步的吗?

smile636: Re:[请问]DX中的DrawPrimitive是异步的吗?

请允许我继续问问题。。。
      
       现在的显卡都有多条顶点和像素渲染管,渲染一个物体的时候是不是...

所谓多“管线”是指多ALU,一般ALU多的GPU,其各种cache,储存带宽(memory interface bandwidth)也大,所以你看到的评测结果是那样。GPU内部,不是任何时候都可以并行的,比如primitive setup的部分,一个个primitive还是得一个个送下去,有dynamic branch的ps时,硬件也会有某些地方stall住等等。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-26 04:32

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表