Kann ich eine Standard-CPU für KI nutzen?

  • Beitrag vom 13.09.2019

Deep Learning, Machine Learning und alles was mit KI zu tun hat, benötigen extreme Rechenleistung. Werden Standard-CPUs diesen Anforderungen gerecht?

Allgemein betrachtet umfasst KI) fortgeschrittene Algorithmen, die einer mathematischen Funktion folgen. Ein Algorithmus gibt dem Computer genau vor, wie er eine Aufgabe zu lösen hat. Algorithmen sind die Grundlage künstlicher Intelligenz. Derzeit lässt sich Folgendes festhalten: KI erfordert maschinelles Lernen! Maschinelles Lernen setzt auf Training. Muster und Gesetzmäßigkeiten werden erkannt. Daraus entsteht eine Handlung. Deep Learning geht einen Schritt weiter als Machine Learning. Der zentrale Unterschied? Während das maschinelle Lernen statistische Techniken nutzt, die es Maschinen ermöglichen, sich bei Aufgaben weiter zu verbessern, setzt sich das Deep Learning selbst aus hierarchischen Schichten von Algorithmen zusammen, die darauf ausgelegt sind, sich selbst zu trainieren; Aufgaben zu erledigen. Was allen Ansätzen gemein ist: Sie benötigen Unmengen an Compute-Power.

GPU oder CPU

Grafikprozessoren (GPUs) haben in Vergangenheit eine Rolle dabei gespielt, die algorithmische Verarbeitung weiterzuentwickeln, die bei KI zum Einsatz kommt. Aber Deep Learning (DL) funktioniert mittlerweile auf allgemein gebräuchlichen, CPU-basierten Architekturen.

In der Vergangenheit benötigte das DL-Training auf einer CPU (Central Processing Unit) unangemessen viel Zeit, da es Prozessoren an Hardware- und insbesondere Software-Optimierungen mangelte. Das ist nicht mehr der Fall. Die neueste Generation von skalierbaren Prozessoren, wie exemplarisch Xenon von Intel, hat den Leistungsabstand drastisch verringert. Die skalierbaren Intel Xeon Prozessoren bieten bei der Ausführung von Deep-Learning-Aufgaben in Hinblick auf den Trainingsdurchsatz eine um bis zu 127-mal höhere Performance im Vergleich zur Vorgängergeneration ohne optimierte Software. Außerdem lassen sich diese skalierbaren Prozessoren sehr effizient horizontal skalieren (Scale-Out) und können dadurch beinahe jedes beliebige Deep-Learning-Durchsatzprofil erreichen. Die Möglichkeit zur Nutzung von CPUs löst eine Reihe von Problemen, denen Unternehmen mit ausschließlich GPU-basierter KI gegenüberstehen:

  • Die GPU-Architektur erfordert, dass die Datenpipeline temporär in einen GPU-Datenspeicher hinein- und dann zurückkopiert wird. Das durchbricht den typischen Datenfluss und die Verarbeitungs-Toolkette.
  • Im Vergleich zu CPU-basierten Nodes kann es schwierig sein, die Rechenleistung auf einer großen Anzahl von GPU-basierten Nodes im „Non-Cluster“-Modus zu skalieren und zu verwalten. Dadurch reduziert sich die potenzielle Zeitersparnis beim Training.
  • Es kann Speicherbeschränkungen für Unternehmen geben, die mit dem kleinen Arbeitsspeicher einer GPU (16 oder 32 GB) sehr große Bilder verarbeiten wollen, z. B. im Gesundheitswesen und bei Geoinformationssystemen (GIS).
  • Bei jeglicher Domain-spezifischen Architektur kann es zu Unterauslastung kommen. Bei einer Allzweck-CPU können unbenutzte Nodes für andere Workloads verwendet und/ oder als IaaS vermietet werden.

Immer mehr Unternehmen wie Facebook, deepsense. ai, OpenAI, AWS, EMR, Databricks, Alibaba, Microsoft und Cloudera erkennen die Vorteile von CPUs für das Deep Learning und arbeiten mit Chipherstellern wie Intel zusammen.