首页> 中国专利> 基于分布式云存储的数据并行可视化图形渲染方法及系统

基于分布式云存储的数据并行可视化图形渲染方法及系统

摘要

本发明公开了计算机图形渲染技术领域的一种基于分布式云存储的数据并行可视化图形渲染方法及系统,提高了大规模数据并行体渲染的渲染效率,同时加快了GPU系统的计算时间与工作效率,能有效划分存储空间,降低本地渲染的成本。包括:将所研究的三维图形对象划分为若干个目标渲染单元;基于多GPU系统异步并行体渲染,将若干个所述目标渲染单元分布至每个子计算机的GPU上分别进行渲染;将每个所述子计算机的GPU的数据信息传输至云平台,在云平台完成本地方案的搭建与图形渲染。

著录项

  • 公开/公告号CN113269856A

    专利类型发明专利

  • 公开/公告日2021-08-17

    原文格式PDF

  • 申请/专利权人 南京邮电大学;

    申请/专利号CN202110515293.7

  • 发明设计人 杨海根;胥若天;李禄阳;

    申请日2021-05-12

  • 分类号G06T15/00(20110101);G06T1/20(20060101);G06T1/60(20060101);

  • 代理机构32224 南京纵横知识产权代理有限公司;

  • 代理人邵斌

  • 地址 210003 江苏省南京市鼓楼区新模范马路66号

  • 入库时间 2023-06-19 12:14:58

说明书

技术领域

本发明属于计算机图形渲染技术领域,具体涉及一种基于分布式云存储的数据并行可视化图形渲染方法及系统。

背景技术

随着科学技术的深入发展,各种不同门类的行业也取得了空前的发展,其中数据处理技术的进步是各个行业的发展的重要助力。像地质学、大气科学、医疗影像学、虚拟现实科学等等都有其各自特点,可以是二维的、三维的、标量的、矢量的,他们的共同点就是数据体量大,不仅在于数据节点的数目众多,还在于数据呈现的维度变化广,复杂度变化大。从这些庞大的数据中提取出关键数据加以清晰的图形展现,这就对可视化技术提出了很高的要求,图形图表其是表现数据的最直观的方法,但是将这些庞大的数据以这些方式呈现并不容易,在进行可视化时,尤其是当场景很复杂或是需要高质量的图形时,渲染过程对计算的要求很高,此时每个图形的需要数以百万计的浮点运算与整数运算,对实时信息交互与实时响应提出了更高的要求,目前在图形渲染领域存在数据组织划分不明晰,运行效率低,渲染效果不理想等一系列问题。

发明内容

为解决现有技术中的不足,本发明提供一种基于分布式云存储的数据并行可视化图形渲染方法及系统,提高了大规模数据并行体渲染的渲染效率,同时加快了GPU系统的计算时间与工作效率,能有效划分存储空间,降低本地渲染的成本。

为达到上述目的,本发明所采用的技术方案是:

第一方面,提供一种数据并行可视化图形渲染方法,包括:将所研究的三维图形对象划分为若干个目标渲染单元;基于多GPU系统异步并行体渲染,将若干个所述目标渲染单元分布至每个子计算机的GPU上分别进行渲染;将每个所述子计算机的GPU的数据信息传输至云平台,在云平台完成本地方案的搭建与图形渲染。

进一步地,将所研究的三维图形对象划分为若干个目标渲染单元,具体为:采用基于KD-tree结构的体渲染任务划分方式,将所研究的三维图形对象的数据空间划分为若干个目标渲染单元。

进一步地,所述基于多GPU系统异步并行体渲染,将若干个所述目标渲染单元分布至每个子计算机的GPU上分别进行渲染,具体为:将目标渲染单元分布至每个子计算机上,由每个子计算机的GPU负责不同的渲染部分,然后各个子计算机的GPU基于异步并行体渲染,混合数据空间与屏幕空间的任务划分,将所需渲染的屏幕空间区域划分为若干个屏幕子块,这样每一个屏幕子块都可以完成分布式的系统操作。

进一步地,所述屏幕空间采用KD-tree结构方式实现,其中数据空间的KD-tree的叶子节点数与GPU线程数相等。

进一步地,所述屏幕空间的划分采用动态方式完成,在每次渲染一帧之前,所有主线程都需要首先确定各自所处理数据的包围盒中心在屏幕上的投影位置,然后根据所有数据包围盒的中心位置,进一步确定屏幕划分方式。

进一步地,将每个所述子计算机的GPU的数据信息传输至云平台,在云平台完成本地方案的搭建与图形渲染,具体为:所有子计算机的GPU构成GPU系统集群,通过云平台将GPU系统集群所采集的数据通过异步并行的方式传输至云平台并进行云存储;在云平台一图形的方式表示数据,基于图形的文理、深度参数进行图形的绘制与渲染。

进一步地,还包括:通过对分布式云存储的数据并行图形渲染结果与本地存储的图形渲染结果的分析,得到分布式云存储数据并行图形渲染的性能参数。

