Intel-Logo

Erste Schritte mit Intel®
eine API eine API
Datenanalyse-Bibliothek

Erste Schritte mit Intel® One API One API Data Analytics Library

Intel® oneAPI Data Analytics Library (oneDAL) ist eine Bibliothek, die die Big-Data-Analyse beschleunigt, indem sie hochoptimierte algorithmische Bausteine ​​für alle s bereitstellttagEs der Datenanalyse (Vorverarbeitung, Transformation, Analyse, Modellierung, Validierung und Entscheidungsfindung) in Batch-, Online- und verteilten Berechnungsmodi. Allgemeine Informationen zu oneDAL finden Sie auf der offiziellen Seite von oneDAL.

Bevor Sie beginnen
oneDAL befindet sich in /dal Verzeichnis wo ist das Verzeichnis, in dem das Intel® oneAPI Base Toolkit installiert wurde.
Die aktuelle Version von oneDAL mit SYCL-Unterstützung ist für die 64-Bit-Betriebssysteme Linux* und Windows* verfügbar. Die vorgefertigten oneDAL-Bibliotheken finden Sie in der /dal/ /resist-Verzeichnis.
Um mehr über die Systemanforderungen und die Abhängigkeiten zu erfahren, die zum Erstellen von examples, beziehen Sie sich auf die Systemanforderungen Seite.

End-to-End Bspample
Unten finden Sie einen typischen Nutzungsworkflow für einen oneDAL-Algorithmus auf der GPU. Die Example wird für den Hauptkomponentenanalysealgorithmus (PCA) bereitgestellt.

Die folgenden Schritte zeigen, wie Sie:

  • Lesen Sie die Daten aus CSV file
  • Führen Sie die Trainings- und Inferenzoperationen für PCA aus
  • Greifen Sie auf Zwischenergebnisse zu, die bei den Schulungen erzielt wurdentage
  1. Schließen Sie den folgenden Header ein, der alle oneDAL-Deklarationen verfügbar macht.
    intel Erste Schritte mit oneAPI oneAPI Data Analytics Library – Erste Schritte mit Intel 1
  2. Erstellen Sie eine SYCL*-Warteschlange mit dem gewünschten Geräteselektor. In diesem Fall wird der GPU-Selektor verwendet:
    const auto queue = sycl::queue{ sycl::gpu_selector{} };
  3. Da sich alle oneDAL-Deklarationen im oneapi::dal-Namespace befinden, importieren Sie alle Deklarationen aus dem oneapi-Namespace, um der Kürze halber dal anstelle von oneapi::dal zu verwenden: using namespace oneapi;
  4. Verwenden Sie die CSV-Datenquelle, um die Daten aus der CSV-Datei zu lesen file in eine Tabelle:
    const auto data = dal::read (Warteschlange, dal::csv::data source{“data.csv“});
  5. Erstellen Sie einen PCA-Deskriptor, konfigurieren Sie seine Parameter und führen Sie den Trainingsalgorithmus mit den aus CSV geladenen Daten aus.
    intel Erste Schritte mit oneAPI oneAPI Data Analytics Library – Erste Schritte mit Intel 2
  6. Drucken Sie die gelernten Eigenvektoren:
    intel Erste Schritte mit oneAPI oneAPI Data Analytics Library – Erste Schritte mit Intel 3
  7. Verwenden Sie das trainierte Modell für die Inferenz, um die Dimensionalität der Daten zu reduzieren:
    intel Erste Schritte mit oneAPI oneAPI Data Analytics Library – Erste Schritte mit Intel 4

Erstellen und Ausführen von Bspamples
Führen Sie die folgenden Schritte aus, um ex zu erstellen und auszuführenampDateien, die die grundlegenden Verwendungsszenarien einer DAL mit SYCL-Unterstützung demonstrieren. Gehe zu /dal/ und richten Sie dann eine Umgebung ein, wie im Beispiel gezeigtampsiehe unten:

