IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

CUDA Discussion :

Problème avec cudaEventSynchronize()


Sujet :

CUDA

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 28
    Points : 27
    Points
    27
    Par défaut Problème avec cudaEventSynchronize()
    Bonjour,

    Je rencontre depuis hier un problème vraiment très bizarre : je voudrais mesurer le temps d'exécution de mon kernel. J'utilise pour ça ce que nvidia a filé dans sa doc : des cudaEvent. Pour les trois autres kernels exécutés avant celui-ci ça marche nickel. Mais pour celui qui suit, ça plante.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    cudaEvent_t cuStartEvent, cuStopEvent;
    cudaEventCreate(&cuStartEvent);
    cudaEventCreate(&cuStopEvent);
    float fCuElapsedTime = 0.0f;
     
    ...
     
    cudaEventRecord(cuStartEvent, 0);
    SobelVer<<<blocks, threads, sharedMem>>>((uchar4 *) pDeviceRoi, roiWidth, roiWidth, roiHeight);
    cuErr2 = cudaGetLastError(); 
    cudaEventRecord(cuStopEvent, 0);
    cuErr1 = cudaEventSynchronize(cuStopEvent);
    cudaEventElapsedTime(&fCuElapsedTime, cuStartEvent, cuStopEvent);
    fprintf(stderr, "(SobelVer) Elapsed time : %f\n", fCuElapsedTime);
    cudaEventDestroy(cuStartEvent);
    cudaEventDestroy(cuStopEvent);
    cuErr2 situé juste après le kernel renvoie un cuda_success mais le cuErr1 qui récupère la valeur de retour de cudaEventSynchronize me renvoie un cudaErrorLaunchFailure

    J'avoue que je ne comprends pas du tout où y'a un truc qui plante !
    Merci d'avance !

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 49
    Points : 55
    Points
    55
    Par défaut
    Bonjour karin,

    Citation Envoyé par karin.kr1 Voir le message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    cudaEventRecord(cuStartEvent, 0);
    ...
    cudaEventRecord(cuStopEvent, 0);
    cuErr1 = cudaEventSynchronize(cuStopEvent);
    Et si tu ajoutes un
    cudaEventSynchronize(cuStartEvent);
    apres le premier cudaEventRecord et avant le noyau cela renvoie-t-il la meme erreur ?

    Jatukam

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 28
    Points : 27
    Points
    27
    Par défaut
    Désolée d'avoir mis du temps à répondre... En fait, je ne saurais probablement jamais où était l'erreur. Le code que j'ai cité fonctionnait parfaitement quand je l'avais développé à part et m'avais affiché cette erreur à partir du moment où j'avais essayé de l'intégrer dans une bibliothèque d'algos de traitement d'images accélérés via CUDA. En laissant le problème de côté et en développant la bibli, le problème a "disparu".
    Il devait y avoir un souci avant de lancer le kernel en fait, mais les messages d'erreur de CUDA sont impénétrables ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 10h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo