CN106803231A - 一种基于sort‑first负载平衡的图形并行绘制方法 - Google Patents
一种基于sort‑first负载平衡的图形并行绘制方法 Download PDFInfo
- Publication number
- CN106803231A CN106803231A CN201611245219.3A CN201611245219A CN106803231A CN 106803231 A CN106803231 A CN 106803231A CN 201611245219 A CN201611245219 A CN 201611245219A CN 106803231 A CN106803231 A CN 106803231A
- Authority
- CN
- China
- Prior art keywords
- node
- frame
- drafting
- load
- screen
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 4
- 230000015572 biosynthetic process Effects 0.000 claims description 7
- 238000003786 synthesis reaction Methods 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供一种基于sort‑first负载平衡的图形并行绘制方法,包括:服务器节点对待绘制图形的第一帧以平均划分的原则进行屏幕划分,分配给各绘制节点完成并行绘制后拼接;服务器节点对下一帧绘制的负载进行预测;以屏幕为根节点,以各绘制节点作为叶子节点,以各绘制节点第i+1帧绘制的负载预测值为对应绘制节点的权重,自上而下建立出第i+1帧绘制的屏幕划分的二叉树;为各绘制节点分配第i+1帧的屏幕绘制区域;各绘制节点进行并行绘制后由图形合成节点进行图形拼接和同步输出。本发明采用多帧联合预测方法,利用sort‑first帧间相似性的特点,实现对下一帧负载的准确预测,提高并行绘制效率。
Description
技术领域
本发明属于并行绘制技术领域,特别是一种基于sort-first负载平衡的图形并行绘制方法。
背景技术
随着科学技术的快速发展,计算机图形学已深入到真实感图形、科学计算可视化、虚拟环境、多媒体技术、计算机动画、计算机辅助工程制图等领域,并且随着这些领域需求的增长,虚拟场景越来越复杂,使得场景绘制的计算量呈指数增大。而利用GPU硬件技术的传统绘制方法不仅价格昂贵,可扩展性也较差。因此,建立一个集群并行图形绘制系统是解决这些问题的一个重要研究方向。
并行图形绘制按图元归属判断发生时间的不同,主要分为以下三类:sort-first、sort-middle、sort-last。sort-first优点是网络带宽需求小,缺点是当几何图元在屏幕上分布不均匀时,易导致负载不平衡,影响系统绘制性能。因此保证负载平衡是并行图形绘制系统中重要的一环。
目前的研究热点是并行绘制系统的动态负载平衡方法,主要分为基于几何数据的负载平衡方法和基于时空转换的负载平衡算法两类。基于几何数据的负载平衡方法是利用几何图元数据作为负载量的度量,基于时空转换的负载平衡方法则抛弃了大量几何数据,用时间值作为负载指标来对任务进行分配,这种方法最大的优势是节省了大量的计算开销。但是传统的基于时空转换负载平衡算法仅根据前一帧的绘制情况,单纯地预测下一帧的负载情况,这种预测方法过于简单,当突然出现较大负载时,可能会影响预测的稳定性,降低并行绘制效率。因此,在时空转换的负载平衡算法基础上,提出了一种优化算法,将传统的单帧改为多帧联合预测方法,结合一些数学模型设计更高效的算法,从而提高绘制系统的性能。
发明内容
针对现有技术存在的问题,本发明提供一种基于sort-first负载平衡的图形并行绘制方法。
本发明的技术方案如下:
一种基于sort-first负载平衡的图形并行绘制方法,包括:
步骤1:服务器节点对待绘制图形的第一帧以平均划分的原则进行屏幕划分,分配给各绘制节点完成并行绘制后拼接;
步骤2:服务器节点对下一帧绘制的负载进行预测;
步骤3:以屏幕为根节点,以各绘制节点作为叶子节点,以各绘制节点第i+1帧绘制的负载预测值为对应绘制节点的权重,自上而下建立出第i+1帧绘制的屏幕划分的二叉树;
步骤4:从根节点开始自顶向下先序遍历第i+1帧绘制的屏幕划分的二叉树,为各绘制节点分配第i+1帧的屏幕绘制区域;
步骤5:各绘制节点进行并行绘制后由图形合成节点进行图形拼接和同步输出,若已完成待绘制图形的所有帧绘制,则结束,否则,返回步骤2。
所述步骤1,包括:
步骤1.1:服务器节点接收客户端的绘制请求,以平均划分的原则对图形的第一帧即i=1进行屏幕划分,屏幕划分结果分配给各绘制节点,图形的第一帧各绘制节点的绘制权重相同;
步骤1.2:各绘制节点根据屏幕划分结果进行并行绘制,同时启动各绘制节点的计时器,记录绘制节点完成绘制任务的时间;
步骤1.3:各绘制节点完成绘制任务,停止其相应的计时器,发送绘制结束消息给服务器节点;
步骤1.4:若所有的绘制节点都完成第一帧绘制任务,图形合成节点进行图形拼接和同步输出。
所述步骤2中服务器节点应用多帧联合预测公式对下一帧绘制的负载进行预测;多帧联合预测公式:
i<m时,
i≥m时,
其中,i表示当前绘制帧数,x表示用来预测样本的数量,ti+1为下一帧绘制的负载预测值,ti为当前帧绘制的负载值,m帧作为样本总量。
有益效果:
现有技术中单纯地预测下一帧的负载情况,因为过于简单,当突然出现较大负载时,可能会影响预测的稳定性,降低并行绘制效率。本发明采用多帧联合预测方法,利用sort-first帧间相似性的特点,实现对下一帧负载的准确预测,提高并行绘制效率。
附图说明
图1是本发明具体实施方式中采用的图形并行绘制系统框图;
图2是本发明具体实施方式中基于sort-first负载平衡的图形并行绘制方法流程图;
图3是本发明具体实施方式步骤1流程图;
图4是本发明具体实施方式中屏幕划分的二叉树;
图5是本发明具体实施方式中屏幕划分结果;
图6是本发明具体实施方式中实验结果对比图,(a)是样本数量m=5的实验结果,(b)是样本数量m=10的实验结果,(c)是样本数量m=20的实验结果。
具体实施方式
下面结合附图对本发明的具体实施方式做详细说明。
本实施方式是基于sort-first负载平衡的图形并行绘制方法,能够有效地利用图形的帧间相似性,减少网络压力,适用于通信带宽较小的绘制集群环境。如图1所示,本实施方式中的基于sort-first架构的图形并行绘制系统由1个客户端、1个服务器节点、多个绘制节点和1个图像合成节点构成,多个绘制节点构成绘制集群。所有的节点通过高速以太网进行相连。客户端根据用户的请求开始图形绘制;服务器节点作为图形并行绘制系统的枢纽,在全局上控制整个图形并行绘制系统的运行。服务器节点的主要功能是:1)根据用户的请求接收交互式信息,实时地将其发送给各个绘制节点;2)任务的划分与分配;3)控制各个绘制节点的帧同步性。绘制节点的主要功能是:1)从服务器节点接收绘制任务并完成对应屏幕区域的渲染工作;2)将绘制结果发送给图像合成节点;3)每个绘制节点包含一个计时器,记录该绘制节点当前帧完成绘制任务的时间,并将其发送给服务器节点;4)待所有绘制节点都完成绘制任务时,将绘制结果发送给图像合成节点。最后图像合成节点接收绘制结果并进行图像的拼接和同步输出显示。
本实施方式中的绘制对象采用斯坦福三维扫描存储库中的开源ply格式三维模型文件Happy,Dragon和Lucy,其中Happy模型共有543,652个顶点,1,087,716个三角形面片;Dragon模型共有3,609,455个顶点,7,218,906个三角形面片;Lucy模型共有14,027,872个顶点,28,055,742个三角形面片。记录每帧绘制时间,最后输出到文件中。每个模型分别使用样本数量m=5,m=10,m=20进行实验,每次提取500帧图像绘制时间作为实验数据做对比。实验结果对比图如图6(a)~(c)所示。
所述的基于sort-first负载平衡的图形并行绘制方法,如图2所示,包括:
步骤1:服务器节点对待绘制图形的第一帧以平均划分的原则进行屏幕划分,分配给各绘制节点完成并行绘制后拼接;
所述步骤1,如图3所示,包括:
步骤1.1:服务器节点接收客户端的绘制请求,以平均划分的原则对图形的第一帧即i=1进行屏幕划分,屏幕划分结果分配给各绘制节点,图形的第一帧各绘制节点的绘制权重相同;
步骤1.2:各绘制节点根据屏幕划分结果进行并行绘制,同时启动各绘制节点的计时器,记录绘制节点完成绘制任务的时间;
步骤1.3:各绘制节点完成绘制任务,停止其相应的计时器,发送绘制结束消息给服务器节点;
步骤1.4:若所有的绘制节点都完成第一帧绘制任务,图形合成节点进行图形拼接和同步输出。
步骤2:服务器节点应用多帧联合预测公式对下一帧绘制的负载进行预测;
将历史平均模型应用到本实施方式的图形并行绘制方法中,历史平均模型(Informed historical average)公式如下,
其中,i表示当前绘制帧数,x表示用来预测样本(帧)的数量,ti+1为下一帧绘制的负载预测值,ti为当前帧绘制的负载值,sx,i为前x帧绘制的负载平均值,sx,i+1为前x帧中每一帧绘制的负载值和下一帧绘制负载预测值的平均值。
假设m帧作为样本总量,然后通过这m帧绘制的负载值来预测下一帧绘制的负载值。若i<m,即预测样本数量不够m个,则令x=i,将第一帧到第i帧的负载值作为预测样本;若i≥m,预测样本数量满足m个,则x=m,从当前帧往前截取连续的m帧的负载值作为预测样本。
将上述两种情况应用到公式(1)中后进行展开,分别得到展开式(2)和(3),即多帧联合预测公式:
i<m时,
i≥m时,
步骤3:以屏幕为根节点,以各绘制节点作为叶子节点,以各绘制节点第i+1帧绘制的负载预测值ti+1为对应绘制节点的权重,自上而下建立出第i+1帧绘制的屏幕划分的二叉树;从根节点开始自顶向下先序遍历二叉树,对每个非叶子节点对应的屏幕作垂直或水平划分成两块(1水平划分为2和3,2和3分别划分为4,5和6,7)划分完成后每个叶子节点则代表一个绘制节点。
步骤4:从根节点开始自顶向下先序遍历第i+1帧绘制的屏幕划分的二叉树,为各绘制节点分配第i+1帧的屏幕绘制区域;
如图4所示的二叉树(假设共有4个绘制节点),1是根节点,表示原始屏幕,2和3表示非叶子节点,4,5,6,7是叶子节点,表示绘制节点,叶子节点的数目即绘制节点的数目,每个叶子节点的权重表示对应绘制节点的第i+1帧绘制的负载预测值ti+1,二叉树的划分方式设定为:先水平二分再垂直二分。将负载预测值即时间值转换为空间值,对屏幕进行划分。二叉树划分很好地保证了数据的连续性。屏幕划分后如图5所示。
步骤5:各绘制节点进行并行绘制后由图形合成节点进行图形拼接和同步输出,若已完成待绘制图形的所有帧绘制,则结束,否则,返回步骤2。
Claims (3)
1.一种基于sort-first负载平衡的图形并行绘制方法,其特征在于,包括:
步骤1:服务器节点对待绘制图形的第一帧以平均划分的原则进行屏幕划分,分配给各绘制节点完成并行绘制后拼接;
步骤2:服务器节点对下一帧绘制的负载进行预测;
步骤3:以屏幕为根节点,以各绘制节点作为叶子节点,以各绘制节点第i+1帧绘制的负载预测值为对应绘制节点的权重,自上而下建立出第i+1帧绘制的屏幕划分的二叉树;
步骤4:从根节点开始自顶向下先序遍历第i+1帧绘制的屏幕划分的二叉树,为各绘制节点分配第i+1帧的屏幕绘制区域;
步骤5:各绘制节点进行并行绘制后由图形合成节点进行图形拼接和同步输出,若已完成待绘制图形的所有帧绘制,则结束,否则,返回步骤2。
2.根据权利要求1所述的方法,其特征在于,所述步骤1,包括:
步骤1.1:服务器节点接收客户端的绘制请求,以平均划分的原则对图形的第一帧即i=1进行屏幕划分,屏幕划分结果分配给各绘制节点,图形的第一帧各绘制节点的绘制权重相同;
步骤1.2:各绘制节点根据屏幕划分结果进行并行绘制,同时启动各绘制节点的计时器,记录绘制节点完成绘制任务的时间;
步骤1.3:各绘制节点完成绘制任务,停止其相应的计时器,发送绘制结束消息给服务器节点;
步骤1.4:若所有的绘制节点都完成第一帧绘制任务,图形合成节点进行图形拼接和同步输出。
3.根据权利要求1所述的方法,其特征在于,所述步骤2中服务器节点应用多帧联合预测公式对下一帧绘制的负载进行预测;多帧联合预测公式:
i<m时,
i≥m时,
其中,i表示当前绘制帧数,x表示用来预测样本的数量,ti+1为下一帧绘制的负载预测值,ti为当前帧绘制的负载值,m帧作为样本总量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611245219.3A CN106803231B (zh) | 2016-12-29 | 2016-12-29 | 一种基于sort-first负载平衡的图形并行绘制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611245219.3A CN106803231B (zh) | 2016-12-29 | 2016-12-29 | 一种基于sort-first负载平衡的图形并行绘制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106803231A true CN106803231A (zh) | 2017-06-06 |
CN106803231B CN106803231B (zh) | 2019-10-11 |
Family
ID=58984068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611245219.3A Active CN106803231B (zh) | 2016-12-29 | 2016-12-29 | 一种基于sort-first负载平衡的图形并行绘制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106803231B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107680147A (zh) * | 2017-09-26 | 2018-02-09 | 广东暨通信息发展有限公司 | 一种基于动态绘制组的混合型并行绘制系统和方法 |
CN111932663A (zh) * | 2020-08-11 | 2020-11-13 | 中国空气动力研究与发展中心计算空气动力研究所 | 基于多层级非对称通信管理的并行绘制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1445664A (zh) * | 2003-04-03 | 2003-10-01 | 浙江大学 | 计算机集群并行绘制系统中基于时空变换的负载平衡设计方法 |
CN103699364A (zh) * | 2013-12-24 | 2014-04-02 | 四川川大智胜软件股份有限公司 | 一种基于并行绘制技术的三维图形渲染方法 |
-
2016
- 2016-12-29 CN CN201611245219.3A patent/CN106803231B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1445664A (zh) * | 2003-04-03 | 2003-10-01 | 浙江大学 | 计算机集群并行绘制系统中基于时空变换的负载平衡设计方法 |
CN103699364A (zh) * | 2013-12-24 | 2014-04-02 | 四川川大智胜软件股份有限公司 | 一种基于并行绘制技术的三维图形渲染方法 |
Non-Patent Citations (1)
Title |
---|
沈兵虎 等: "基于绘制历史的sort-first集群绘制负载平衡方法", 《计算机应用》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107680147A (zh) * | 2017-09-26 | 2018-02-09 | 广东暨通信息发展有限公司 | 一种基于动态绘制组的混合型并行绘制系统和方法 |
CN111932663A (zh) * | 2020-08-11 | 2020-11-13 | 中国空气动力研究与发展中心计算空气动力研究所 | 基于多层级非对称通信管理的并行绘制方法 |
CN111932663B (zh) * | 2020-08-11 | 2022-10-18 | 中国空气动力研究与发展中心计算空气动力研究所 | 基于多层级非对称通信管理的并行绘制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106803231B (zh) | 2019-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107193911B (zh) | 一种基于bim模型的三维可视化引擎及web应用程序调用方法 | |
WO2021174659A1 (zh) | 一种基于WebGL可编辑大场景渐进式实时渲染方法 | |
JP2022515302A (ja) | 深層学習モデルをトレーニングするための方法及び装置、電子機器、コンピュータ可読記憶媒体並びにコンピュータプログラム | |
CN103617162B (zh) | 一种对等云平台上构建希尔伯特r树索引的方法 | |
WO2021143264A1 (zh) | 图像处理方法、装置、服务器和存储介质 | |
CN107657599B (zh) | 基于混合粒度划分和动态负载分配的遥感图像融合系统并行实现方法 | |
CN112765513A (zh) | 大规模建筑场景的细粒度化Web3D在线可视化方法 | |
CN109237999B (zh) | 一种批量三维态势目标尾迹实时绘制方法和系统 | |
CN103679813B (zh) | 三维数字地球的构建方法以及三维数字地球系统 | |
Lu et al. | Design and implementation of virtual interactive scene based on unity 3D | |
CN103699364A (zh) | 一种基于并行绘制技术的三维图形渲染方法 | |
CN112948043A (zh) | 大规模建筑场景的细粒度化Web3D在线可视化方法 | |
CN110930492B (zh) | 模型渲染的方法、装置、计算机可读介质及电子设备 | |
CN106803231A (zh) | 一种基于sort‑first负载平衡的图形并行绘制方法 | |
Li et al. | CEBOW: A Cloud‐Edge‐Browser Online Web3D approach for visualizing large BIM scenes | |
CN103678888B (zh) | 一种基于欧拉流体模拟算法的心脏血液流动示意显示方法 | |
CN105205851B (zh) | 一种基于gpu超算的特种电影渲染方法及系统 | |
CN109448092B (zh) | 一种基于动态任务粒度的负载均衡集群渲染方法 | |
CN115269757A (zh) | 一种基于边缘计算的云端数据集成系统 | |
CN114529649A (zh) | 图像处理方法和装置 | |
Northam et al. | Ray tracing in the cloud using MapReduce | |
Liu et al. | Design and Implementation of Distributed Rendering System | |
Liang et al. | Time‐Domain Parallelization for Accelerating Cloth Simulation | |
Yang et al. | Dynamic Load Balancing Algorithm Based on Per-pixel Rendering Cost Estimation for Parallel Ray Tracing on PC Clusters | |
Wu et al. | Optimization Algorithm Design of 3D Animation Rendering Based on Virtual Reality |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220628 Address after: No. 860-3, shangshengou village, Hunnan District, Shenyang City, Liaoning Province Patentee after: Shenyang Xinsong virtual reality Industry Technology Research Institute Co.,Ltd. Address before: 110819 No. 3 lane, Heping Road, Heping District, Shenyang, Liaoning 11 Patentee before: Northeastern University |
|
TR01 | Transfer of patent right |