第二方面,提供一种数据并行可视化图形渲染系统,包括:第一模块,用于将所研究的三维图形对象划分为若干个目标渲染单元;第二模块,用于基于多GPU系统异步并行体渲染,将若干个所述目标渲染单元分布至每个子计算机的GPU上分别进行渲染;第三模块,用于将每个所述子计算机的GPU的数据信息传输至云平台,在云平台完成本地方案的搭建与图形渲染。

与现有技术相比,本发明所达到的有益效果:

(1)本发明通过基于多GPU系统异步并行体渲染,将若干个目标渲染单元分布至每个子计算机的GPU上分别进行渲染,改变了以往的Sort-last并行绘制方法在绘制单帧时需要同步图像绘制与图像合成的观念,解决目前数据并行可视化传输的速率低下的难题,提高了大规模数据并行体渲染的渲染效率;

(2)通过将云平台处理后的图形渲染结果与本地数据渲染之后的结果进行比较,最终得出云存储性能优越的的结论,可以为算法研究人员与图形渲染工作人员提供相应的技术依据,加快GPU系统的计算时间与工作效率,有效划分存储空间,降低本地渲染的成本等,从而为云技术在图形渲染领域的进步发展做出贡献。

附图说明

图1是本发明实施例提供的一种基于分布式云存储的数据并行可视化图形渲染方法中数据空间划分方法示意图;

图2是本发明实施例提供的一种基于分布式云存储的数据并行可视化图形渲染方法中屏幕空间划分方法示意图;

图3是本发明的分布式多GPU异步并行体渲染的过程图;

图4是本发明的云平台下GPU集群的渲染速率对比图。

具体实施方式

下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

实施例一:

一种基于分布式云存储的数据并行可视化图形渲染方法,包括:将所研究的三维图形对象划分为若干个目标渲染单元;基于多GPU系统异步并行体渲染,将若干个所述目标渲染单元分布至每个子计算机的GPU上分别进行渲染;将每个所述子计算机的GPU的数据信息传输至云平台,在云平台完成本地方案的搭建与图形渲染。

将所研究的三维图形对象划分为若干个目标渲染单元。本实施例基于多GPU系统异步并行体渲染方法,在基于多GPU系统异步并行体渲染方法的指导下,采用C++语言进行代码编译,使用ParaView软件进行整体的可视化建模和仿真,结合分布式云存储与数据并行可视化的技术,通过对几种关键技术的研究分析,从而提出了一种基于分布式云存储数据并行的可视化图形渲染方法以应对我国目前在图形渲染领域的数据组织划分不明晰,运行效率低,渲染效果不理想等一系列问题。本发明通过算法分析,建模,仿真,给出最合理的解决方案。图1为本发明的体渲染的任务划分实现方式,包括KD-tree结构方式。采用基于KD-tree结构的体渲染任务划分方式,将所研究的三维图形对象的数据空间划分为若干个目标渲染单元。KD-tree结构方式是一种常用且高效的数据组织与划分的方法。

