游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3285|回复: 10

多GPU非SLI工作模式下,OpenGL编程请教

[复制链接]

8

主题

91

帖子

93

积分

注册会员

Rank: 2

积分
93
发表于 2005-11-21 16:03:00 | 显示全部楼层 |阅读模式
大家好,本人最近想实现多GPU非SLI模式下的OpenGL编程,具体内容如下:在windowsXP平台下,在电脑上装2或多个GPU,档次不限,主显卡位置上插高档显卡,其余多个显卡不限好坏。想实现在主显卡上渲染和做一部分shader,利用其它的显卡完成一部分shader后,将结果送入主显卡中合成,形成最终图像效果。只有一个显示器,除了主显卡外,其余显卡都不向屏幕输出,它们只是接受程序传入的数据,运行shader程序,并将显示结果,送入主显卡中即可。请问各位大虾,这个有没有可能实现?应该如何实现,我在google上查了很久资料了,都没找到什么合适的,除了几篇论文以外,欢迎大家讨论,能提供链接或者示例代码者更好。另外,也探讨多pc,多gpu的GPU集群系统完成类似的工作,希望大家踊跃发言。编程环境是:vc6+opengl2.0+windowsXPsp2。先谢谢了。

8

主题

91

帖子

93

积分

注册会员

Rank: 2

积分
93
 楼主| 发表于 2005-11-24 12:06:00 | 显示全部楼层

Re:多GPU非SLI工作模式下,OpenGL编程请教

高手说话呀?自己顶

8

主题

91

帖子

93

积分

注册会员

Rank: 2

积分
93
 楼主| 发表于 2005-11-25 09:51:00 | 显示全部楼层

Re:多GPU非SLI工作模式下,OpenGL编程请教

继续顶

5

主题

41

帖子

41

积分

注册会员

Rank: 2

积分
41
发表于 2005-11-25 12:27:00 | 显示全部楼层

Re:多GPU非SLI工作模式下,OpenGL编程请教

使用多个GPU协同工作就好像用多线程编程,主要是你能够把整个渲染分成好多可以同步渲的部分,要不然花在各个GPU之间协同渲染就需要非常多的时间,可能还没有单个GPU渲的快呢!就好比好多情况下多线程并不比就一个主线程运行来的快一样,但是程序复杂度确上升了好多!

8

主题

91

帖子

93

积分

注册会员

Rank: 2

积分
93
 楼主| 发表于 2005-11-29 10:39:00 | 显示全部楼层

Re:多GPU非SLI工作模式下,OpenGL编程请教

看应用需要的,这个不是问题的核心,我的协同可以自己解决的,就像多线程复杂,有些应用环境必须用多线程编程一样。

60

主题

1319

帖子

1319

积分

金牌会员

Rank: 6Rank: 6

积分
1319
发表于 2005-11-30 05:17:00 | 显示全部楼层

Re:多GPU非SLI工作模式下,OpenGL编程请教

建议你到nVidia和ATI的研发部门去问

3

主题

56

帖子

56

积分

注册会员

Rank: 2

积分
56
发表于 2005-11-30 11:40:00 | 显示全部楼层

Re:多GPU非SLI工作模式下,OpenGL编程请教

另一个问题是数据的传输和共享。

每个显卡都使用各自独立的显存,没法共享数据,通过总线传输的速度也很慢(相对于显卡的内部带宽)

8

主题

91

帖子

93

积分

注册会员

Rank: 2

积分
93
 楼主| 发表于 2005-12-1 12:06:00 | 显示全部楼层

Re:多GPU非SLI工作模式下,OpenGL编程请教

ljm的建议非常好。我正有此意,就是不知道nvidia和ati研发主管的email,上次别人给了个nvidia研发部门的人的邮箱,我换了2个邮箱地址给他发信都没有发通,总是右键地址无法解析。那个大哥有nvidia或ati的研发部分的人的邮箱地址的话,在这里贴出来吧,先谢了。

22

主题

274

帖子

274

积分

中级会员

Rank: 3Rank: 3

积分
274
发表于 2005-12-1 16:10:00 | 显示全部楼层

Re:多GPU非SLI工作模式下,OpenGL编程请教

我没用过SLI,不过.
我有下面几个问题和建议.
1.多个显卡不用SLI能同时工作吗?非主显卡会处于什么状态,能够被系统控制么?
2.如果可以,没有了SLI,传送渲染结果数据会不会耗费很高的时间?这样就不一定能保证比主GPU渲染快,你把非主GPU的渲染结果传入主GPU,肯定是通过内存的,数据从内存到主GPU时,主GPU不能进行渲染任务,就是说等着,渲染任务不大,传输可能比渲染更费时间.(除非设计复杂的异步方式,好像可以用PBO(PIXEL BUFFER OBJECT),这样可以么?不知道.)

多PC肯定不能保证实时任务了,数据传送太慢.

大家研究一下.

8

主题

91

帖子

93

积分

注册会员

Rank: 2

积分
93
 楼主| 发表于 2005-12-2 14:46:00 | 显示全部楼层

Re:多GPU非SLI工作模式下,OpenGL编程请教

我已经可以证明非SLI模式下,非主显卡也可以用。至少GPU的核心可以用,显存和带宽能不能用,以及能不能保证实时的任务,还没有试验。这个应该在分配任务上和数据传输优化上动点脑子吧。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-22 21:23

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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