基于GPU集群系统的并行绘制技术研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着计算机图形处理硬件的持续发展,软件的不断完善,特别是1998年后随着可编程图形处理单元(Programmable Graphics Processing Unit, GPU)的出现和发展,图形绘制技术已经深入并影响着人类生产、生活各个方面。与此同时随着社会的发展,各个应用领域也对图形绘制提出了更高的要求,特别是数据规模不断扩大,绘制场景更加精细,单机上完成图形绘制往往达不到这个要求。因此,并行绘制技术成为近年来的研究热点。
     并行绘制技术发展迅速,许多技术得到开发,许多典型系统得到应用。其中GPU集群系统发展迅速,它具有强大的图形显示功能,同时又拥有一定计算能力。本文对基于GPU集群的并行绘制系统的关键技术进行了深入研究,是对传统并行绘制技术应用领域的一个扩展,完成的主要工作和取得的主要研究成果如下:
     首先,提出了基于GPU集群的并行绘制体系结构。该体系结构充分发挥了GPU集群的特点,是对传统的并行绘制适用范围的一个扩展。该体系结构为典型的sort-last类体系结构,同时又构建了堆叠显示的显示区域网络,对每个显示区域进行独立的二分交换合成算法,取得了不错的性能,绘制真实感和高分辨率;同时将GPGPU技术应用于基于GPU集群的并行绘制体系结构中,充分发挥现代GPU的各项潜能。
     其次,提出了GPU集群上基于数据包围盒的KD树动态划分策略。针对静态数据划分存在负载不平衡的问题,动态划分策略本身算法开销太大的问题,使用基于数据包围盒的KD树动态划分策略,并阐述了其在GPU上的实现,在场景数据分布不均匀或变化剧烈的情况下,取得较好的性能提升。
     最后,研究了基于ParaView的并行绘制开发环境和实现了一个通用并行绘制开发环境。ParaView为可视化领域应用广泛的成熟的可视化平台。本文研究了利用其功能扩展插件功能实现并行绘制的方法。该开发环境功能强大,但是修改量太大,且性能下降较大。结合基于GPU集群系统的并行绘制体系结构研究和基于数据包围盒的KD树动态任务划分策略研究,依据尽可能小的修改原单机绘制程序的目标和性能尽可能高的原则,本文构建了通用的并行绘制开发环境,描述了开发环境的实现步骤,明确了各模块的功能等。
With the development of hardware, theories and technologies of computer graphics, specially, the Programmable Graphics Processing Unit's appearance and development after 1998, the technology of graphics rendering goes deep into many fields of human being's production and life. At the same time, the progressive society keeps challenging the technologies of graphics rendering on various aspects, for example, the more complex and subtle dataset. A single computer can’t satisfy this demand. So the parallel rendering becomes an important technology to implement high performance graphics rendering.
     The parallel rendering technology is developing rapidly. New technology is developed and a lot typical systems have been applied. In recent years, GPU cluster has a powerful graphics rendering capabilities and some computing power. This dissertation has depth studied of the key technology of the parallel rendering system based on the GPU cluster which is an extension of the scope of the traditional parallel rendering technology. This dissertation makes contribution on three aspects to the research of parallel rendering system based on GPU cluster.
     First, a new parallel rendering architecture based on the GPU cluster is proposed. This architecture gives full play to the characteristics of the GPU cluster. It is the typical sort-last architecture, and constructions of a tiled display.For each tile, an independently binary-swap image composition algorithm is run to get the final image. The better performance, more realistic, higher resolution is achieved. And the GPGPU technology is applied to this architecture, to make use of the various potential of modern GPU.
     Second, A KD tree dynamic data partitioning strategy based on data bounding box for the GPU cluster parallel rendering system is put forward to solve the problem that the unbalance load problem of the static load balance strategy and the problem that the overhead of dynamic load balance strategy is too expensive. When the scene data is uneven or changes drastically, this strategy achieves a better performance.
     At last, this dissertation implements a parallel rendering development environment based on ParaView which is a mature platform in the visualization field. We use the ParaView's function extension plugin to implement parallel rendering.This development environment's function is powerful, but the change of original program is too big and performance is descendent.At the same time this paper realized of all method discussing above in a general-purpose parallel rendering development environment followed by the goals that the change of original program is as small as possible and the performance is as high as possible. We describe the steps of construction the general-purpose parallel rendering development environment and the function of its modules. Key Words:Parallel rendering, GPU cluster, Architecture, Load balance
