Zum Hauptinhalt springen
Nicht kategorisiert

PNY Pro Conseil #01: Benchmark für Deep Learning unter Verwendung von NVIDIA-Cloud-GPUs und TensorFlow (Teil 1)

Von 3. Februar 202016. Januar 2023Keine Kommentare

Veröffentlicht von PNY Pro, 3. Mai 2019

Als Computerbegeisterter vergleiche ich gerne verschiedene Hardwarelösungen miteinander, um ihre relative Leistung bei der Ausführung einer bestimmten Aufgabe zu ermitteln. Dieser Vorgang wird auch als „Benchmarking“ bezeichnet. Die Ergebnisse solcher Vergleichstests gelten allgemein als das beste Instrument, um die Vorzüge konkurrierender Systeme bei einer Kaufentscheidung zu bewerten.

In dieser dreiteiligen Blogreihe werden wir uns damit befassen, wie man ein System aufbaut, wobei der Schwerpunkt auf der Leistungsbewertung von GPUs für das Deep Learning unter Verwendung von Ubuntu 18.04, NVIDIA GPU Cloud (NGC) und TensorFlow liegt.

Die folgenden Artikel werden wie folgt aufgebaut sein:

Teil 1: Einleitung

Teil 2: Überlegungen zur Hardware

Teil 3: Software-Einrichtung

Die meisten Spieler kennen Benchmark-Tools wie 3DMark und Unigene Superposition, während Fachleute auf bewährte Suiten wie SPECviewperf und PassMark zurückgreifen. Was die Bewertungskriterien für Deep Learning betrifft, ist der bekannteste „Maßstab“ das Trainieren eines ResNet-50-Neuralnetzwerks unter Verwendung des ImageNet-Datensatzes, genauer gesagt des ImageNet-2012-Datensatzes für die Bildklassifizierung.

Unternehmen, die sich auf Deep Learning konzentrieren, nutzen diese Kennzahl häufig, um die Rechenleistung zu messen und zu vergleichen. Diese Kennzahl wurde kürzlich in einem Blogbeitrag von NVIDIA vorgestellt, in dem die Leistung verschiedener Deep-Learning-Frameworks verglichen wurde. Weitere Informationen hierzu finden Sie unter: https://developer.nvidia.com/deep-learning-performance-training-inference 

Tipp 12 – NVIDIA

Deep Learning entwickelt sich rasant weiter, weshalb dieser Messwert kein vollständiges Bild der Leistungsfähigkeit von Deep Learning vermittelt. Dennoch ist er nützlich und aussagekräftig, da er uns einen fairen Maßstab für den Vergleich der Ergebnisse in „Bildern pro Sekunde“ bietet.

Ich möchte darauf hinweisen, dass Dr. Kinghorn von Puget Systems, einem Partner von PNY, vor einem Jahr zu diesem Thema geschrieben hat; seine Blogbeiträge sind ein nützlicher Leitfaden für Anfänger und bieten auch fortgeschrittenen Nutzern hilfreiche Tipps. Seine Beiträge sind sehr zu empfehlen. Nehmen Sie sich die Zeit, seinen ursprünglichen Blogbeitrag in fünf Teilen zu lesen:

https://www.pugetsystems.com/labs/hpc/How-To-Setup-NVIDIA-Docker-and-NGC-Registry-on-your-Workstation—Part-1-Introduction-and-Base-System-Setup-1095/

 

Einführung in NGC.

Die Geheimwaffe bei der Erstellung dieses Workflow-Benchmarks ist die NVIDIA GPU Cloud, kurz NGC.

Das NGC ist ein kostenloses Docker-Container-Register, eine Sammlung der besten Software zur Beschleunigung von Data Science, maschinellem Lernen und Analyse. Zu den beliebtesten Frameworks, die auf dem NGC verfügbar sind, gehören TensorFlow, PyTorch, Caffe2 und viele andere.  Sie können das NGC-Register unter folgendem Link aufrufen: https://ngc.nvidia.com/catalog. Eine Registrierung ist nicht erforderlich.

Tipp 12 – NGC

Also, was ist ein Container? Laut Docker.com:

„Ein Container ist eine standardisierte Softwareeinheit, die den Code und alle seine Abhängigkeiten bündelt, damit die Anwendung schnell und zuverlässig in verschiedenen IT-Umgebungen ausgeführt werden kann. Ein Docker-Container-Image ist ein schlankes, eigenständiges und ausführbares Softwarepaket, das alles enthält, was zur Ausführung einer Anwendung erforderlich ist: Code, Laufzeitumgebung, Systemtools, Systembibliotheken und Konfigurationsparameter.“ https://www.docker.com/resources/what-container

Nach dieser Definition ist ein Container eine kontrollierte Softwareumgebung, in der alle Softwarekomponenten so konzipiert sind, dass sie zusammenarbeiten. Durch die Verwendung eines Docker-Containers stellen Sie sicher, dass Ihre Softwareumgebung über alle Tests hinweg konsistent ist und keine Abhängigkeitsfehler zwischen den verschiedenen Bibliotheken auftreten. NGC-Container bieten den zusätzlichen Vorteil, dass sie für NVIDIA-GPUs optimiert, validiert und beschleunigt sind, wodurch sie nahtlos mit NVIDIA-GPUs zusammenarbeiten.

Warum sollten Sie ein Linux-System verwenden? Derzeit läuft NGC nur unter Linux.
Bevor wir uns im nächsten Blogbeitrag mit den Hardware-Aspekten befassen, besuchen Sie doch das NGC-Register und verschaffen Sie sich einen Überblick über die vielfältige Auswahl an verfügbaren Containern. Besuchen Sie anschließend die Startseite von PNY zum Thema künstliche Intelligenz, um mehr darüber zu erfahren, wie NVIDIA-GPUs die Welt verändern.

http://www.pny.com/ai

Tipp 12: PNY