Si vous apprenez le machine learning ou le deep learning, vous utilisez peut-être Google Colab gratuitement. Mais vous vous demandez peut-être si la version gratuite est adéquate.
Si vous pouvez vous offrir une bonne carte graphique Nvidia (avec un nombre décent de cœurs CUDA), alors vous pouvez facilement utiliser votre carte graphique pour ce type de travail intensif.
Beaucoup de développeurs utilisent Linux pour cela. Mais je n'aime pas Linux en tant que système d'exploitation de bureau (ne vous offusquez pas, c'est ma préférence personnelle. Et oui, Linux est le meilleur pour tout ce qui concerne les serveurs).
De plus, si vous possédez la dernière GPU Nvidia, vous êtes probablement déjà familier avec les tracas concernant le pilote graphique, etc.
Pour toutes ces raisons, je pensais essayer quelque chose de différent : utiliser le nouveau système d'exploitation Windows 11 pour exploiter les cœurs CUDA de ma carte graphique.
J'ai suivi beaucoup de vidéos mais je n'ai pas réussi à l'implémenter après plusieurs tentatives, malheureusement. Il y avait un problème de compatibilité entre la dernière version de PyTorch et le noyau Windows 11 dans CUDA. Cependant, après beaucoup de recherches, j'ai découvert que WSL2 devrait fonctionner parfaitement.
Après avoir essayé pendant plus de quelques jours, j'ai réussi à configurer tout ce qui est nécessaire et je peux utiliser les cœurs CUDA de ma carte graphique sur ma machine Windows ! Une chose intéressante est que, dans ce processus, vous n'avez pas besoin de télécharger ou d'utiliser Microsoft Visual Studio 2022 et de télécharger d'énormes fichiers de 30/35 Go juste pour installer les compilateurs recommandés, etc.
Pour cette raison, j'ai écrit un manuel complet sur mon GitHub (voici le dépôt : CUDA-WSL2-Ubuntu, et voici le site web : fahimfba.github.io/CUDA-WSL2-Ubuntu).
J'écris également le même manuel ici. Alors, c'est parti ! 🎉
Spécifications de mon ordinateur
Pour ce guide, j'ai utilisé ma station de travail de bureau. Si vous êtes également intéressé par les spécifications actuelles que j'ai utilisées pour cette tâche, les voici :
- Processeur : Ryzen 5 3500X 6 cœurs et 6 threads
- RAM : 32 Go DDR4 3200 MHz (16 Go + 8 Go + 8 Go)
- GPU : Zotac Nvidia GeForce RTX 3050 8 Go GDDR6
- Carte mère : Gigabyte B450M Aorus Elite
- Stockage : Gigabyte 240 Go SSD SATA
- Moniteur : MSI Optix G24 Gaming Curved 75Hz
J'utiliserai Windows 11 Pro (Version 22H2) et WSL2 (bien sûr !).
Étape 1 : Assurez-vous d'avoir une connexion Internet et une alimentation électrique stables
Ce processus peut prendre beaucoup de temps. Assurez-vous donc d'être correctement connecté à Internet et d'avoir une alimentation électrique stable. Pour moi, cela a pris presque 7 heures au total. Vous devrez également télécharger certains packages assez volumineux en cours de route.
Assurez-vous également d'avoir installé le dernier pilote Nvidia après avoir téléchargé le pilote officiel depuis le site officiel de Nvidia. Assurez-vous d'avoir installé toutes les mises à jour de votre Windows 11.
mise à jour de Windows
Étape 2 : Télécharger la dernière version de PowerShell
J'utiliserai la dernière version de PowerShell. Vous pouvez la télécharger depuis le Microsoft Store, mais je la téléchargerai depuis le site officiel car le store peut créer des problèmes plus tard.
Allez sur le site officiel. Cela vous redirige normalement vers la dernière version de PowerShell disponible à ce moment-là. Pour moi, la dernière version est 7.3 (24 mai 2023). Pour vous, cela peut être une version mise à jour. Ne vous inquiétez pas pour cela. Téléchargez simplement la dernière version stable.
- Cliquez sur le bouton Download PowerShell.
Bouton de téléchargement de PowerShell
- Trouvez la dernière version de PowerShell pour
win-x64.msi. Téléchargez celle-ci.
fichier msi de la dernière version de PowerShell
- Le processus d'installation est assez simple. Mais je vais vous guider tout au long du processus. Double-cliquez sur le fichier téléchargé. Ensuite, cliquez sur
Suivant.
logiciel msi
- Gardez tout tel quel et cliquez sur
Suivant.
Étape suivante
- Je préfère toujours garder tout tel quel et cliquer simplement sur
Suivant.
Étape suivante
- Je préfère toujours garder tout tel quel et cliquer simplement sur
Suivant.
Étape suivante
- Cliquez sur
Installer.
Installer
- Maintenant, cliquez sur
Terminer.
Terminer
Étape 3 : Vérifiez votre terminal Windows
J'aime vraiment le terminal Windows, car je peux simplement basculer vers n'importe quel autre système d'exploitation WSL (Ubuntu, Kali, Git Bash, etc.) quand je veux. Mais avant de continuer, je dois m'assurer que mon terminal Windows actuel est à jour.
- Ouvrez le Microsoft Store et recherchez
Windows Terminal.
Terminal Windows sur Microsoft Store
Cliquez sur
Mettre à joursi une mise à jour est nécessaire.Assurez-vous que vous êtes déjà sur la dernière version mise à jour du terminal Windows.
Maintenant, ouvrez le terminal Windows, car nous devons d'abord changer certains paramètres. Cliquez sur
Ouvrir les paramètres.
Personnalisation des paramètres du terminal Windows
- Si vous ne voyez pas l'invite
Ouvrir les paramètres, cliquez simplement sur la flèche déroulante, puis surParamètres.
Paramètres
- Dans
Démarrage, assurez-vous que le profil par défaut est défini surPowerShell(le nouveau PowerShell que nous avons installé à l'étape 2). L'application de terminal par défaut doit être définie surTerminal Windows.
Configuration de démarrage par défaut
- Ensuite, cliquez sur
Enregistreret quittez le terminal.
Enregistrer
Étape 4 : Virtualisation matérielle
Pour utiliser WSL, nous devons nous assurer que la virtualisation de notre CPU est activée. Vous pouvez vérifier l'état via le gestionnaire de tâches. Si elle est désactivée, assurez-vous d'activer la virtualisation via le BIOS.
Vous trouverez beaucoup de vidéos YouTube à ce sujet, mais assurez-vous de suivre celle qui correspond à la marque et au modèle de votre carte mère.
Virtualisation
Étape 5 : Installer WSL et Ubuntu LTS
Maintenant, nous devons installer WSL2 et Ubuntu LTS.
- Ouvrez le terminal Windows en tant qu'administrateur.
Ouvrir le terminal en tant qu'administrateur
- Pour installer WSL, utilisez la commande
wsl --install.
Installation de VMP
- Ensuite, il installera automatiquement la dernière version LTS d'Ubuntu.
Installation d'Ubuntu
- Après la fin des tâches, il vous demandera de redémarrer votre PC. Enregistrez votre travail et redémarrez simplement votre ordinateur.
Redémarrer le PC
- Après avoir redémarré le PC, il ouvrira automatiquement le terminal et vous demandera le nom d'utilisateur et le mot de passe pour votre système d'exploitation Linux.
Après avoir redémarré le PC
- Donnez le nom d'utilisateur et le mot de passe. Assurez-vous d'utiliser le même mot de passe dans le champ Retaper le mot de passe !
nom d'utilisateur et mot de passe
- Après un certain temps, il installera les composants nécessaires.
Ubuntu complet
- Maintenant, assurez-vous que WSL2 devient le WSL par défaut dans ce terminal. Appliquez la commande
wsl --set-default-version 2.
WSL 2 par défaut
- Si vous souhaitez vérifier l'état des systèmes d'exploitation WSL (combien de systèmes d'exploitation sont disponibles, combien sont en cours d'exécution ou arrêtés), utilisez la commande
wsl --list --verbose.
État des systèmes d'exploitation
Ici, il m'indique que j'ai Ubuntu installé sur ma version WSL 2 et qu'il est actuellement arrêté.
- Cependant, après avoir travaillé sur un système d'exploitation WSL, si vous souhaitez l'éteindre, vous pouvez utiliser la commande
wsl -t nom_distro. Pour moi, c'est Ubuntu, donc j'ai utiliséwsl -t Ubuntu.treprésente la commande de terminaison ici.
Commande de terminaison
- Si vous avez plusieurs systèmes d'exploitation dans WSL et que vous souhaitez exécuter une distribution spécifique, utilisez la commande
wsl --distribution nom_distribution. Par exemple, si je veux exécuter spécifiquement Ubuntu, la commande seraitwsl --distribution Ubuntu. Si vous n'avez qu'une seule distribution, vous n'avez pas nécessairement besoin de vous en soucier.
exécuter une distribution spécifique
- Vous pouvez simplement utiliser
exitpour quitter une distribution depuis le terminal. Cela n'éteint pas nécessairement la distribution. Vous pouvez utiliser spécifiquement la commande de terminaison pour cela. Mais voici quelques commandes couramment utilisées.
commande couramment utilisée
- Après avoir installé une distribution, vous pourrez également la voir et y accéder en utilisant le menu déroulant du terminal Windows.
le menu déroulant pour les autres distributions
Étape 6 : Configurer Ubuntu LTS
Nous devons maintenant mettre à jour et installer quelques applications.
- Ouvrez Ubuntu en utilisant n'importe quelle méthode dans le terminal Windows. Vous pouvez évidemment utiliser l'application dédiée Ubuntu. Mais je préfère toujours le terminal car je peux utiliser plusieurs distributions différentes et applications en ligne de commande ici.
démarrer Ubuntu
- Mettez à jour le système en utilisant la commande
sudo apt update.
mise à jour
Si vous obtenez des erreurs lors de la mise à jour/mise à niveau indiquant qu'il ne peut pas atteindre le serveur, changez le serveur de noms avec la commande
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null.Après la mise à jour, mettez à niveau le système en utilisant
sudo apt upgrade.
Mise à niveau
Mise à niveau du système
Vous pouvez effacer le terminal en utilisant la commande clear.
- CUDA fonctionne avec C. Nous devons donc installer le compilateur gcc en premier. Utilisez la commande
sudo apt install gcc --fix-missing.
gcc
installation de gcc
fin de l'installation
Étape 7 : Installer CUDA
Il est maintenant temps d'installer CUDA depuis le site officiel de Nvidia.
Assurez-vous de sélectionner les éléments suivants :
- Système d'exploitation : Linux
- Architecture : x86_64
- Distribution : WSL-Ubuntu
- Version : 2.0
- Type d'installateur : deb(local)
Nvidia - CUDA
Cela fournira les commandes nécessaires.
commandes CUDA
Votre tâche consiste maintenant à appliquer chaque commande en série dans le terminal Ubuntu WSL. Assurez-vous d'utiliser la première commande deux fois. Cela résout normalement le problème de keyring plus tard.
Gardez également à l'esprit que ces commandes peuvent changer plus tard. Suivez donc toujours le site officiel. Pour ce guide, j'utiliserai la commande exacte que j'ai utilisée pour configurer CUDA sur ma machine.
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
1ère commande
J'ai utilisé la même commande à nouveau après avoir terminé les transactions précédentes.
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
1ère commande
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
2ème commande
wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda-repo-wsl-ubuntu-12-1-local_12.1.1-1_amd64.deb
3ème commande
Cela prend normalement beaucoup de temps car il télécharge un gros fichier (taille de fichier supérieure à 2 Go).
gros fichier
sudo dpkg -i cuda-repo-wsl-ubuntu-12-1-local_12.1.1-1_amd64.deb
4ème commande
sudo cp /var/cuda-repo-wsl-ubuntu-12-1-local/cuda-*-keyring.gpg /usr/share/keyrings/
5ème commande
- Ensuite, mettez à jour le système en utilisant
sudo apt-get update.
mise à jour du système
mise à jour
sudo apt-get -y install cuda
installation de CUDA
fin de l'installation de CUDA
Étape 8 : Post-installation
Le guide d'installation officiel de CUDA de Nvidia nous indique d'ajouter export PATH=/usr/local/cuda-12.1/bin${PATH:+:${PATH}} à la variable PATH.
chemin
J'ai changé la version de CUDA cuda-12.1 selon la version de CUDA installée. Assurez-vous de faire de même pour votre version mise à jour de CUDA.
Faites ce qui suit pour cela :
- Ouvrez Ubuntu dans le terminal Windows.
- Allez dans le répertoire racine en utilisant
cd ~. Ensuite, ouvrez lebashrcdans nano en utilisantnano .bashrc
racine
- Allez à la fin du fichier et copiez-collez le chemin là. Pour moi, le chemin est
export PATH=/usr/local/cuda-12.1/bin${PATH:+:${PATH}}.
chemin
Ensuite, utilisez Ctrl + X pour fermer. Assurez-vous d'utiliser Y pour enregistrer dans le même fichier.
- Pour appliquer les changements, utilisez
source ~/.bashrc. Vous pouvez vérifier le chemin en utilisantecho $PATH.
vérification du chemin
Étape 9 : Nvidia CUDA Toolkit
Installez le Nvidia Cuda Toolkit en utilisant sudo apt install nvidia-cuda-toolkit.
toolkit 1
toolkit 2
Vous pouvez vérifier les versions du pilote et de CUDA en utilisant nvidia-smi.
smi
Assurez-vous également de vérifier si le pilote du compilateur Nvidia Cuda a été installé ou non en utilisant nvcc -V.
nvcc
Étape 9 : Confirmez que Python est installé
Maintenant, assurez-vous que Python 3 est installé sur votre système. Vous pouvez vérifier la version en utilisant python3 --version. Si cela indique que "python3 est introuvable" ou quelque chose de similaire, installez Python.
Installez PIP en utilisant sudo apt-get install python3-pip.
installation de pip
Étape 10 : Installer PyTorch
Pour installer PyTorch, allez sur le site officiel de PyTorch. Ensuite, assurez-vous de sélectionner les sections pertinentes. Après cela, il vous fournira une commande. Vous devez utiliser la commande dans votre terminal Ubuntu.
Pour moi, les sélections étaient :
- Version de PyTorch : Stable (2.0.1) - Assurez-vous de toujours sélectionner la dernière version stable
- Votre OS : Linux
- Package : Pip
- Langage : Python
- Plateforme informatique : CUDA 11.8 - Assurez-vous de sélectionner la dernière version disponible de CUDA
Après cela, j'ai obtenu la commande pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118.
commande PyTorch
J'ai simplement utilisé cette commande exacte dans mon terminal Ubuntu.
commande PyTorch
Il télécharge également un gros fichier qui peut prendre beaucoup de temps si vous avez une connexion Internet plus lente comme moi !
téléchargement de PyTorch
Étape 11 : Disponibilité de CUDA
Vous pouvez vérifier directement si CUDA a été installé ou non en exécutant deux lignes de code Python dans le terminal.
- Exécutez Python dans le terminal en utilisant
python3. - Importez torch en utilisant
import torch. - Vérifiez la disponibilité de CUDA en utilisant
torch.cuda.is_available().
Si cela retourne True, alors vous avez réussi à installer CUDA sur votre système !
cuda oui
Étape 12 : Paramètres du développeur Nvidia
Vous devez activer les paramètres du développeur Nvidia pour utiliser CUDA via WSL. Suivez simplement ce processus :
- Ouvrez le Panneau de configuration Nvidia.
panneau de configuration Nvidia
- Cliquez sur "Accepter et continuer".
accepter
- Dans le Panneau de configuration Nvidia, cliquez sur Bureau > Activer les paramètres du développeur. Si "Activer les paramètres du développeur" n'a pas de coche, cliquez dessus pour activer cette fonctionnalité.
pas de coche
coche
- La section Développeur sera visible. Cliquez sur Gérer les compteurs de performance du GPU.
compteurs GPU
- Cochez le bouton radio sur "Autoriser l'accès aux compteurs de performance du GPU à tous les utilisateurs".
coche
- Cliquez sur "Appliquer" et "Oui" pour approuver les changements de manière permanente.
approuver les changements
- À la fin, cela devrait ressembler à ceci.
final
- Vous pouvez à nouveau vérifier la disponibilité de CUDA comme précédemment.
disponibilité de CUDA
Étape 12 : Installer Jupyter Notebook
Je préfère généralement Jupyter Notebook. Vous pouvez l'installer de diverses manières, comme pip install notebook.
notebook 1
notebook 2
Mais je préfère la commande pip install jupyter notebook.
jupyter notebook
Pour ouvrir un Jupyter Notebook, vous pouvez simplement utiliser jupyter notebook dans le terminal.
notebook cli
Le notebook s'ouvrira instantanément et vous pourrez utiliser l'URL donnée pour l'ouvrir dans votre navigateur web :
ouvrir le notebook dans le navigateur
Étape 13 : Exécuter quelques tests
J'ai exécuté deux codes pour vérifier les performances de mon CUDA.
- Ouvrez un script Python3 dans le notebook.
ouvrir le script
- J'ai utilisé le code suivant pour vérifier s'il utilise mon CPU ou CUDA de mon GPU :
import torch
if torch.cuda.is_available():
device = torch.device("cuda")
else:
device = torch.device("cpu")
print("using", device, "device")
cuda
- Pour la comparaison de performance entre mon CPU et mon GPU (CUDA), j'ai utilisé le code suivant :
import time
matrix_size = 32*512
x = torch.randn(matrix_size, matrix_size)
y = torch.randn(matrix_size, matrix_size)
print("************* VITESSE CPU *******************")
start = time.time()
result = torch.matmul(x, y)
print(time.time() - start)
print("vérifier l'appareil:", result.device)
x_gpu = x.to(device)
y_gpu = y.to(device)
torch.cuda.synchronize()
for i in range(3):
print("************* VITESSE GPU *******************")
start = time.time()
result_gpu = torch.matmul(x_gpu, y_gpu)
torch.cuda.synchronize()
print(time.time() - start)
print("vérifier l'appareil:", result_gpu.device)
CPU vs GPU
J'ai également fait des comparaisons côte à côte entre Google Colab et mon ordinateur. Vous pouvez les vérifier également.
| Essai | Google Colab | Mon ordinateur |
| 1 | Google Colab | Mon PC |
| 2 | Google Colab | Mon PC |
Le résultat indique déjà que mon PC fonctionne mieux que Google Colab.
Étape 14 : Supprimer le fichier CUDA Deb
Si vous pensez ne plus avoir besoin du fichier deb CUDA, vous pouvez le supprimer en utilisant la commande suivante :
rm filename
Pour moi, c'était ceci :
rm cuda-repo-wsl-ubuntu-12-1-local_12.1.1-1_amd64.deb
Cela ne supprime pas CUDA de votre système. Cela supprime simplement le fichier deb de votre système.
supprimer deb
Conclusion
J'espère que vous avez réussi à installer CUDA sur votre système Windows 11 en utilisant WSL2. Si vous avez des questions, n'hésitez pas à me contacter via Twitter ou LinkedIn.
Assurez-vous également de me suivre sur GitHub et de mettre une étoile (🔊) au dépôt !
Vous pouvez également vous abonner à ma chaîne YouTube pour plus de contenu vidéo utile.
Si vous êtes intéressé, vous pouvez également consulter mon site web : https://fahimbinamin.com/
Merci d'avoir lu l'article entier jusqu'à présent. Passez une excellente journée ! 😊
Image de couverture : Photo de Arseny Togulev sur Unsplash