Puis-je exécuter X11 sur le processeur graphique intégré Intel de mon ordinateur portable optimus et déboguer le code CUDA sur le processeur graphique NVIDIA?

Je sais que je peux déboguer CUDA sur Linux en utilisant cuda-gdb sans interface graphique, mais ce n’est pas vraiment pratique. Je sais aussi que l’on peut déboguer CUDA avec l’édition Nsight Eclipse si le serveur X est exécuté sur d’autres GPU. J’ai donc un ordinateur portable double GPU (geforce 525m et Intel 3000) et je me demandais si je pouvais exécuter le serveur X sur une carte Intel alors que mon code CUDA s’exécute sur ma carte nvidia?

Si vous voulez essayer de faire cela sur votre ordinateur portable, vous devez d’abord vous assurer que votre fichier xorg.conf ne fait référence qu’à la carte graphique intégrée Intel.

Ensuite, vous devrez essayer de déterminer si l’ordinateur portable alimente à la fois le processeur graphique intégré Intel et le processeur graphique discret NVIDIA lorsque vous exécutez Linux. Pour ce test, je commencerais par exécuter lspci Si cette commande affiche à la fois les graphiques intel et le GPU NVIDIA, vous pouvez essayer d’installer le toolkit CUDA à ce stade. Assurez-vous de répondre “non” quand il vous demande si vous souhaitez mettre à jour le fichier xorg.conf .

Après cela, ça peut juste fonctionner. Si cela ne fonctionne pas, vous souhaiterez probablement inspecter les options de configuration de votre machine SBIOS pour voir s’il existe un moyen de forcer à la fois les graphiques NVIDIA GPU et Intel.

Si vous êtes en mesure d’obtenir l’affichage hébergé par les graphiques Intel et le kit d’outils CUDA chargé et fonctionnel, vous ne devriez pas rencontrer de problèmes lors du débogage sur ce processeur graphique NVIDIA.

Je réponds parce que je ne peux pas encore poster de commentaires.

Je ne suis pas sûr à ce sujet, mais je pense que ce n’est pas un problème sur Debian. Il y a 2 mois, j’utilisais Debian au lieu d’Ubuntu (CUDA 5.0) et j’étais capable d’utiliser le serveur X et d’utiliser cuda-gdb (je ne suis pas sûr qu’il soit possible de déboguer dans les fonctions du kernel, mais je le pense).

Quand on a changé pour Ubuntu avec CUDA 5.5, je dois lancer Ubuntu en mode texte pour déboguer dans les fonctions du kernel.

Donc, si vous pouvez essayer, je suggère d’essayer avec Debian. 🙂

A mon avis, cette solution ne va pas, mais elle fonctionne sur Ubuntu 16.04 sur le portable ASUS B400V.

  1. Lancez XServer à l’aide de la carte graphique Intel (paramètre Nvidia XServer ou sudo prime-select intel ; vous devez vous déconnecter et vous connecter).
  2. Exécuter la commande sudo prime-select nvidia et pas de déconnexion.
  3. Exécuter la commande sudo tee /proc/acpi/bbswitch <<< ON

Après avoir effectué cette étape, je peux déboguer mon programme CUDA. Avant de redémarrer ou de vous déconnecter, vous devez exécuter la commande sudo prime-select intel .