引文
[1] MT. Crockett. An introduction to parallel rendering [J]. Parallel Computing, 1997, 23(7):819-843.
    [2] Steven Molnar, Michael Cox, David Ellsworthetal. A Sorting Classification of Parallel Rendering [J]. IEEE Computer Graphics and Applications, 1994, 14(4):23-32.
    [3] Kwan-Liu Ma, James S. Painter, Charles D. Hansen, Michael F. Krogh. Parallel Volume Rendering Using Binary-Swap Compositing [J]. IEEE Computer Graphics and Applications, 1994, 14(4): 59-68.
    [4] Kenneth Moreland, Brian Wylie, Constantine Pavlakos. Sort-last Parallel Rendering for Viewing Extremely Large Data Sets on Tile Display [J]. Proceedings of the IEEE 2001 symposium on parallel and large-data visualization and graphics, 2001.
    [5] T.-Y. Lee, C.S. Raghavendra, J. B. Nicholas. Image Composition Schemes for Sort-last Polygon Rendering on 2D mesh Multi-computers [J]. IEEE Transactions on Visualization and Computer Graphics, 1996, 2(3):202-217.
    [6] He Bing, Sui Lei, A parallel Rendering Algorithm for Large-Scale Terrain [J]. ICCEA, 2010 Second International Conference on Computer Engineering and Application, 2010:530-536.
    [7]彭敏峰.并行绘制系统体系结构关键技术研究[D].湖南长沙:国防科学技术大学研究生院. 2006.
    [8]任继成,刘成权,非规则数据场并行体绘制算法[J],计算机学报,1998, 21(9):813-818.
    [9]彭浩宇.基于PC集群机的并行图形绘制系统研究[D].浙江杭州.浙江大学计算机学院. 2006.
    [10]金哲凡,林海,石教英.数据分布型sort-first并行图形绘制系统的研究与实现[J].计算机研究与发展2004,41(2):234-231.
    [11]石教英.并行图形绘制与多屏拼接显示技术综述[R].浙江大学CAD&CG国家重点实验室, 2004.8.
    [12]石教英,金哲凡.并行多边形绘制技术综述[J].计算机辅助设计与图形学学报. 2003.6.
    [13]季华,陈福民.带负载平衡策略的PC sort-first并行渲染系统[J].计算机仿真2005(11):124-132.
    [14] Steven Molnar, John Poulton. PixelFlow: High-Speed Rendering Using Image Composition. Computer Graphics [J], 1992, 26(2):231-240.
    [15] Jon Louis Bentley. Multidimensional Binary Search Trees Used for Associative Searching [J]. Computer Graphics, 1983, 17(3): 359-376.
    [16] John L. Hennessy, David A. Pattersom. Computer Architecture A Quantitative Approach [M]. China Machine Press. 2007.
    [17] Richard S.Wright, Jr. Benjamin Lipchak. OpenGL超级宝典(第三版)[M].人民邮电出版社. 2005.
    [18] Randi J.Rost.OpenGL着色语言[M].人民邮电出版社. 2006.
    [19] Randima Fernando. GPU Gems Programming Techniques, Tips, and Tricks for Real-Time Graphics [M]. Posts & Telecom Press. 2006.
    [20]张舒,褚艳利. GPU高性能运算之CUDA [M].中国水利水电出版社.2009.
    [21] Kitware. VTK User's Guide:Install, Use and Extend The Visualization Toolkit [M]. Copyright Kitware, Inc. 2008.
    [22] Will Schroeder, Ken Martin, Bill Lorensen. Visualization Toolkit An Object-Oriented Approach to 3D Graphics [M]. 2008.
    [23]都志辉,高性能计算之并行编程技术——MPI并行程序设计[M].清华大学出版社. 2001.2.
    [24] http://graphics.stanford.edu/software/wiregl.
    [25] http://www.sourceforge.net/projects/chromium.
    [26] http://www.gpgpu.org.
    [27] http://www.paraview.org
    [28] Andy Cedilnk, Berk Geveci, Kenneth Moreland, James Ahrens, Jean Favre. Remote Large Data Visualization in the ParaView FrameWonk [J], Eurographics Symposium On Parallel Graphics and Visualization 2006:163-170.
    [29] Steven Molnar, John Eyles, John Poulton, PixelFlow: High-Speed Rendering Using Image Composition [J], In proceedings of SigGraphics 92, Computer Graphics, July 1992.
    [30] Scott Whiteman, Dynamic Load Balancing for Parallel Polygon Rendering [J], IEEE Computer Graphics and Applications, July 1994.
    [31]张繁,王章野,姚建,吴韬,彭群生.应用GPU集群加速计算蛋白质分子场[J].计算机辅助设计与图形学学报. 2010,22(3).
    [32] Reeves W T. Particle system: A technique for modeling a class of fuzzy object [J]. Computer Graphics, 1983, 17(3): 359-376.
    [33] Lutz Latta. Building a Million Particle System [J]. Game Developers Conference. 2004.
    [34] David K. McAllister. The Design of an API for Particle Systems [J]. UNC Computer Science Tech Report. 2000.
    [35] M¨ULLER, M., ET AL. 2003. Particle-Based Fluid Simulation for InteractiveApplications [J]. SIGGRAPH/Eurographics Symposium on Computer Animation, pp. 154-159, 2003.
    [36] Takashi Amada, Masataka Imura, Yoshihiro Yasumuro, Yoshitsugu Manabe, Kunihiro Chihara. Particle-Based Fluid Simulation on GPU [J]. ACM WorkShop on General-Purpose Computing on Graphics Processors. 2004.
    [37]李晓萍.基于GPU的粒子系统的研究与应用[D].吉林长春.吉林大学研究生院. 2009.
    [38] Randima Fernando, Mark J. Kilgard, Cg-The Cg Tutorial [M]. Addison-wesley Longman Publishing Co. Inc. Boston. Ma, USA. 2008.
    [39] Ian Buck, Tim Purcell, GPU Gems----a toolkit for computation on GPUs [M], Stanford University. 2008.
    [40] Zhe Fan, Feng Qiu, Arie Kaufman, Suzanne Yoakum-Stover. GPU Cluster for High Performance Computing [C]. ACM/IEEE Supercomputing Conference 2004. 2004.
    [41]周勇,唐圣泽.三维数据可视化技术的研究与实现[D],北京.清华大学研究生院,1995.6.
    [42] http://tech.china.com/zh_cn/news.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700