2010-02-12 13 views
-2

salut je cours cuda programme sur une machine qui a cpu avec quatre cœurs, comment est-il possible de changer le programme cuda c pour utiliser tous les quatre cœurs et tous les gpu disponibles? Je veux dire mon programme fait aussi des choses sur le côté de l'hôte avant de calculer sur GPU '...nvidia cuda en utilisant tous les cœurs de la machine

merci!

+3

vous voudrez peut-être reformuler votre question. Cela n'a pas beaucoup de sens. – Anycorn

Répondre

7

CUDA n'est pas destiné à faire cela. Le but de CUDA est de fournir un accès au GPU pour le traitement parallèle. Il n'utilisera pas vos cœurs de processeur.

partir de la page What is CUDA?:

CUDA est une architecture de traitement parallèle de NVIDIA qui permet une augmentation spectaculaire dans le calcul de la performance en exploitant la puissance du GPU (unité de traitement graphique).

Cela devrait être géré par des techniques plus traditionnelles de multi-threading.

+0

Il suffit de me battre pour que je l'ai supprimé mon poste car il est un duplicata de la vôtre – zebrabox

2

Le code cuda s'exécute uniquement sur GPU. donc si vous voulez un parallélisme sur vos cœurs de processeur, vous devez utiliser des threads tels que Pthreads ou OpenMP.

1

Convertissez votre programme en OpenCL :-)