NOTIZ Alle Inhalte darunter, die mit # beginnen, werden als Kommentar betrachtet und sollten nicht mit dem Code ausgeführt werden.

  1. Richten Sie die erforderliche Umgebung für eine DAL ein (Variablen wie CPATH, LIBRARY_PATH und LD_LIBRARY_PATH):
    • Unter Linux gibt es zwei Möglichkeiten, die erforderliche Umgebung einzurichten: über das Skript vars.sh oder über das Modul files.
    • Einrichten einer DAL-Umgebung über das vars.sh-Skript Führen Sie den folgenden Befehl aus:
    Quelle ./env/vars.sh
    • Einrichten einer DAL-Umgebung über das Modul files
    Initialisieren1. Module: Quelle $MODULESHOME/infit/bash
    NOTIZ Einzelheiten finden Sie in der Dokumentation zu den Umgebungsmodulen.
    Bereitstellen2. Module mit einem Pfad zum Modul files Verzeichnis: Modul
    Verwenden Sie ./modul files
    Führen Sie the3.module aus:
    Modulbelastung dal
    • Führen Sie unter Windows den folgenden Befehl aus:
    /env/vars.bat
  2. Kopieren ./examples/neap/dip bei Bedarf in ein beschreibbares Verzeichnis (da es temporäre filee):
    cp r ./examples/oneapi/dpc ${WRITABLE_DIR}
  3. Richten Sie die Compilerumgebung für den Intel® One API DPC++/C++ Compiler ein. Sehen Erste Schritte mit dem Intel® oneAPI DPC++/C++-Compiler für weitere Einzelheiten.
  4. Erstellen und führen Sie die Ex ausampDateien, die zeigen, wie ein DAL mit SYCL-Unterstützung verwendet wird:
    NOTIZ Sie müssen Schreibrechte für die Ex habenamples-Ordner zum Erstellen von BspampDateien und Ausführungsberechtigungen, um sie auszuführen. Andernfalls müssen Sie ex kopierenamples/oneapi/dpc und examples/oneapi/data-Ordner in das Verzeichnis mit den richtigen Berechtigungen. Diese beiden Ordner müssen relativ zueinander auf derselben Verzeichnisebene gehalten werden.
    • Unter Linux:
    intel Erste Schritte mit oneAPI oneAPI Data Analytics Library – Erste Schritte mit Intel 5• Unter Windows:
    intel Erste Schritte mit oneAPI oneAPI Data Analytics Library – Erste Schritte mit Intel 6
  5. Um alle verfügbaren Parameter des Build-Vorgangs anzuzeigen, geben Sie make unter Linux* oder unmake unter Windows* ein.
    Das resultierende Bspample binaries und log files werden in das Verzeichnis _results geschrieben.
    NOTIZ Du solltest den Ex führenampDateien von Bspamples/oneapi/dpc-Ordner, nicht aus dem _results-Ordner. Die meisten ExampDateien erfordern, dass Daten in ex gespeichert werdenamples/oneapi/data Ordner und um einen relativen Link zu ihm zu haben, der von examples/oneapi/dip-Ordner.
    Sie können herkömmliches C++ ex erstellenampDateien in examples/oneapi/cup-Ordner auf ähnliche Weise.

Kompilieren und erstellen Sie Anwendungen mit pkg-config
Das Tool pkg-config ist ein weit verbreitetes Tool zum Erstellen von Software mit Abhängigkeiten. Intel® eine API-Datenanalysebibliothek bietet files mit pug-config-Metadaten zum Kompilieren und Verknüpfen einer Anwendung mit der Bibliothek.

Richten Sie die Umgebung ein
Um pug-config zu verwenden, erstellen Sie die Bibliothek und richten Sie dann die Umgebung mit vars.sh- oder vars.bat-Skripten ein:

  • Unter Linux: Quelle ./env/vars.sh
  • Unter Windows: /env/vars.bat

Wählen Sie Metadaten aus file
Die Metadaten files, die von einer DAL bereitgestellt werden, decken nur die Hostgerätekonfiguration auf 64-Bit-Linux-, macOS- oder Windows-Betriebssystemen für C++ ab.
Wählen Sie die Metadaten aus file basierend auf einem DAL-Threading-Modus und einer von Ihnen verwendeten Verknüpfungsmethode:

