La mise en œuvre Intel OpenCL utilise-t-elle à la fois le processeur et le processeur graphique?

6

Récemment, j’ai écrit plusieurs versions du même programme (générant Julia Sets - images fractales au format 17200x17200 pixels) pour vérifier les performances de différentes solutions.

J'ai écrit des versions:

  • CPU (pthreads) - 252s / 1 thread, 131s / 2 threads, 114s / 3 threads, 95s / 4 threads
  • CUDA - 2.51s;)
  • OpenCL - 3.39s sur la mise en œuvre du GPU Nvidia, 16.51s sur la mise en œuvre du processeur Intel

Plate-forme d'essai: Intel Core i5 520M, GeForce 330M

Ma question est la suivante: comment expliquer le score du processeur OpenCL? Je m'attendais à un résultat proche de 4 threads sur l'implémentation standard - environ 95 secondes, mais cela a pris beaucoup moins de temps. Pendant que le programme fonctionnait, le processeur était occupé à 390%. Comment est-ce possible?

OpenCL utilise-t-il à la fois mon Core i5 et ma puce Intel HD Graphics intégrée?

Marcin Włodarczyk
la source

Réponses: