Freigeben über


MpiStep Klasse

Erstellt einen Azure ML-Pipelineschritt zum Ausführen eines MPI-Auftrags.

Ein Beispiel für die Verwendung von MpiStep finden Sie im Notebook https://aka.ms/pl-style-trans.

Erstellen Sie einen Azure ML-Pipelineschritt, um einen MPI-Auftrag auszuführen.

VERALTET. Verwenden Sie stattdessen CommandStep. Ein Beispiel finden Sie unter Ausführen von verteiltem Training in Pipelines mit CommandStep.

Vererbung

Konstruktor

MpiStep(name=None, source_directory=None, script_name=None, arguments=None, compute_target=None, node_count=None, process_count_per_node=None, inputs=None, outputs=None, allow_reuse=True, version=None, hash_paths=None, **kwargs)

Parameter

Name Beschreibung
name
str

[Erforderlich] Der Name des Moduls.

Standardwert: None
source_directory
str

[Erforderlich] Ein Ordner, der Python-Skripts, die Conda-Umgebung und andere Ressourcen enthält, die im Schritt verwendet werden.

Standardwert: None
script_name
str

[Erforderlich] Der Name eines Python-Skripts mit Bezug zu source_directory.

Standardwert: None
arguments

[Erforderlich] Eine Liste der Befehlszeilenargumente.

Standardwert: None
compute_target

[Erforderlich] Das zu verwendende Computeziel.

Standardwert: None
node_count
int

[Erforderlich] Die Anzahl der Knoten am Computeziel, die für das Training verwendet werden. Wenn der Wert größer als 1 ist, wird ein verteilter MPI-Auftrag ausgeführt. Für verteilte Aufträge wird nur das AmlCompute-Computeziel unterstützt. PipelineParameter-Werte werden unterstützt.

Standardwert: None
process_count_per_node
int

[Erforderlich] Die Anzahl von Prozessen pro Knoten. Wenn der Wert größer als 1 ist, wird ein verteilter MPI-Auftrag ausgeführt. Für verteilte Aufträge wird nur das AmlCompute-Computeziel unterstützt. PipelineParameter-Werte werden unterstützt.

Standardwert: None
inputs

Eine Liste mit Eingabeportbindungen.

Standardwert: None
outputs

Eine Liste mit Ausgabeportbindungen.

Standardwert: None
params
Erforderlich

Ein Wörterbuch mit Name/Wert-Paaren, die als Umgebungsvariablen mit „AML_PARAMETER_“ registriert sind.

allow_reuse

Gibt an, ob bei dem Schritt vorherige Ergebnisse wiederverwendet werden sollen, wenn er mit den gleichen Einstellungen erneut ausgeführt wird. Die Wiederverwendung ist standardmäßig aktiviert. Wenn der Schrittinhalt (Skripts/Abhängigkeiten) sowie die Eingaben und Parameter unverändert bleiben, wird die Ausgabe der vorherigen Ausführung dieses Schritts wiederverwendet. Wenn Sie den Schritt wiederverwenden, anstatt den Auftrag zum Berechnen zu übermitteln, werden die Ergebnisse der vorherigen Ausführung sofort für alle nachfolgenden Schritte verfügbar gemacht. Wenn Sie Azure Machine Learning-Datasets als Eingaben verwenden, hängt die Wiederverwendung nicht davon ab, ob sich die zugrunde liegenden Daten geändert haben, sondern davon, ob sich die Definition des Datasets geändert hat.

Standardwert: True
version
str

Ein optionales Versionstag, um eine Änderung der Funktionalität für das Modul zu kennzeichnen.

Standardwert: None
hash_paths

VERALTET: nicht mehr erforderlich.

Eine Liste der Pfade, die bei der Überprüfung auf Änderungen am Schrittinhalt gehasht werden sollen. Wenn keine Änderungen erkannt werden, verwendet die Pipeline den Schrittinhalt einer vorherigen Ausführung erneut. Für Inhalte von source_directory werden standardmäßig Hashwerte erstellt, mit Ausnahme der in „.amlignore“ und „.gitignore“ aufgeführten Dateien.