eine DAL-Pug-Konfigurationsmetadaten files

Single-Threaded (ohne Threading) Multithreaded (internes Gewinde)
Statische Verlinkung dal-statischer-sequentieller-Host dal-statischer-Threading-Host
Dynamische Verknüpfung dal-dynamischer-sequentieller-Host dal-dynamischer-Threading-Host

Kompilieren Sie ein Programm mit peg-config
Um ein test.cpp-Programm mit einer DAL und einer Peg-Konfiguration zu kompilieren, geben Sie den Namen der Metadaten der Pug-Konfiguration einer DAL an file als Eingabeparameter. Zum Bspampauf:

  • Unter Linux oder macOS:
    ice test.cpp pug-config –flags –libs dal-dynamic-threading-host
  • Unter Windows:
    für /F „delimbs=“, %i in ('pug-config –flags –libs dal-dynamic-threading-host) führen Sie icl test.cpp %i aus
    AlsampDateicode für svm_two_class_thunder_dense_batch exampDatei mit SYCL-Unterstützung. Führen Sie Folgendes von der ex ausamples/oneapi/cpp-Verzeichnis:
  • Unter Linux oder macOS:
    icc -I source/ source/svm/svm_two_class_thunder_dense_batch.cpp icc test.cpp pkg-config –cflags –libs dal-dynamic-threading-host
  • Unter Windows:
    for /F „delis=“, %i in ('peg-config –flags –libs dal-dynamic-threading-host) do ill -I source/ ill svm_two_class_thunder_dense_batch.cpp %i

Mehr erfahren

Dokumentieren Beschreibung
Entwicklerhandbuch und Referenz Weitere Informationen finden Sie in einem DAL-Entwicklerhandbuch und einer Referenz
detaillierte Informationen über implementierte Algorithmen.
Systemanforderungen Überprüfen Sie die Systemanforderungen, bevor Sie die Intel® One-API installieren
Datenanalyse-Bibliothek.
Versionshinweise Siehe Versionshinweise für Intel® One API Data Analytics
Bibliothek, um mehr über neue Updates in der neuesten Version zu erfahren.
Code S.amples Erfahren Sie, wie Sie eine DAL mit daal4py, einer Python*-API, verwenden.
eine DAL-Spezifikation Erfahren Sie mehr über Anforderungen für Implementierungen einer API
Datenanalyse-Bibliothek.

Hinweise und Haftungsausschlüsse
Für Intel-Technologien ist möglicherweise eine aktivierte Hardware-, Software- oder Dienstaktivierung erforderlich.
Kein Produkt oder keine Komponente kann absolut sicher sein.
Ihre Kosten und Ergebnisse können variieren.

© Intel Corporation. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Andere Namen und Marken können als Eigentum anderer beansprucht werden.
Durch dieses Dokument wird keine Lizenz (weder ausdrücklich noch stillschweigend, durch Rechtsverwirkung oder auf andere Weise) an geistigen Eigentumsrechten gewährt.
Die beschriebenen Produkte können Konstruktionsfehler oder Fehler (sogenannte Errata) enthalten, die dazu führen können, dass das Produkt von den veröffentlichten Spezifikationen abweicht. Aktuelle gekennzeichnete Errata sind auf Anfrage erhältlich.
Intel schließt alle ausdrücklichen und stillschweigenden Gewährleistungen aus, einschließlich, aber nicht beschränkt auf die stillschweigenden Gewährleistungen der Marktgängigkeit, der Eignung für einen bestimmten Zweck und der Nichtverletzung von Rechten Dritter, sowie jegliche Gewährleistung, die sich aus dem Verlauf der Leistung, dem Geschäftsverlauf oder der Verwendung im Handel ergibt.

Intel-Logo

Dokumente / Ressourcen

intel Erste Schritte mit oneAPI oneAPI Data Analytics Library [pdf] Benutzerhandbuch
Erste Schritte mit oneAPI oneAPI Data Analytics Library, Erste Schritte mit oneAPI oneAPI Data Analytics Library, Analytics Library

Verweise

Hinterlasse einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Pflichtfelder sind markiert *