Upload
brick
View
165
Download
0
Embed Size (px)
DESCRIPTION
基于 PC 集群机的并行图形绘制系统研究. 浙江大学 CAD&CG 国家重点实验室 2005 年 11 月. 第一部分 研究现状. 并行绘制系统的分类 现有基于 PC 集群机的并行图形绘制系统. 并行绘制系统的分类. 按照场景数据归属判断时机分类 Sort-first, sort-middle, sort-last 按照数据控制形式分类 立即模式、保留模式 按照数据存储方式分类 In-the-core, Out-of-core. 场景. G. G. G. G. R. R. R. R. ●. ●. ●. ●. 像素合成. - PowerPoint PPT Presentation
Citation preview
基于 PC 集群机的并行图形绘制系统研究
浙江大学 CAD&CG 国家重点实验室2005年 11 月
第一部分 研究现状 并行绘制系统的分类 现有基于 PC 集群机的并行图形绘制系统
并行绘制系统的分类 按照场景数据归属判断时机分类
Sort-first, sort-middle, sort-last 按照数据控制形式分类
立即模式、保留模式 按照数据存储方式分类
In-the-core, Out-of-core
归属判断:Sort-first, sort-middle, sort-
last
G- 几何处理 R -光栅化 (1) sort-first (2) sort-middle (3)sort-last
G
R
G
R
G
R
G
R
显示屏幕
场景
G
R
G
R
G
R
G
R
显示屏幕
场景
G
R
G
R
G
R
G
R
场景
●● ● ●
像素合成
显示屏幕
数据控制形式:立即模式、保留模式
进程 A
立即模式绘制器
应用程序
立即模式引擎
进程 B
应用程序
保留模式绘制器
保留模式引擎( a )单机环境下的
立即模式和保留模式引擎
Client 进程应用程序
Server 进程立即模式绘制器
网络
立即模式并行结构
Client 进程应用程序
Server 进程
保留模式绘制器
网络
保留模式并行结构( b )分布式并行绘制
环境下的立即模式和保留模式
API 调用
API 调用
API 调用
API 调用场景数据
场景数据
场景数据
场景数据
数据存储方式:In-the-core, Out-of-core
In-the-Core 场景完全调入内存 检索速度快 场景规模受内存限制
Out-of-core 场景保存在硬盘,根据需要调入内存 场景规模庞大 I/O 影响性能 系统复杂度高
现有的基于 PC 集群机的并行图形绘制系统
WireGL - 斯坦福大学 Chromium -斯坦福大学 AnyGL -浙江大学 Display Wall - 普林斯顿大学 MSPR - 浙江大学
WireGL Sort-first 立即模式 应用程序透明的并行化
Chromium WireGL 的后续版本SPU- Stream Process Unit 将并行绘制系统的功能模块化提高开放性
Sort-first
Sort-lastHybrid sort-first and sort-last
AnyGL 混合 sort-first和 sort-last 立即模式 应用程序透明的并行化
Display Wall Sort-first 保留模式 多屏幕拼接显示
MSPR
Application
OPENGL_STUB
MessageEncoding
Network Send
Client
Rendering
MessageEncoding
Network Receive
Server
Rendering
MessageEncoding
Network Receive
Server
INTERCONNECTING NETWORK SCENE REDISTRIBUTION
…
保留模式 多屏幕拼接显示
第二部分 研究目标 基于 PC 集群机的并行图形绘制系统
混合 sort-first和 sort-last 保留模式
功能 大规模动态场景实时绘制 支持 Out-of-core、 In-the-core 等模式 支持 OpenGL 工业标准,提供二次开发接口 集成多屏幕拼接显示系统
第三部分 研究内容 基于保留模式的混合型并行图形绘制体系结构 Out-of-Core与 In-the-Core 相结合的
SceneGraph 场景定义 负载平衡策略 复式嵌套并行绘制流水线
优化并行绘制 - 合成 - 显示流水线技术
基于保留模式的混合型并行图形绘制体系结构
显示屏 1 显示屏 m
显示屏 n 显示屏 mn
控制节点动态绘制节点
动态绘制节点
动态绘制节点 拼接显示投影墙
合成节点
合成节点
合成节点
合成节点
动态绘制节点
...... ...... ...... ......
......
......
......
主主
从从 从从 从从 从从……
(1) Parallel-SG 系统结构
(2) 动态绘制节点内部结构
基于保留模式的混合型并行图形绘制体系结构
任务划分方式 Sort-first 方式 --对应于每个投影仪 Sort-last 方式 --动态绘制节点内部
优点 通过动态调节各个动态绘制节点内部的绘制从
节点数目来调节动态绘制节点的计算能力,从而维持各动态节点间的负载平衡,解决了sort-first 的负载不平衡问题;
一个动态绘制节点只对应一个投影仪的显示区域,控制了图像合成的规模,避免了 sort-last方式中随像素规模增长而急剧下降的合成效率。
Out-of-Core与 In-the-Core 相结合的 SceneGraph 场景定义
场景进行 SceneGraph 组织定义,相关的数据结构以 In-the-core 方式在内存中管理
SceneGraph 结构中的 Data 节点的数据按照Out-of-core 方式保存于硬盘,根据需要调入内存
In-the-core
Out-of-core
Out-of-Core与 In-the-Core 相结合的 SceneGraph 场景定义
广场
鸽群
雕塑几何数据
鸽子几何数据
游人几何数据
建筑
…
城市
雕塑
白鸽 灰鸽
游人
…
…
…
…
目标:灵活操纵场景变化超大规模场景绘制
负载平衡 基于任务迁移的平衡策略
思路 : 通过调节动态绘制节点内部绘制从节点的数目来调节整个动态绘制节点的计算能力,用动态绘制节点计算能力的变化来适应其负载的变化。
优点 适合多屏幕拼接显示系统 算法简明、开销小
优化并行流水线技术 动态绘制节点内工作流程的三个基本步
骤 ( 顺序相关性 ) 绘制: CPU/GPU -- t1 像素合成: 网络 传输-- t2 显示合成结果 :显卡 I/O -- t3 ( t1≈t2>> t3 )
优化并行流水线技术
串行绘制 - 合成 - 显示流水线 耗时 Ts = t1+t2+t3
象素合成绘制 显示 象素合成绘制 显示 象素合成绘制 显示
i-1 帧 i 帧 i+1 帧
优化并行流水线技术
并行绘制 - 合成 - 显示流水线 耗时 Tp = max(t1 , t2 , t3)
绘制 i-1
象素合成 i-2
显示 i-3
i-1 帧 i 帧 i+ 1 帧 i+ 2 帧
CPU/GPU
Network
显卡 I/O t3
t2
t1 绘制 i+1
象素合成 i
显示 i-1
绘制 i+2
象素合成 i+1
显示 i
t2
t1
t3
t2
绘制 i
象素合成 i-1
显示 i-2
t3
t1
t3
t2
t1
资源占用
第四部分 当前测试结果-测试方案
方案 投影墙设置( 动态绘制组
数 )
主控节点数 从节点总数 动态绘制组内部平均绘制服务器数
一 1×1 1 31 32二 2×2 4 28 8三 3×3 9 23 4四 5×3 15 17 2
整体性能测试结果
0
2
4
6
8
10
12
14
16
18
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51
/帧秒
方案一 方案二 方案三 方案四 单机
各总负载和绘制从节点
0
2000
4000
6000
8000
10000
12000
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51
(K)
三角面片数
0
2
4
6
8
10
12
14
16
18
1动态绘制组 总负载 2动态绘制组 总负载 3动态绘制组 总负载 4动态绘制组 总负载1动态绘制组 从节点数 2动态绘制组 从节点数 3动态绘制组 从节点数 4动态绘制组 从节点数
平均负载
0
500
1000
1500
2000
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51
-(K
)平均负载三角面片数
1动态绘制组 2动态绘制组 3动态绘制组 4动态绘制组
串行绘制 - 合成 - 显示流水线
02468
1012141618
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51
/帧秒
方案一 方案二 方案三 方案四
谢 谢!
flow
lowTt
Ln
D 12log
Llow 的推导
ft
Tflowlow
n
DL
1
2
Tlow<<t
ft
low
n
DL
1
2
其中:D 为场景总数据量;
n 为系统中动态绘制节点数目;
Tlow 为单机上绘制 Llow 的耗时;
f 为设定的帧速; t 为像素合成一次的耗时