基于多GPU系统异步并行体渲染,将若干个所述目标渲染单元分布至每个子计算机的GPU上分别进行渲染,具体为:将目标渲染单元分布至每个子计算机上,由每个子计算机的GPU负责不同的渲染部分,然后各个子计算机的GPU基于异步并行体渲染,混合数据空间与屏幕空间的任务划分,将所需渲染的屏幕空间区域划分为若干个屏幕子块,这样每一个屏幕子块都可以完成分布式的系统操作。如图1、图2所示,为了获得最佳的任务计算负载均衡,数据空间与屏幕空间均采用KD-tree结构方式实现,其中数据空间的KD-tree高度与GPU线程数相关,即要求KD-tree的叶节点数与GPU线程数相等。原始数据按照指定的空间划分完毕后,将所得到的各个数据块分配至各个GPU进行单独渲染。与数据空间的静态划分方式不同,屏幕空间的划分采用动态方式完成。在每次渲染一帧之前,所有主线程都需要首先确定各自所处理数据的包围盒中心在屏幕上的投影位置,然后根据所有数据包围盒的中心位置,进一步确定屏幕划分方式。以Y轴方向的划分过程为例,假设当前总共有m个数据块,那么对应的包围盒中心点在屏幕上的投影坐标分别为:{

(1)如果m为奇数,则划分位置定位为

(2)如果m为偶数,则划分位置定位为

按照这种划分方法可以很快完成近似于负载均衡的划分,从而尽可能满足并行体绘制的实时性的要求。同理可知X轴方向上的情况类似。

图3为本发明的分布式多GPU异步并行体渲染的过程图,包括算法实现步骤、算法理论性能分析,其中:

所述算法实现步骤由以下步骤具体阐释,假设有N个主线程参与到并行体渲染,每个主线程负责一个GPU设备。在目前状态下,屏幕子块T

步骤1:H

步骤2:H

步骤3:判断节点的标志位T

步骤4:线程H

步骤5:线程H

步骤6:线程H

在每帧开始渲染之前,所有线程完成渲染准备工作后抵达一个栅栏同步操作准备开始异步绘制,之后按照各自顺序执行步骤1到步骤6的各个操作步骤,直至各个线程各自完成全部屏幕子块的渲染。渲染结束后,最终的体渲染的结果将会将图形分布式地存入各个GPU的纹理缓存对象中,通过输出线程收集结果的子图形块的操作后,拼接输出到显示屏上。

所述算法理论性能分析主要用于从理论分析多GPU异步并行体渲染的优势,假设有n个主渲染线程参与并行体渲染过程,全图形被划分为m个图形子块,同时定义相关时间参数如下:渲染完整的时间为t

上式的变量x用于表示图形复制融合的次数,从合成树的机构可知,x的取值范围为0≤x≤log

传统渲染方法,即绘制与合成步骤执行的方法,其渲染总时间为:

由于图形在GPU上的融合速度非常快,因而t

将每个所述子计算机的GPU的数据信息传输至云平台,在云平台完成本地方案的搭建与图形渲染;具体为:所有子计算机的GPU构成GPU系统集群,通过云平台将GPU系统集群所采集的数据通过异步并行的方式传输至云平台并进行云存储;在云平台一图形的方式表示数据,基于图形的文理、深度参数进行图形的绘制与渲染;通过对分布式云存储的数据并行图形渲染结果与本地存储的图形渲染结果的分析,得到分布式云存储数据并行图形渲染的性能参数;分布式云存储数据并行图形渲染的性能数据优势,为降低基础设施开销与大数据研究人员改进图形渲染提供依据。

图4为本实施例在云平台下GPU集群的渲染速率对比图,将本地集群的方案搬移至云平台端处理,在云平台端搭建一个可视化的应用平台,将上述异步并行体渲染的数据放置在云平台进行存储,之后将数据依次按步骤进行绘制,合成,渲染。经实验分析,在云端的并行体渲染的可以很大程度提高渲染效率,且GPU集群越多,传输数据量大时,渲染速率也越大。但是对于小数据量时,四节点的GPU渲染效率提升的比率比二节点GPU的情况下会略微减少。总的来说,在云平台将进行并行可视化适用于大规模数据的渲染,可以减少时间花费,是一种可行的方法。

本实施例中,多GPU系统异步并行体渲染包括多GPU异步并行体渲染算法;可视化软件工具包括ParaView可视化软件工具;云平台包括亚马逊云平台,用于搭建所需的图形渲染环境,同时对本地采集的数据进行云存储、云计算、云分析,将图形渲染应用部署至云端,通过云供应商的设备与技术完成大数据量下的图形渲染与合成,将所得结果返还给本地进行比对。多GPU系统异步并行体渲染,用于混合数据空间与屏幕空间的的任务划分方式,将体绘制任务均匀分配至各个GPU,之后将所需渲染的屏幕空间区域划分成多个在屏幕子块,最终获得体渲染的子任务。可视化软件工具,用于对三维图形环境进行构建,对每个不同的GPU进行分布式并行运行,完成分布式渲染工作。基于分布式指的是将目标渲染单元分布至每个子计算机上,由每个子计算机的GPU负责不同的渲染部分,然后各个GPU子块采用异步并行体渲染的方法,混合数据空间与屏幕空间的任务划分,将渲染的屏幕空间区域划分为若干个屏幕子块,这样每一个子块都可以完成分布式的系统操作,所有的GPU子块构成系统集群。云存储指的是通过云平台将GPU系统集群所采集的数据进行存储,并且方便进行拓展,然后在云平台进行对其进行图形的绘制与渲染。数据并行指的是传输至云平台的数据采用异步并行的方式传输。可视化图形渲染方法指的是以图形的方式表示数据,通过对图形的纹理、深度等参数的渲染以便人们能够更深入地理解与分析。通过记录实验的数据值,为改进目前的并行可视化图形渲染方法提供合理依据。

本实施例通过基于多GPU系统异步并行体渲染,将若干个目标渲染单元分布至每个子计算机的GPU上分别进行渲染,改变了以往的Sort-last并行绘制方法在绘制单帧时需要同步图像绘制与图像合成的观念,解决目前数据并行可视化传输的速率低下的难题,提高了大规模数据并行体渲染的渲染效率;通过将云平台处理后的图形渲染结果与本地数据渲染之后的结果进行比较,最终得出云存储性能优越的的结论,可以为算法研究人员与图形渲染工作人员提供相应的技术依据,加快GPU系统的计算时间与工作效率,有效划分存储空间,降低本地渲染的成本等,从而为云技术在图形渲染领域的进步发展做出贡献。

实施例二:

基于实施例一所述的基于分布式云存储的数据并行可视化图形渲染方法,本实施例提供一种数据并行可视化图形渲染系统,包括:第一模块,用于将所研究的三维图形对象划分为若干个目标渲染单元;第二模块,用于基于多GPU系统异步并行体渲染,将若干个所述目标渲染单元分布至每个子计算机的GPU上分别进行渲染;第三模块,用于将每个所述子计算机的GPU的数据信息传输至云平台,在云平台完成本地方案的搭建与图形渲染。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号