nVIDIA 在 GPU Technology Conference 2010 大会上发布一个对于程序开发者来说或许比较大的消息,即nVIDIA 和 PGI 共同发表了CUDA-x86,准备让CUDA 程序进军 x86 CPU 了!消息来源是《NVIDIA teams with PGI for CUDA-x86, gifts its brand of parallelism to the world》,目前在 nVIDIA 官方网站还没找到任何相关消息,不过在 PGI 网站倒是可以看到新闻稿了。该新闻稿是《PGI to Develop Compiler Based on NVIDIA CUDA C Architecture for x86 Platforms》,新闻稿内容摘录如下:
The Portland Group®, a wholly-owned subsidiary of STMicroelectronics and the leading independent supplier of compilers for high-performance computing, today announced it is developing a CUDA C compiler targeting systems based on the industry-standard general-purpose 64- and 32-bit x86 architectures. The new PGI CUDA C compiler for x86 platforms will be demonstrated at the SC10 Supercomputing conference taking place in New Orleans , LA , November 13-15, 2010.
The NVIDIA CUDA architecture was developed to enable offloading computationally intensive kernels to massively parallel GPUs. Through function calls and language extensions, CUDA gives developers explicit control over the mapping of general-purpose computational kernels to GPUs, as well as the placement and movement of data between an x86 processor and the GPU.
The PGI CUDA C compiler for x86 platforms will allow developers using CUDA to compile and optimize CUDA applications to run on x86-based workstations, servers and clusters with or without an NVIDIA GPU accelerator. When run on x86-based systems without a GPU, PGI CUDA C applications will use multiple cores and the streaming SIMD (Single Instruction Multiple Data) capabilities of Intel and AMD CPUs for parallel execution.
"CUDA C for x86 is a perfect complement to CUDA Fortran and PGI’s optimizing parallel Fortran and C compilers for multi-core x86," said Douglas Miles, director, The Portland Group. "It’s another important element in our on-going strategy of providing HPC programmers with development tools that give PGI users a full range of options for optimizing compute-intensive applications, while allowing them to leverage the latest technical innovations from AMD, Intel and NVIDIA."
"In less than three years, CUDA has become the most widely used massively parallel programming model," said Sanford Russell, general manager of GPU Computing software at NVIDIA. "With the CUDA for x86 CPU compiler, PGI is responding to the need of developers who want to use a single parallel programming model to target many core GPUs and multi-core CPUs."
简单地讲,就是PCI 正在开发一个CUDA C 的编译器(PGI CUDA C compiler for x86 platforms),目标是针对目前最普遍的32 位/64 位 x86 处理器;而在今年 11 月的 SC (Supercomputing conference)上将会展示这个编译器。透过 PGI 的这套 CUDA C 编译器,开发者可以使用 CUDA C 开发出可以在多核心 x86 计算机上执行的程序,而不需要有 nVIDIA 的 GPU支持。
虽然目前看来,如果要让CUDA 程序能在CPU上跑起来还需要特殊的编译器重新编译过,并非现有的CUDA 程序可以直接用,不过至少应该会是一个可以用的方案了!