Standardwert: None
use_gpu
Erforderlich

Gibt an, ob die Umgebung, in der das Experiment ausgeführt werden soll, GPUs unterstützen soll. TRUE gibt an, dass ein GPU-basiertes Docker-Standardimage in der Umgebung verwendet wird. Bei FALSE wird ein CPU-basiertes Image verwendet. Docker-Standardimages (CPU oder GPU) werden nur verwendet, wenn der custom_docker_image-Parameter nicht festgelegt ist. Diese Einstellung wird nur bei Docker-fähigen Computezielen verwendet.

use_docker
Erforderlich

Gibt an, ob die Umgebung, in der das Experiment ausgeführt werden soll, Docker-basiert sein soll.

custom_docker_image
Erforderlich
str

Der Name des Docker-Images, mit dem das für das Training zu verwendende Image erstellt wird. Wenn diese Einstellung nicht festgelegt ist, wird als Basisimage ein CPU-basiertes Standardimage verwendet.

image_registry_details
Erforderlich

Die Details der Docker-Imageregistrierung

user_managed
Erforderlich

Gibt an, ob Azure Machine Learning eine vorhandene Python-Umgebung wiederverwendet. FALSE bedeutet, dass Azure Machine Learning eine Python-Umgebung basierend auf der Spezifikation der Conda-Abhängigkeiten erstellt.

conda_packages
Erforderlich

Eine Zeichenfolgeliste, die Conda-Pakete darstellen, die der Python-Umgebung hinzugefügt werden sollen.

pip_packages
Erforderlich

Eine Zeichenfolgeliste, die pip-Pakete darstellen, die der Python-Umgebung hinzugefügt werden sollen.

pip_requirements_file_path
Erforderlich
str

Der relative Pfad zur Textdatei mit den pip-Anforderungen. Der Parameter kann in Kombination mit dem Parameter pip_packages angegeben werden.

environment_definition
Erforderlich

Die EnvironmentDefinition für das Experiment. Sie enthält PythonSection, DockerSection und Umgebungsvariablen. Jede Umgebungsoption, die nicht direkt über andere Parameter für die Erstellung des MpiStep verfügbar gemacht wird, kann mit dem environment_definition-Parameter festgelegt werden. Wenn dieser Parameter angegeben wird, hat er Vorrang vor anderen umgebungsbezogenen Parametern wie use_gpu, custom_docker_image, conda_packages oder pip_packages. Für diese ungültigen Kombinationen werden Fehler gemeldet.

name
Erforderlich
str

[Erforderlich] Der Name des Moduls.

source_directory
Erforderlich
str

[Erforderlich] Ein Ordner, der Python-Skripts, die Conda-Umgebung und andere Ressourcen enthält, die im Schritt verwendet werden.

script_name
Erforderlich
str

[Erforderlich] Der Name eines Python-Skripts mit Bezug zu source_directory.

arguments
Erforderlich

[Erforderlich] Eine Liste der Befehlszeilenargumente.

compute_target
Erforderlich
<xref:azureml.core.compute.AmlComputeCompute>, str

[Erforderlich] Das zu verwendende Computeziel.

node_count
Erforderlich
int

[Erforderlich] Anzahl der Knoten im Computeziel, das für das Training verwendet wird. Wenn größer als 1, wird der verteilte mpi-Auftrag ausgeführt. Für verteilte Aufträge wird nur das AmlCompute-Computeziel unterstützt. PipelineParameter-Werte werden unterstützt.

process_count_per_node
Erforderlich
int

[Erforderlich] Anzahl der Prozesse pro Knoten. Wenn größer als 1, wird der verteilte mpi-Auftrag ausgeführt. Für verteilte Aufträge wird nur das AmlCompute-Computeziel unterstützt. PipelineParameter-Werte werden unterstützt.

inputs
Erforderlich

Eine Liste mit Eingabeportbindungen.

outputs
Erforderlich

Eine Liste mit Ausgabeportbindungen.

params
Erforderlich

Ein Wörterbuch von Name-Wert-Paaren, die als Umgebungsvariablen mit ">>AML_PARAMETER_<<" registriert sind.

