Configurazioni basate sul profilo per i workload AI/ML

Le configurazioni basate su profilo in Cloud Storage FUSE ti consentono di applicare un insieme predefinito e ottimizzato di funzionalità per la memorizzazione nella cache, il threading e le dimensioni del buffer in base al tipo di workload di intelligenza artificiale o machine learning (AI/ML). I profili ti aiutano a semplificare la configurazione di Cloud Storage FUSE e a ottenere prestazioni elevate con meno sforzo.

Per applicare un profilo, utilizza il campo profile o l'opzione --profile con uno dei seguenti valori: aiml-training per i workload di addestramento, aiml-checkpointing per i workload di checkpoint o aiml-serving per i workload di distribuzione.

Considerazioni

  • Puoi impostare l'opzione --profile o il campo profile solo durante un'operazione di montaggio. Se devi aggiornare l'opzione --profile o il campo profile, devi rimontare il bucket Cloud Storage FUSE.

  • Quando utilizzi configurazioni basate su profili, Cloud Storage FUSE imposta la capacità della cache dei metadati e la durata (TTL) su un valore illimitato, il che significa che le voci non vengono mai rimosse dalla cache dei metadati. Se la macchina virtuale non dispone di memoria sufficiente, potresti riscontrare errori out of memory (OOM). Pertanto, ti consigliamo di esaminare la capacità della memoria prima di applicare le configurazioni basate sui profili. Gli errori OOM hanno maggiori probabilità di verificarsi su macchine con meno di un TiB di memoria.

  • Quando un parametro Cloud Storage FUSE viene configurato in più modi, si applica il seguente ordine di precedenza (dal più alto al più basso):

    1. Valori impostati direttamente in un comando gcsfuse o in un file di configurazione di Cloud Storage FUSE.
    2. Valori impostati da un profilo, in cui il profilo viene specificato utilizzando l'opzione --profile in un comando gcsfuse o il campo profile in un file di configurazione di Cloud Storage FUSE.
    3. Valori predefiniti applicati automaticamente quando Cloud Storage FUSE rileva un tipo di macchina ad alte prestazioni. Per saperne di più, consulta Valori di configurazione automatica per i tipi di macchine ad alte prestazioni.
  • I volumi CSI di Cloud Storage FUSE nei pod di Google Kubernetes Engine non supportano il campo profile o l'opzione --profile.

  • La memorizzazione nella cache dei file non può essere abilitata utilizzando configurazioni basate su profili perché richiede l'utilizzo di campi di configurazione di Cloud Storage FUSE e opzioni dell'interfaccia a riga di comando di Cloud Storage FUSE che non possono essere generalizzate. Per abilitare la memorizzazione nella cache dei file per i workload di distribuzione, addestramento o checkpoint, devi configurare esplicitamente le opzioni o i campi di memorizzazione nella cache dei file.

Applica configurazioni basate su profili per i workload di addestramento

Il profilo specifico per l'addestramento ottimizza le prestazioni per letture con throughput elevato di set di dati di grandi dimensioni e impedisce all'hardware delle Cloud GPU e delle Cloud TPU di attendere i dati.

Per applicare il profilo specifico per l'addestramento, specifica profile: aiml-training utilizzando un file di configurazione di Cloud Storage FUSE o --profile=aiml-training utilizzando l'interfaccia a riga di comando di Cloud Storage FUSE. Vengono quindi applicate le seguenti configurazioni:

   # 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

Applica configurazioni basate su profili per i workload di checkpoint

Il profilo specifico per il checkpoint ottimizza le prestazioni per le scritture con throughput elevato per file di grandi dimensioni riducendo drasticamente il tempo necessario per salvare i checkpoint di più gigabyte, riducendo al minimo le pause di addestramento.

Per applicare il profilo specifico per il checkpoint, specifica profile: aiml-checkpointing utilizzando un file di configurazione di Cloud Storage FUSE o --profile=aiml-checkpointing utilizzando l'interfaccia a riga di comando di Cloud Storage FUSE. Vengono quindi applicate le seguenti configurazioni:

  # 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

Applica configurazioni basate su profili per i workload di pubblicazione

La pubblicazione ottimizza le prestazioni per la pubblicazione dei workload migliorando l'accesso ai dati e i meccanismi di memorizzazione nella cache.

Per applicare il profilo specifico per la distribuzione, specifica profile: aiml-serving utilizzando un file di configurazione di Cloud Storage FUSE o --profile=aiml-serving utilizzando l'interfaccia a riga di comando di Cloud Storage FUSE. Vengono quindi applicate le seguenti configurazioni:

  # 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

Passaggi successivi