正在加载图片...
Introduction GPU Computing Applications Libraries and Middleware CuFFT CuBLAS CULA Thrust VSIPL PhysX CuDNN MATLAB CURAND MAGMA NPP SVM Optix TensorRT Mathematica cuSPARSE OpenCurrent iRay Programming Languages Java C++ Fortran Python DirectCompute Directives Wrappers (e.g.OpenACC) CUDA-enabled NVIDIA GPUs Pascal Architecture GeForce 1000 Series Quadro P Series Tesla P Series (compute capabilities 6.x) Maxwell Architecture GeForce 900 Series Quadro M Series Tesla M Series (compute capabilities 5.x) Kepler Architecture GeForce 700 Series Quadro K Series Tesla K Series (compute capabilities 3.x) GeForce 600 Series Fermi Architecture GeForce 500 Series Quadro Fermi Series Tesla 20 Series (compute capabilities 2.x) GeForce 400 Series Professional High Performance ainment Graphics Computing Figure 4 GPU Computing Applications CUDA is designed to support various languages and application programming interfaces. 1.3.A Scalable Programming Model The advent of multicore CPUs and manycore GPUs means that mainstream processor chips are now parallel systems.Furthermore,their parallelism continues to scale with Moore's law.The challenge is to develop application software that transparently scales its parallelism to leverage the increasing number of processor cores,much as 3D graphics applications transparently scale their parallelism to manycore GPUs with widely varying numbers of cores. The CUDA parallel programming model is designed to overcome this challenge while maintaining a low learning curve for programmers familiar with standard programming languages such as C. At its core are three key abstractions-a hierarchy of thread groups,shared memories, and barrier synchronization-that are simply exposed to the programmer as a minimal set of language extensions. www.nvidia.com CUDA C Programming Guide PG-02829-001_v8.014Introduction www.nvidia.com CUDA C Programming Guide PG-02829-001_v8.0 | 4 Figure 4 GPU Computing Applications CUDA is designed to support various languages and application programming interfaces. 1.3. A Scalable Programming Model The advent of multicore CPUs and manycore GPUs means that mainstream processor chips are now parallel systems. Furthermore, their parallelism continues to scale with Moore's law. The challenge is to develop application software that transparently scales its parallelism to leverage the increasing number of processor cores, much as 3D graphics applications transparently scale their parallelism to manycore GPUs with widely varying numbers of cores. The CUDA parallel programming model is designed to overcome this challenge while maintaining a low learning curve for programmers familiar with standard programming languages such as C. At its core are three key abstractions - a hierarchy of thread groups, shared memories, and barrier synchronization - that are simply exposed to the programmer as a minimal set of language extensions
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有