CUDA vs. CPU

I found this title on nVidia’s Forums, and I think some people are misleading.

Misleading because you don’t have to consider CUDA per-se anymore, but instead consider writing code for OpenCL, that is natively supported on Mac OS X platform (CPU, ATI GPU, nVidia GPU), by nVidia on Windows and Linux (nVidia GPU), by AMD on Windows (any-vendor CPU), by ATI on Windows and Linux (ATI GPU). And you have to know CUDA and do some CUDA development and optimization to be able to do good OpenCL GPU code. OpenCL is now the way to go, definitely.

OpenCL vs. CPU?

OpenCL enable you to code once, then have your code running on each available GPU (if supported), and each available CPU core or CPU Thread (hyper-threading), simultaneously. OpenCL ease the use of many-many-core CPU, and the use of GPU at the same time, aggregating all their potential instead of opposing it.

With OpenCL, your code will run as fast as possible wether you have a mono-core CPU, a 16-core 32 thread workstation or server, a computer with 3 TFlops on GPUS, or even, as me a laptop with dual core CPU, and 2 GPU.

OpenCL is a way to use your multi-core CPU a 100% while aggregating the computing power of your GPU. It’s intended to unleash the full potential of modern computers, and make them run 2X to 5x than before :-)

  • Print this article!
  • E-mail this story to a friend!
  • Digg
  • Twitter
  • Facebook
  • del.icio.us
  • Google Bookmarks
  • LinkedIn
  • Reddit
  • Slashdot
  • Technorati

Comments are closed.