Identification des incidents GPU (Linux®, Windows uniquement)
Si vous rencontrez des problèmes de traitement des applications sur vos processeurs graphiques (GPU), vous pouvez activer la consignation prolixe pour vous aider à en identifier le motif. Vous pouvez également générer la trace du traitement des applications à l'aide des utilitaires de trace SDK standard.
- Configuration du système
- Vérifiez que votre système respecte la configuration matérielle et logicielle minimale requise, comme décrit dans la rubrique Configuration système requise pour le processeur graphique (Linux, Windows uniquement).
- Configuration système
- Si vous avez activé le traitement GPU avec la propriété système -Dcom.ibm.gpu.enable , la machine virtuelle Java décharge le traitement uniquement lorsque le temps système nécessaire au déplacement de ce traitement à partir de l'unité centrale est utile. Par exemple, avant de décharger une opération sort,
un tableau doit avoir une taille minimale d'environ 20000 entrées. Une propriété
système est fournie pour valider votre configuration système. Définissez la
propriété système -Dcom.ibm.gpu.enforce sur la
ligne de commande pour imposer le traitement du processeur graphique, quels que soient les paramètres
de seuil. Cette propriété est fournie uniquement pour la validation et ne doit pas
être définie dans des circonstances normales car les performances de l'application pourraient en
être affectées.
Si vous avez activé le compilateur JIT pour décharger les tâches de traitement sur GPU, vous pouvez valider votre configuration système en spécifiant l'option -Xjit:enableGPU={enforce|verbose}. Lorsque cette option est définie, le compilateur JIT ne se base pas sur des heuristiques de performances pour déterminer si une tâche de traitement des données pourrait bénéficier d'un traitement sur le processeur graphique plutôt que sur l'UC. Consultez la sortie système générée par la sous-option prolixe pour confirmer que le compilateur JIT a déplacé le traitement vers le processeur graphique avec succès. Pour plus d'informations, voir Diagnostic des incidents entre le compilateur JIT et un processeur graphique (Linux, Windows uniquement).
- Programmation d'application
- Si vous développez des applications qui utilisent directement le processeur graphique, en spécifiant des classes dans l'interface de programmation des applications CUDA4J, vérifiez attentivement si le code contient des erreurs.
- Si vous avez activé le traitement GPU avec la propriété système -Dcom.ibm.gpu.enable , vous pouvez activer la messagerie prolixe en définissant -Dcom.ibm.gpu.verbose (Linux, Windows uniquement) pour suivre les opérations avec le GPU à un niveau détaillé. Les messages sont consignés dans STDOUT ou peuvent être dirigés vers un fichier en vue d'une analyse plus approfondie.
- Vous pouvez utiliser des fonctions de trace SDK standard pour procéder au suivi du traitement de l'application. Pour plus d'informations, voir Options de trace GPU (Linux, Windows uniquement).
- Pour identifier et résoudre les opérations entre le compilateur JIT et le processeur graphique, voir Diagnostic des incidents entre le compilateur JIT et un processeur graphique (Linux, Windows uniquement).