4

What does it mean when a graphic card mentions it supports native OpenCL?

And what happens when it doesn't? And how does intel 3000 cope with it? How are performances and processing cell numbers?

Hennes
  • 65,804
  • 7
  • 115
  • 169
oneat
  • 3,401

2 Answers2

9

As I see the situation Intel HD 3000 is build in 2nd generation Intel Core Processors (a.k.a. Sandy Bridge).

But OpenCL 1.1 only supports Intel HD Graphics 4000 and 2500 and it only supports OpenCL on the 2nd Generation CPU but not on the GPU.

5

Hopefully this will cover everything:

  • OpenCL is a standard for running massively parallel computations across many processors simultaneously. This does not necessarily need to be graphics processors; OpenCL workloads can be run on traditional CPUs.
  • Because graphics processors contain many small compute cores, usually optimized for floating point math, they lend themselves well to some types of massively parallel computations. Typically the math being done is rendering 3D graphics, but it could be generic computations. This concept in general is called GPGPU. Most modern GPUs support OpenCL as a means of permitting GPGPU to occur.
  • Intel HD Graphics 3000 supports OpenCL 1.1. It contains 12 execution units. Compare this with discrete graphics cards which, at the high end, can have hundreds of execution units.

Hopefully it will become apparent that, while you can run OpenCL jobs on the HD 3000, if you have a lot of such work to do, you would do better to buy a high-end graphics card to run it on, as you would get much better parallelization (and thus performance).