Profilbasierte Konfigurationen für KI-/ML-Arbeitslasten

Mit profilbasierten Konfigurationen in Cloud Storage FUSE können Sie einen vordefinierten, optimierten Satz von Features für Caching, Threading und Puffergrößen basierend auf Ihrem Arbeitslasttyp für künstliche Intelligenz oder maschinelles Lernen (KI/ML) anwenden. Mit Profilen können Sie die Cloud Storage FUSE-Konfiguration optimieren und mit weniger Aufwand eine hohe Leistung erzielen.

Wenn Sie ein Profil anwenden möchten, verwenden Sie das Feld profile oder die Option --profile mit einem der folgenden Werte: aiml-training für Trainingsarbeitslasten, aiml-checkpointing für Prüfpunktarbeitslasten oder aiml-serving für Bereitstellungsarbeitslasten.

Hinweise

  • Sie können die Option --profile oder das Feld profile nur während eines Bereitstellungsvorgangs festlegen. Wenn Sie die Option --profile oder das Feld profile aktualisieren müssen, müssen Sie Ihren Cloud Storage FUSE-Bucket neu bereitstellen.

  • Wenn Sie profilbasierte Konfigurationen verwenden, setzt Cloud Storage FUSE die Kapazität und die Gültigkeitsdauer (TTL) des Metadaten-Cache auf unbegrenzt. Das bedeutet, dass Einträge nie aus dem Metadaten-Cache entfernt werden. Wenn Ihre virtuelle Maschine nicht über genügend Arbeitsspeicher verfügt, können Out of Memory (OOM)-Fehler auftreten. Daher empfehlen wir, die Speicherkapazität zu überprüfen, bevor Sie profilbasierte Konfigurationen anwenden. OOM-Fehler treten eher auf Maschinen mit weniger als einem TiB Arbeitsspeicher auf.

  • Wenn ein Cloud Storage FUSE-Parameter auf mehrere Arten konfiguriert ist, gilt die folgende Rangfolge (von der höchsten zur niedrigsten):

    1. Werte, die direkt in einem gcsfuse-Befehl oder einer Cloud Storage FUSE-Konfigurationsdatei festgelegt werden.
    2. Werte, die von einem Profil festgelegt werden, wobei das Profil mit der Option --profile in einem gcsfuse-Befehl oder dem Feld profile in einer Cloud Storage FUSE-Konfigurationsdatei angegeben wird.
    3. Standardwerte, die automatisch angewendet werden, wenn Cloud Storage FUSE einen Hochleistungsmaschinentyp erkennt. Weitere Informationen finden Sie unter Automatisierte Konfigurationswerte für leistungsstarke Maschinentypen.
  • Cloud Storage FUSE-CSI-Volumes in Google Kubernetes Engine-Pods unterstützen das Feld profile und die Option --profile nicht.

  • Das Datei-Caching kann nicht über profilbasierte Konfigurationen aktiviert werden, da für das Datei-Caching Cloud Storage FUSE-Konfigurationsfelder und Cloud Storage FUSE-CLI-Optionen erforderlich sind, die nicht verallgemeinert werden können. Wenn Sie das Datei-Caching für Bereitstellungs-, Trainings- oder Prüfpunkt-Arbeitslasten aktivieren möchten, müssen Sie die Optionen oder Felder für das Datei-Caching explizit konfigurieren.

Profilbasierte Konfigurationen für Trainingsarbeitslasten anwenden

Das trainingsspezifische Profil optimiert die Leistung für Lesevorgänge mit hohem Durchsatz in großen Datasets und verhindert, dass Cloud-GPUs und Cloud TPU-Hardware auf Daten warten müssen.

Wenn Sie das trainingsspezifische Profil anwenden möchten, geben Sie entweder profile: aiml-training mit einer Cloud Storage FUSE-Konfigurationsdatei oder --profile=aiml-training mit der Cloud Storage FUSE-Befehlszeile an. Die folgenden Konfigurationen werden dann angewendet:

   # Create implicit directories locally when accessed:
   - implicit-dirs
   # Disable caching for lookups of files or directories that don't exist:
   - metadata-cache:negative-ttl-secs:0
   # Keep cached metadata (file attributes, types) indefinitely time-wise:
   - metadata-cache:ttl-secs:-1
   # Allow unlimited size for the file attribute (stat) cache:
   - metadata-cache:stat-cache-max-size-mb:-1

Profilbasierte Konfigurationen für Prüfpunkt-Arbeitslasten anwenden

Das Prüfpunkt-spezifische Profil optimiert die Leistung für Schreibvorgänge mit hohem Durchsatz für große Dateien, indem die Zeit zum Speichern von Prüfpunkten mit mehreren Gigabyte drastisch reduziert wird. Dadurch werden Trainingspausen minimiert.

Wenn Sie das Prüfpunkt-spezifische Profil anwenden möchten, geben Sie entweder profile: aiml-checkpointing mit einer Cloud Storage FUSE-Konfigurationsdatei oder --profile=aiml-checkpointing mit der Cloud Storage FUSE-Befehlszeile an. Die folgenden Konfigurationen werden dann angewendet:

  # Create implicit directories locally when accessed:
  - implicit-dirs
  # Disable caching for lookups of files/dirs that don't exist:
  - metadata-cache:negative-ttl-secs:0
  # Keep cached metadata (file attributes, types) indefinitely time-wise:
  - metadata-cache:ttl-secs:-1
  # Allow unlimited size for the file attribute (stat) cache:
  - metadata-cache:stat-cache-max-size-mb:-1
  # Cache the entire file when any part is read sequentially:
  - file-cache:cache-file-for-range-read:true
  # Allow renaming directories with a lot of files in non-HNS buckets.
  - file-system:rename-dir-limit:200000

Profilbasierte Konfigurationen für die Bereitstellung von Arbeitslasten anwenden

Serving optimiert die Leistung für die Bereitstellung von Arbeitslasten durch einen verbesserten Datenzugriff und die Anwendung von Caching-Mechanismen.

Wenn Sie das Bereitstellungsprofil anwenden möchten, geben Sie entweder profile: aiml-serving mit einer Cloud Storage FUSE-Konfigurationsdatei oder --profile=aiml-serving mit der Cloud Storage FUSE-Befehlszeile an. Die folgenden Konfigurationen werden dann angewendet:

  # Create implicit directories locally when accessed:
  - implicit-dirs
  # Disable caching for lookups of files/dirs that don't exist:
  - metadata-cache:negative-ttl-secs:0
  # Keep cached metadata (file attributes, types) indefinitely time-wise:
  - metadata-cache:ttl-secs:-1
  # Allow unlimited size for the file attribute (stat) cache:
  - metadata-cache:stat-cache-max-size-mb:-1
  # Cache the entire file when any part is read sequentially:
  - file-cache:cache-file-for-range-read:true
  # Enable kernel-list-cache to make listing faster as this is a readonly file system hierarchy.
  - file-system:kernel-list-cache-ttl-secs:-1

Nächste Schritte