allow_reuse
Erforderlich

Gibt an, ob der Schritt frühere Ergebnisse wiederverwenden soll, wenn die ausführung mit denselben Parametern unverändert bleibt, die Ausgabe aus der vorherigen Ausführung dieses Schritts wird wiederverwendet. Wenn Sie den Schritt wiederverwenden, anstatt den Auftrag zum Berechnen zu übermitteln, werden die Ergebnisse der vorherigen Ausführung sofort für alle nachfolgenden Schritte verfügbar gemacht. Wenn Sie Azure Machine Learning-Datasets als Eingaben verwenden, hängt die Wiederverwendung nicht davon ab, ob sich die zugrunde liegenden Daten geändert haben, sondern davon, ob sich die Definition des Datasets geändert hat.

version
Erforderlich
str

Optionales Versionstag, um eine Änderung der Funktionalität für das Modul anzugeben

hash_paths
Erforderlich

VERALTET: nicht mehr erforderlich.

Eine Liste der Pfade, die bei der Überprüfung auf Änderungen am Schrittinhalt gehasht werden sollen. Wenn keine Änderungen erkannt werden, verwendet die Pipeline den Schrittinhalt einer vorherigen Ausführung erneut. Für Inhalte von source_directory werden standardmäßig Hashwerte erstellt, mit Ausnahme der in „.amlignore“ und „.gitignore“ aufgeführten Dateien.

use_gpu
Erforderlich

Gibt an, ob die Umgebung, in der das Experiment ausgeführt werden soll, GPUs unterstützen soll. TRUE gibt an, dass ein GPU-basiertes Docker-Standardimage in der Umgebung verwendet wird. Bei FALSE wird ein CPU-basiertes Image verwendet. Docker-Standardimages (CPU oder GPU) werden nur verwendet, wenn der custom_docker_image-Parameter nicht festgelegt ist. Diese Einstellung wird nur bei Docker-fähigen Computezielen verwendet.

use_docker
Erforderlich

Gibt an, ob die Umgebung, in der das Experiment ausgeführt werden soll, Docker-basiert sein soll. custom_docker_image (str): Der Name des Docker-Images, aus dem das für den MPI-Auftrag zu verwendende Image erstellt wird. Wenn diese Einstellung nicht festgelegt ist, wird als Basisimage ein CPU-basiertes Standardimage verwendet.

custom_docker_image
Erforderlich
str

Der Name des Docker-Images, mit dem das für das Training zu verwendende Image erstellt wird. Wenn diese Einstellung nicht festgelegt ist, wird als Basisimage ein CPU-basiertes Standardimage verwendet.

image_registry_details
Erforderlich

Die Details der Docker-Imageregistrierung

user_managed
Erforderlich

Gibt an, ob Azure Machine Learning eine vorhandene Python-Umgebung wiederverwendet. FALSE bedeutet, dass Azure Machine Learning eine Python-Umgebung basierend auf der Spezifikation der Conda-Abhängigkeiten erstellt.

conda_packages
Erforderlich

Eine Zeichenfolgeliste, die Conda-Pakete darstellen, die der Python-Umgebung hinzugefügt werden sollen.

pip_packages
Erforderlich

Eine Zeichenfolgeliste, die pip-Pakete darstellen, die der Python-Umgebung hinzugefügt werden sollen.

pip_requirements_file_path
Erforderlich
str

Der relative Pfad zur Textdatei mit den pip-Anforderungen. Der Parameter kann in Kombination mit dem Parameter pip_packages angegeben werden.

environment_definition
Erforderlich

Die EnvironmentDefinition für das Experiment. Sie enthält PythonSection, DockerSection und Umgebungsvariablen. Jede Umgebungsoption, die nicht direkt über andere Parameter für die Erstellung des MpiStep verfügbar gemacht wird, kann mit dem environment_definition-Parameter festgelegt werden. Wenn dieser Parameter angegeben wird, hat er Vorrang vor anderen umgebungsbezogenen Parametern wie use_gpu, custom_docker_image, conda_packages oder pip_packages. Für diese ungültigen Kombinationen werden Fehler gemeldet.