图形处理器用于通用计算的技术、现状及其挑战
作者:
基金项目:

Supported by the National Natural Science Foundation of China under Grant Nos.60033010,60173022,60223005(国家自然科学基金);the National Grand Fundamental Research 973 Program of China under Grant No.2002CB312102(国家重点基础研究发展规划(973));the Research Grant of Univetsity of Macau(澳门大学研究基金).


State of the Art and Future Challenge on General Purpose Computation by Graphics Processing Unit
  • 摘要
  • | |
  • 访问统计
  • |
  • 参考文献 [59]
  • |
  • 相似文献 [20]
  • |
  • 引证文献
  • | |
  • 文章评论
    摘要:

    多年来计算机图形处理器(GP以大大超过摩尔定律的速度高速发展.图形处理器的发展极大地提高了计算机图形处理的速度和图形质量,并促进了与计算机图形相关应用领域的快速发展与此同时,图形处理器绘制流水线的高速度和并行性以及近年来发展起来的可编程功能为图形处理以外的通用计算提供了良好的运行平台,这使得基于GPU的通用计算成为近两三年来人们关注的一个研究热点.从介绍GPU的发展历史及其现代GPU的基本结构开始,阐述GPU用于通用计算的技术原理,以及其用于通用计算的主要领域和最新发展情况,并详细地介绍了GPU在流体模拟和代数计算、数据库应用、频谱分析等领域的应用和技术,包括在流体模拟方面的研究工作.还对GPU应用的软件工具及其最新发展作了较详细的介绍.最后,展望了GPU应用于通用计算的发展前景,并从硬件和软件两方面分析了这一领域未来所面临的挑战.

    Abstract:

    Graphics processing unit (GPU) has been developing rapidly in recent years at a speed over Moor抯 law, and as a result, various applications associated with computer graphics advance greatly. At the same time, the highly processing power, parallelism and programmability available nowadays on the contemporary GPU provide an ideal platform on which the general-purpose computation could be made. Starting from an introduction to the development history and the architecture of GPU, the technical fundamentals of GPU are described in the paper. Then in the main part of the paper, the development of various applications on general purpose computation on GPU is introduced, and among those applications, fluid dynamics, algebraic computation, database operations, and spectrum analysis are introduced in detail. The experience of our work on fluid dynamics has been also given, and the development of software tools in this area is introduced. Finally, a conclusion is made, and the future development and the new challenge on both hardware and software in this subject are discussed.

    参考文献
    [1]Macedonia M. The GPU enters computing's mainstream. IEEE Computer, 2003,36(10):106~108.
    [2]Hopgood FRA, Duce DA, Gallop JR, Sutcliffe DC. Introduction to the Graphics Kernel System (GKS). Academic Press, 1983.
    [3]Enderle G, Kansy K, PfaffG. Computer Graphics Programming: GKS-The Graphics Standard. Berlin: Springer-Verlag, 1984.
    [4]Howard TLJ, Hewitt WT, Hubbold RJ, Wyrwas KM. A Practical Introduction to PHIGS and PHIGS Plus. Addition-Wesley, 1991.
    [5]Clark JH. The geometry engine: A VLSI geometry system for graphics. In: Proc. of the SIGGRAPH'82. 1982. 127~133.
    [6]Fuchs H, Poulton J. Pixel-Planes: A VLSI-oriented design for a raster graphics engine. VLSI Design, 1981,2(3):20~28.
    [7]Eyles J, Austin J, Fuchs H, Greet T, Poulton J. Pixel-Plane 4: A summary, advances in computer graphics hardware II. In:Eurographics Seminars Tutorials and Perspectives in Computer Graphics. 1988. 183~208.
    [8]Fuchs H, Israel L, Poulton J, Eyles J, Greet T, Goldfeather J, Ellsworth D, Molnar S, Turk G, Tebbs B. Pixel-Planes 5: A heterogeneous multiprocessor graphics system using processor-enhanced memories. In: Proc. of the SIGGRAPH'89. 1989. 79~88.
    [9]Molnar S, Eyles J, Poulton J, Greer T. PixelFlow: High-Speed rendering using image composition. In: Proc. of the SIGGRAPH'92.ACM Press, 1992. 231~240.
    [10]Lindholm E, Kilgard MJ, Moreton H. A user-programmable vertex engine. In: Proc. of the SIGGRAPH 2001. Los Angeles, 2001.149~158.
    [11]Owens JD, Dally WJ, Kapasi UJ, Rixner S, Mattson P, Mowery B. Polygon rendering on a stream architecture. In: Proc. of the Eurographics/SIGGRAPH Workshop on Graphics Hardware. 2000.23~32.
    [12]Wu EH, Liu YQ. General purpose computation on GPU. Chinese Journal of Computer Aided Design & Computer Graphics, 2004,16(5):601~612 (in Chinese with English abstract).
    [13]Govindaraju NK, Sud A, Yoon SE, Manocha D. SWITCH: Parallel occlusion culling for interactive walkthroughs using multiple GPUs. Technical Report, TR02-027, UNC-CH, 2002.
    [14]Govindaraju NK, Redon S, Lin M, Manocha D. CULLIDE: Interactive collision detection between complex models in large environments using graphics hardware. In: Proc. of the Eurographics/SIGGRAPH Workshop on Graphics Hardware. 2003.25~32.
    [15]Sud A, Otaduy MA, Manocha D. DiFi: Fast 3D distance field computation using graphics hardware. In: Proc. of the Eurographics,2004.
    [16]Tomov S, McGuigan M, Bennett R, Smith G, Spiletic J. Benchmarking and implementation of probability-based simulations on programmable graphics cards. Computers & Graphics, 2005,29(1).
    [17]Larsen ES, McAllister D. Fast matrix multiplies using graphics hardware. In: Proc. of the Supercomputing. 2001.55~60.
    [18]Thompson CJ, Hahn S, Oskin M. Using modern graphics architectures for general-purpose computing: A framework and analysis.In: Proc. of the Int'l Symp. on Microarchitecture. 2002. 306~317.
    [19]Kruger J, Westermann R. Linear algebra operators for GPU implementation of numerical algorithms. ACM Trans. on Graphics,2003,22(3):908~916.
    [20]Hall JD, Cart NA, Hart JC. Cache and bandwidth aware matrix multiplication on the GPU. UIUCDCS-R-2003-2328, Champaign:University of Illinois at Urbana-Champaign, 2003.
    [21]RumpfM, Strzodka R. Using graphics cards for quantized FEM computations. In: Proc. of the VIIP 2001. 2001.98~107.
    [22]Harris MJ, Coombe G, Scheuermann T, Lastra A. Physically-Based visual simulation on graphics hardware. In: Proc. of the Graphics Hardware 2002.2002. 109~118.
    [23]Li W, Wei XM, Kaufman A. Implementing lattice Boltzmann computation on graphics hardware. The Visual Computer, 2003,19(7-8):444~456.
    [24]Bolz J, Farmer I, Grinspun E, Schrooder P. Sparse matrix solvers on the GPU: Conjugate gradients and multigrid. ACM Trans. on Graphics, 2003,22(3):917~924.
    [25]Goodnight N, Woolley C, Luebke D, Humphreys G. A multigrid solver for boundary value problems using programmable graphics hardware. In: Proc. of the Graphics Hardware 2003. 2003. 102~111.
    [26]Harris M J, Baxter W-V III, Scheuermann T, Lastra A. Simulation of cloud dynamics on graphics hardware. In: Proc. of the Graphics Hardware 2003. 2003.92~101.
    [27]Li W, Fan Z, Wei XM, Kaufman A. GPU-Based flow simulation with complex boundaries. Technical Report, 031105, Computer Science Department, SUNY at Stony Brook, 2003.
    [28]Kim T, Lin MC. Visual simulation of ice crystal growth. In: Proc. of the SIGGRAPH/Eurographies Symp. on Computer Animation.2003.86~97.
    [29]Lefohn AE, Kniss JM, Hansen CD, Whitaker RT. Interactive deformation and visualization of level set surfaces using graphics Hardware. In: IEEE Visualization. 2003.75~82.
    [30]Sram J. Stable fluids. In: Proc. of the SIGGRAPH'99. 1999. 121~128.
    [31]Wu EH, Liu YQ, Liu XH. An improved study of real-time fluid simulation on GPU. Journal of Computer Animation & Virtual World (invited paper of CASA2004), 2004,15(3-4): 139~146.
    [32]Liu YQ, Wu EH, Liu XH. Real-Time 3D fluid simulation on GPU with complex obstacles. In: Proc. of the Pacific Graphics 2004.2004.
    [33]Liu YQ, Wu EH, Liu XH. Fluid simulations on GPU with complex boundary conditions. In: ACM Workshop on General-Purpose Computing on Graphics Processors (GP2). 2004.
    [34]Govindaraju NK, Lloyd B, Wang W, Lin M, Manocha D. Fast computation of database operations using graphics processors. In:Proc. of the SIGMOD. 2004.
    [35]http://lava.cs.virgina.edu/bpred.html
    [36]Moreland K, Angel A. The FFT on a GPU. In: Proc. of the Graphics Hardware 2003. 2003.
    [37]Strang G, Nguyen T. Wavelets and Filter Bands. California: Wellesley-Cambridge Press, 1996.
    [38]Hopf M, Ertl T. Hardware accelerated wavelet transformations. In: Proc. of the EG/IEEE TCVG Symp. on Visualization 2000.2000.93~103.
    [39]Wang JQ, Wong TT, Heng PA, Leung CS. Discrete wavelet transform on GPU. In: ACM Workshop on General-Purpose Computing on Graphics Processors (GP2). 2004.
    [40]Wang JQ. Exploiting the GPU power for intensive geometric and imaging data computation [MPhil Thesis]. Chinese University of Hong Kong, 2004.
    [41]Hanrahan P, Lawson J. A language for shading and lighting calculations. Computer Graphics, 1990,24(4):289~298.
    [42]Upstill S. The RenderMan Companion: A Programmer's Guide to Realistic Computer Graphics. Addison-Wesley, 1990.
    [43]Apodaca AA, Gritz L. Advanced RenderMan: Creating CGI for Motion Pictures. Morgan Kanfmann Publishers, 2000.
    [44]Kessenich .JD, Baldwin RR. OpenGL. 2.0 Shading Language. 1.051 Ed, 2003.
    [45]Rost RJ. OpenGL Shading Language. Addison-Wesley, 2004.
    [46]Proudfoot K, Mark WR, Hanrahan P, Tzvetkov S. A real time procedural system for programmable graphics hardware. Computer Graphics, 2001. 159~170.
    [47]Mark WR, Proudfoot K. Compiling to a VLIW fragment pipeline. In: Proc. of the Graphics Hardware 2001. 2001.
    [48]Peeper C, Mitchell JL. Introduction to the DirectX 9 High-Level Shader Language. 2003. http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnhlsl/html/shaderx2_introductiontu.asp
    [49]Mark WR, Glanville S, Akeley K, Kilgard MJ. Cg: A system for programming graphics hardware in a C-like language. ACM Trans.on Graphics, 2003,22(3):896~907.
    [50]Buck I, Foley T, Horn D, Sugerman J, Fatahalian K, Houston M, Hanrahan P. Brook for GPUs: Stream computing on graphics hardware. ACM Trans. on Graphics, 2004,23(3):777~786.
    [51]McCool M, Toit SD, Pupa T, Chart B, Moule K. Shader algebra. ACM Trans. on Graphics, 2004,23(3):787~795.
    [52]Dally W J, Hanrahan P, Erez M, Knight TJ, Labont F, Alan JH, Jayasena N, Kapasi UJ, Das A, Gummaraju J, Buck I. Merrimac:Supercomputing with streams. In: Proc. of the SC 2003. ACM Press, 2003.
    [53]Talor MB, Kim J, Miller J, Wentzlaff D, Ghodrat F, Greenwald B, Hoffmann H, Johnson P, Lee JW, Lee W, Ma A, Saraf A,Seneski M, Shnidman N, Strumpen V, Frank M, Amarasinghe S, Agarwal A. The raw microprocessor: A computational fabric for software circuits and general purpose programs. IEEE Micro, 2002.
    [54]Wu EH. Challenge of highly detail object modeling and illumination calculation in virtual reality (Keynote Speech). In: Proc. of the ACM/VRST2002. Hong Kong, 2002.
    [55]Wu EH. Modeling and rendering of complex virtual environments (Keynote Speech). In: Proc. of the 3rd National Conf. on Virtual Reality and Visualization. Changsha: National University of Defense Technology, 2003(in Chinese with English abstract).
    [56]Fan Z, Qiu F, Kaufman A, Yoakum-Stover S. GPU cluster for high performance computing. In: Proc. of the ACM/IEEE SC2004Conf. 2004.
    [57]Guide R, Weeks M, Owen S, Pan Y. Parallel computing with multiple GPUs on a single machine to achieve performance gains. In:ACM GP2: Workshop on General Purpose Computing on Graphics Processors. 2004.
    [58]吴恩华,柳有权.基于图形处理器(GPU)的通用计算.计算机辅助设计与图形学学报,2004,16(5):601~612.
    [59]吴恩华.复杂虚拟场景的造型与绘制(大会特邀报告).见:第3届全国虚拟现实与可视化学术会议(CCVRV 2003).长沙:国防科学技术大学,2003.
    网友评论
    网友评论
    分享到微博
    发 布
引用本文

吴恩华.图形处理器用于通用计算的技术、现状及其挑战.软件学报,2004,15(10):1493-1504

复制
分享
文章指标
  • 点击次数:9282
  • 下载次数: 41923
  • HTML阅读次数: 0
  • 引用次数: 0
历史
  • 收稿日期:2004-08-14
  • 最后修改日期:2004-08-14
文章二维码
您是第19900011位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号