Überprüfen Sie, ob TensorFlow GPU verwendet

Anika Tabassum Era 15 Februar 2024
Überprüfen Sie, ob TensorFlow GPU verwendet

In der Domäne des maschinellen Lernens ist es oft erforderlich, höhere Berechnungen durchzuführen. In dieser Hinsicht kann die Standard-CPU nicht das Sicherungsniveau liefern, das eine GPU bieten kann.

Wenn ein System keine GPU hat, gibt es Plattformen wie Google Colab, Kaggle usw.

Im Allgemeinen verwendet TensorFlow eine CPU, aber die Rechengeschwindigkeit ist fast 20-mal langsamer als die GPU. Wir müssen unsere Arbeit also zeitsparend und mit Mut durchführen.

Unabhängig davon, welches Computersystem Sie verwenden, müssen Sie sicherstellen, dass Sie über ein CUDA-fähiges GPU-System verfügen. Insbesondere benötigen Sie eine GPU in Ihrem System, um TensorFlow damit zusammenzuführen.

Es gibt viele Lösungen, und die akzeptabelste ist die docker container-Methode, die Installationen für CUDA Toolkit, cudNN, GPU-Treiber usw. erfordert. Nvidia liefert hauptsächlich spezialisierte GPUs für maschinelles Lernen; Daher sind die meisten Tutorials Nvidia-orientiert.

Wir werden uns jedoch auf eine Neuheit in diesem Bereich konzentrieren, die nacheinander für die meisten gängigen GPU-Anbieter wie AMD, Nvidia, Intel und Qualcomm funktioniert. Es ist eine Low-Level-API für maschinelles Lernen namens DirectML.

Die API stellt hardwarebeschleunigte primitive Operatoren für maschinelles Lernen bereit. In den folgenden Abschnitten werden wir untersuchen, wie es in der lokalen Anaconda-Umgebung installiert wird und wie es den TensorFlow mit der GPU bindet.

Verwenden Sie DirectML, um TensorFlow für die Verwendung von GPU zu aktivieren

Die Aufgabe ist einfach und erfordert nur wenige Befehlszeilen, um zu funktionieren. Aber um speziell zu erwähnen, dass im Fall von DirectML nur einige spezifische Versionen von TensorFlow und Python funktionieren.

Es wird empfohlen, TensorFlow der Version 1.15.5 und Python 3.6-3.7 zu verwenden.

Zunächst können Sie die Anaconda-Eingabeaufforderung öffnen, um die Befehle zu schreiben, oder die CMD.exe-Eingabeaufforderungsanwendung aus dem Anaconda-Navigator öffnen. Als Nächstes erstellen wir eine Umgebung, um unsere Aufgabe auszuführen, und installieren die erforderlichen Pakete.

Lassen Sie uns die folgenden Befehle überprüfen.

conda create -n tfdml python=3.6
conda activate tfdml
pip install tensorflow-directml

Nach dem Anlegen der tfdml-Umgebung erscheint eine Fortschrittsmeldung und dort wird y eingegeben. Und dann aktivieren und installieren Sie die DirecML.

Später werden wir die Umgebung deaktivieren und den folgenden Befehlen in der Umgebung Basis folgen.

conda deactivate
conda install -c conda-forge jupyterlab
conda install -c conda-forge nb_conda_kernels

Kurz nach deren Installation aktivieren wir wieder die tfdml-Umgebung und schreiben die Befehle wie folgt.

conda activate tfdml
conda install ipykernel
ipython

Wenn wir also ipython ausführen, betreten wir die Python-Shell und prüfen hier, ob das DirectML-Gerät über unsere vorgefertigte GPU erstellt wird. Wenn wir ein True erhalten, verwendet unser TensorFlow jetzt die GPU.

import tensorflow as tf

tf.test.is_gpu_available()

Ausgang:

Verwenden von DirectML, um TensorFlow für die Verwendung von GPU zu aktivieren

Wie zu sehen ist, hat die GPU AMD Radeon(TM) ein DirectML-Gerät darüber, und daher kann TensorFlow die GPU verwenden. Und wenn Sie den GPU-Gerätenamen überprüfen, wird er als DML zurückgegeben.

Überprüfen des GPU-Gerätenamens

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook