Ottimizza i carichi di lavoro di IA e ML con Parallelstore

Last reviewed 2025-01-20 UTC

Questo documento fornisce un'architettura di riferimento che mostra come utilizzare Parallelstore per ottimizzare le prestazioni per i carichi di lavoro di intelligenza artificiale (IA) o di machine learning (ML). Parallelstore è un servizio di archiviazione del file system parallelo che ti aiuta a ridurre i costi, migliorare l'utilizzo delle risorse e accelerare i tempi di addestramento per i tuoi carichi di lavoro di AI e ML.

Il pubblico di destinazione di questo documento include architetti e professionisti tecnici che progettano, eseguono il provisioning e gestiscono lo spazio di archiviazione per i loro carichi di lavoro di IA e ML su Google Cloud. Il documento presuppone che tu abbia familiarità con il ciclo di vita, i processi e le funzionalità del machine learning.

Parallelstore è un file system temporaneo ad alte prestazioni e completamente gestito in Google Cloud che si basa sull'architettura DAOS (Distributed Asynchronous Object Storage). Parallelstore è ideale per i carichi di lavoro di IA e ML che utilizzano fino a 100 TiB di capacità di archiviazione e che devono fornire accesso a bassa latenza (meno di un millisecondo) con un throughput elevato e un elevato numero di operazioni di input/output al secondo (IOPS).

Parallelstore offre diversi vantaggi per i carichi di lavoro di AI e ML, tra cui:

  • TCO (Total Cost of Ownership) ridotto per l'addestramento: Parallelstore accelera i tempi di addestramento inviando in modo efficiente i dati ai nodi di calcolo. Questa funzionalità contribuisce a ridurre il costo totale di proprietà per l'addestramento dei modelli di IA e ML.
  • TCO inferiore per il servizio: le funzionalità ad alte prestazioni di Parallelstore consentono un caricamento più rapido dei modelli e un servizio di inferenza ottimizzato. Queste funzionalità contribuiscono a ridurre i costi di calcolo e migliorare l'utilizzo delle risorse.
  • Utilizzo efficiente delle risorse: Parallelstore consente di combinare l'addestramento, il checkpointing e la pubblicazione in un'unica istanza. Questo utilizzo delle risorse consente di massimizzare l'uso efficiente della velocità effettiva di lettura e scrittura in un unico sistema di archiviazione ad alte prestazioni.

Architettura

Il seguente diagramma mostra un'architettura di esempio per l'utilizzo di Parallelstore per ottimizzare le prestazioni di un carico di lavoro di addestramento e di pubblicazione di modelli:

Un'architettura utilizza Parallelstore per ottimizzare le prestazioni di un carico di lavoro di addestramento e di pubblicazione del modello.

I carichi di lavoro mostrati nell'architettura precedente sono descritti in dettaglio nelle sezioni successive. L'architettura include i seguenti componenti:

Componente Finalità
Cluster Google Kubernetes Engine (GKE) GKE gestisce gli host di calcolo su cui vengono eseguite le procedure di addestramento e pubblicazione dei modelli di IA e ML. GKE gestisce l'infrastruttura sottostante dei cluster, inclusi il piano di controllo, i nodi e tutti i componenti di sistema.
Kubernetes Scheduler Il piano di controllo GKE pianifica i carichi di lavoro e ne gestisce il ciclo di vita, la scalabilità e gli upgrade. L'agente del nodo Kubernetes (kubelet), che non è mostrato nel diagramma, comunica con il piano di controllo. kubelet è responsabile dell'avvio e dell'esecuzione dei container pianificati sui nodi GKE. Puoi eseguire il deployment di GPU per carichi di lavoro batch e di IA con Dynamic Workload Scheduler, che ti consente di richiedere GPU senza un impegno eccessivo. Per ulteriori informazioni sull'organizzatore, consulta Orchestrazione di AI/ML su GKE.
Rete Virtual Private Cloud (VPC) Tutte le Google Cloud risorse dell'architettura utilizzano una singola rete VPC. A seconda dei tuoi requisiti, puoi scegliere di creare un'architettura che utilizzi più reti. Per ulteriori informazioni su come configurare una rete VPC per Parallelstore, consulta Configurare una rete VPC.
Cloud Load Balancing In questa architettura, Cloud Load Balancing distribuisce in modo efficiente le richieste di inferenza in entrata dagli utenti dell'applicazione ai contenitori di servizio nel cluster GKE. L'utilizzo di Cloud Load Balancing contribuisce a garantire alta disponibilità, scalabilità e prestazioni ottimali per l'applicazione di AI e ML. Per ulteriori informazioni, consulta Informazioni sul bilanciamento del carico GKE.
GPU (Graphics Processing Unit) o TPU (Tensor Processing Unit) Le GPU e le TPU sono acceleratori di macchine specializzati che migliorano le prestazioni del tuo carico di lavoro di IA e ML. Per ulteriori informazioni su come scegliere un tipo di processore appropriato, consulta la sezione Opzioni di acceleratore di questo documento.
Parallelstore Parallelstore accelera l'addestramento e la gestione di AI e ML fornendo un file system parallelo ad alte prestazioni ottimizzato per bassa latenza e alta velocità in uscita. Rispetto all'utilizzo unicamente di Cloud Storage, l'utilizzo di Parallelstore consente di ridurre in modo significativo i tempi di addestramento e di migliorare la reattività dei modelli durante il servizio. Questi miglioramenti sono particolarmente evidenti nei carichi di lavoro impegnativi che richiedono un accesso rapido e coerente ai dati condivisi.
Cloud Storage Cloud Storage fornisce uno spazio di archiviazione permanente e conveniente per i tuoi workload di AI e ML. Cloud Storage funge da repository centrale per i set di dati di addestramento non elaborati, i checkpoint dei modelli e i modelli addestrati finali. L'utilizzo di Cloud Storage contribuisce a garantire la durabilità, la disponibilità a lungo termine e l'economicità dei dati che non vengono utilizzati attivamente nei calcoli.

Carico di lavoro di addestramento

Nell'architettura precedente, i passaggi del flusso di dati durante l'addestramento del modello sono i seguenti:

  1. Carica i dati di addestramento su Cloud Storage: carica i dati di addestramento in un bucket Cloud Storage, che funge da repository centrale sicuro e scalabile e da fonte attendibile.
  2. Copia i dati in Parallelstore: il corpus di dati di addestramento viene trasferito tramite un'importazione collettiva dell'API in un'istanza Parallelstore da Cloud Storage. Il trasferimento dei dati di addestramento ti consente di sfruttare le funzionalità del file system ad alte prestazioni di Parallelstore per ottimizzare le velocità di caricamento e elaborazione dei dati durante l'addestramento del modello.
  3. Esegui job di addestramento in GKE: il processo di addestramento del modello viene eseguito sui nodi GKE. Se utilizzi Parallelstore come origine dati anziché caricare i dati direttamente da Cloud Storage, i nodi GKE possono accedere e caricare i dati di addestramento con velocità ed efficienza notevolmente maggiori. L'utilizzo di Parallelstore consente di ridurre i tempi di caricamento dei dati e di accelerare il processo di addestramento complessivo, in particolare per set di dati di grandi dimensioni e modelli complessi. A seconda dei requisiti del tuo carico di lavoro, puoi utilizzare GPU o TPU. Per informazioni su come scegliere un tipo di processore appropriato, consulta Opzioni di acceleratore più avanti in questo documento.
  4. Salva i checkpoint di addestramento in Parallelstore: durante la procedura di addestramento, i checkpoint vengono salvati in Parallelstore in base alle metriche o agli intervalli che definisci. I checkpoint acquisiscono lo stato del modello a intervalli frequenti.
  5. Salva i checkpoint e il modello in Cloud Storage: ti consigliamo di utilizzare un'esportazione collettiva dell'API dall'istanza Parallelstore per salvare alcuni checkpoint e il modello addestrato in Cloud Storage. Questa pratica garantisce la tolleranza ai guasti e consente casi d'uso futuri come la ripresa dell'addestramento da un punto specifico, il deployment del modello per la produzione e la conduzione di ulteriori esperimenti. Come best practice, archivia i checkpoint in un bucket diverso dai dati di addestramento.
    • Ripristina i checkpoint o il modello: quando il flusso di lavoro di AI e ML richiede il ripristino di checkpoint o dati del modello, devi individuare l'asset che vuoi ripristinare in Cloud Storage. Seleziona l'asset da ripristinare in base a timestamp, metrica sul rendimento o una versione specifica. Utilizza l'importazione tramite API per trasferire l'asset da Cloud Storage a Parallelstore, quindi caricalo nel container di addestramento. Puoi quindi utilizzare il checkpoint o il modello ripristinato per riprendere l'addestramento, ottimizzare i parametri o valutare le prestazioni su un set di convalida.

Pubblicazione del workload

Nell'architettura precedente, i passaggi del flusso di dati durante l'erogazione del modello sono i seguenti:

  1. Carica il modello per la pubblicazione: al termine dell'addestramento, i pod caricano il modello addestrato nei nodi di pubblicazione. Se l'istanza Parallelstore utilizzata durante l'addestramento ha una capacità IOPS sufficiente, puoi accelerare il caricamento del modello e ridurre i costi utilizzando l'istanza di addestramento per pubblicare il modello. Il riutilizzo dell'istanza di addestramento consente una condivisione efficiente delle risorse tra l'addestramento e la distribuzione. Tuttavia, per mantenere prestazioni e compatibilità ottimali, utilizza un tipo di acceleratore (GPU o TPU) per l'addestramento coerente con il tipo di acceleratore disponibile sui nodi GKE di servizio.
  2. Richiesta di inferenza: gli utenti dell'applicazione inviano richieste di inferenza tramite l'applicazione AI e ML. Queste richieste vengono indirizzate al servizio Cloud Load Balancing. Cloud Load Balancing distribuisce le richieste in entrata ai container di pubblicazione nel cluster GKE. Questa distribuzione garantisce che nessun singolo contenitore sia sovraccaricato e che le richieste vengano elaborate in modo efficiente.
  3. Pubblicazione delle richieste di inferenza: durante la produzione, il sistema gestisce in modo efficiente le richieste di inferenza utilizzando la cache di pubblicazione del modello. I nodi di calcolo interagiscono con la cache controllando prima se esiste una previsione corrispondente. Se viene trovata una previsione corrispondente, viene restituita direttamente, il che contribuisce a ottimizzare i tempi di risposta e l'utilizzo delle risorse. In caso contrario, il modello elabora la richiesta, genera una previsione e la memorizza nella cache per l'efficienza futura.
  4. Invio delle risposte: i container di pubblicazione inviano nuovamente le risposte tramite Cloud Load Balancing. Cloud Load Balancing instrada nuovamente le risposte agli utenti dell'applicazione appropriati, completando così il ciclo di richiesta di inferenza.

Prodotti utilizzati

Questa architettura di riferimento utilizza i seguenti Google Cloud prodotti:

  • Virtual Private Cloud (VPC): un sistema virtuale che fornisce funzionalità di networking scalabili e globali per i tuoi Google Cloud carichi di lavoro. VPC include il peering di rete VPC, Private Service Connect, l'accesso privato ai servizi e VPC condiviso.
  • Google Kubernetes Engine (GKE): un servizio Kubernetes che puoi utilizzare per eseguire il deployment e gestire applicazioni containerizzate su larga scala utilizzando l'infrastruttura di Google.
  • Cloud Storage: uno spazio di archiviazione di oggetti a basso costo e senza limiti per diversi tipi di dati. I dati sono accessibili dall'interno e dall'esterno Google Cloude vengono replicati in più località per garantire la ridondanza.
  • Parallelstore: un file system parallelo completamente gestito per l'IA, il computing ad alte prestazioni (HPC) e le applicazioni che richiedono un uso intensivo dei dati.

Casi d'uso

Parallelstore è ideale per i workload di IA e ML con fino a 100 TiB di capacità di archiviazione e che devono fornire accesso a bassa latenza (inferiore a un millisecondo) con un'elevata velocità effettiva e un elevato numero di IOPS. Le sezioni seguenti forniscono esempi di casi d'uso per i quali puoi utilizzare Parallelstore.

Elaborazione e generazione di testo basati su testo

I modelli linguistici di grandi dimensioni (LLM) sono modelli di IA specializzati progettati specificamente per comprendere ed elaborare i dati basati su testo. Gli LLM vengono addestrati su enormi set di dati di testo, che consentono loro di eseguire una serie di attività, tra cui traduzione automatica, risposta alle domande e riassunto del testo. L'addestramento dei modelli LLM richiede l'accesso a bassa latenza ai set di dati per un'elaborazione delle richieste e una generazione di testo efficienti. Parallelstore eccelle nelle applicazioni che richiedono un uso intensivo dei dati, in quanto offre la velocità effettiva elevata e la latenza ridotta necessarie sia per l'addestramento sia per l'inferenza, il che si traduce in applicazioni più reattive basate su LLM.

Elaborazione di immagini o video ad alta risoluzione

Le applicazioni di AI e ML tradizionali o i modelli generativi multimodali che elaborano immagini o video ad alta risoluzione, come l'analisi di immagini mediche o i sistemi di guida autonoma, richiedono una grande capacità di archiviazione e un accesso rapido ai dati. Il file system temporaneo ad alte prestazioni di Parallelstore consente di caricare rapidamente i dati per accelerare le prestazioni dell'applicazione. Ad esempio, Parallelstore può contenere ed elaborare temporaneamente grandi volumi di dati dei pazienti, come le scansioni MRI e TC, estratti da Cloud Storage. Questa funzionalità consente ai modelli di IA e ML di analizzare rapidamente i dati per la diagnosi e la cura.

Alternative di design

Le sezioni seguenti presentano approcci di progettazione alternativi che puoi prendere in considerazione per la tua applicazione di AI e ML in Google Cloud.

Alternativa alla piattaforma

Anziché ospitare l'addestramento del modello e il flusso di lavoro di pubblicazione su GKE, puoi prendere in considerazione Compute Engine con Slurm. Slurm è un gestore di risorse e carichi di lavoro open source e altamente configurabile. L'utilizzo di Compute Engine con Slurm è particolarmente adatto per l'addestramento e le simulazioni di modelli su larga scala. Ti consigliamo di utilizzare Compute Engine con Slurm se devi integrare proprietà intellettuali (IP) proprietarie di IA e ML in un ambiente scalabile con la flessibilità e il controllo necessari per ottimizzare le prestazioni per i carichi di lavoro specializzati.

In Compute Engine, esegui il provisioning e la gestione delle tue macchine virtuali (VM), in modo da avere un controllo granulare su tipi di istanze, archiviazione e reti. Puoi personalizzare l'infrastruttura in base alle tue esigenze specifiche, inclusa la selezione di tipi di macchine VM specifici. Puoi anche utilizzare la famiglia di macchine ottimizzate per l'acceleratore per migliorare le prestazioni con i carichi di lavoro di IA e ML. Per ulteriori informazioni sulle famiglie di tipi di macchine disponibili su Compute Engine, consulta la guida alle risorse e al confronto delle famiglie di macchine.

Slurm offre un'opzione efficace per la gestione dei workload di AI e ML e ti consente di controllare la configurazione e la gestione delle risorse di calcolo. Per utilizzare questo approccio, devi avere competenze di amministrazione di Slurm e gestione del sistema Linux.

Opzioni di accelerazione

Gli acceleratori di macchine sono processori specializzati progettati per velocizzare i calcoli obbligatori per i carichi di lavoro di IA e ML. Puoi scegliere tra unità di elaborazione grafica (GPU) o Tensor Processing Unit (TPU).

  • Gli acceleratori GPU offrono prestazioni eccellenti per un'ampia gamma di attività, tra cui rendering grafico, addestramento del deep learning e calcolo scientifico. Google Cloud ha una vasta selezione di GPU per soddisfare una gamma di prestazioni e prezzi. Per informazioni sui modelli e sui prezzi delle GPU, consulta Prezzi delle GPU.
  • Le TPU sono acceleratori IA progettati su misura, ottimizzati per l'addestramento e l'inferenza di modelli IA di grandi dimensioni. Sono ideali per una varietà di casi d'uso, tra cui chatbot, generazione di codice, generazione di contenuti multimediali, sintesi vocale, servizi di visione artificiale, motori per suggerimenti e modelli di personalizzazione, tra gli altri. Per ulteriori informazioni sui modelli e sui prezzi delle TPU, consulta la sezione Prezzi delle TPU.

Alternative di archiviazione per i contenuti pubblicati

Cloud Storage FUSE con un bucket multiregionale o a due regioni offre il livello più elevato di disponibilità perché i modelli di IA e ML addestrati vengono archiviati in Cloud Storage e in più regioni. Sebbene Cloud Storage FUSE raggiunga un throughput inferiore per VM rispetto a Parallelstore, ti consente di sfruttare la scalabilità e la convenienza economica di Cloud Storage. Per accelerare il caricamento dei modelli e migliorare le prestazioni, soprattutto per i workload impegnativi, puoi utilizzare istanze Parallelstore esistenti o nuove in ogni regione. Per informazioni su come migliorare le prestazioni con Cloud Storage FUSE, consulta Ottimizzare il driver CSI di Cloud Storage FUSE per le prestazioni di GKE.

Google Cloud Hyperdisk ML è una soluzione di archiviazione a blocchi ad alte prestazioni progettata per accelerare i carichi di lavoro di AI e ML su larga scala che richiedono accesso di sola lettura a set di dati di grandi dimensioni. È possibile eseguire il provisioning di Hyperdisk ML con un throughput aggregato più elevato, ma il throughput per VM è inferiore rispetto a Parallelstore.

Inoltre, ai volumi ML Hyperdisk possono accedere solo le VM GPU o TPU nella stessa zona. Pertanto, per i cluster GKE regionali che vengono eseguiti in più zone, devi eseguire il provisioning di volumi Hyperdisk ML distinti in ogni zona. Questo posizionamento è diverso da Parallelstore, in cui è necessaria una sola istanza per regione. È importante anche notare che Hyperdisk ML è di sola lettura. Per ulteriori informazioni sull'utilizzo di Hyperdisk ML nei carichi di lavoro di AI e ML, consulta Accelerare il caricamento dei dati AI/ML con Hyperdisk ML.

Note sul layout

Per progettare un deployment di Parallelstore che ottimizzi le prestazioni e l'efficienza in termini di costi dei carichi di lavoro di AI e ML suGoogle Cloud, utilizza le linee guida riportate nelle sezioni seguenti. Le linee guida descriveno i consigli da prendere in considerazione quando utilizzi Parallelstore all'interno di una soluzione ibrida che combina più opzioni di archiviazione per attività specifiche all'interno del flusso di lavoro.

Formazione

L'addestramento dei modelli di AI e ML richiede di fornire in modo iterativo i dati al modello, aggiustarne i parametri e valutarne le prestazioni a ogni iterazione. Questo procedura può essere molto dispendiosa in termini di risorse di calcolo e genera un elevato volume di richieste I/O a causa della necessità costante di leggere i dati di addestramento e scrivere i parametri del modello aggiornati.

Per massimizzare i vantaggi in termini di rendimento durante l'addestramento, ti consigliamo quanto segue:

  • Memorizzazione nella cache: utilizza Parallelstore come cache ad alte prestazioni su Cloud Storage.
  • Precaricamento: importa i dati in Parallelstore da Cloud Storage per ridurre al minimo la latenza durante l'addestramento. Puoi anche utilizzare GKE Volume Populator per precompilare PersistentVolumesClaims con i dati di Cloud Storage.
  • Ottimizzazione dei costi: esporta i dati in una classe Cloud Storage meno costosa dopo l'addestramento per ridurre al minimo le spese di archiviazione a lungo termine. Poiché i dati permanenti vengono archiviati in Cloud Storage, puoi distruggere e ricreare le istanze Parallelstore in base alle esigenze dei tuoi job di addestramento.
  • Integrazione con GKE: esegui l'integrazione con il driver CSI (Container Storage Interface) di GKE per una gestione semplificata. Per informazioni su come collegare un cluster GKE a un'istanza Parallelstore, consulta Driver CSI Parallelstore di Google Kubernetes Engine.
  • Prestazioni delle VM A3: invia più di 20 GB/s (circa 2,5 GB/s per GPU) sulle varianti A3 per un caricamento ottimale dei dati.
  • Accesso simultaneo: utilizza l'istanza Parallelstore per supportare letture e scritture full duplex.

Quando esegui il deployment di Parallelstore per l'addestramento, tieni presente quanto segue:

  • File system scratch: configura gli intervalli di checkpoint durante il processo di addestramento. Parallelstore è un sistema di file temporanei, il che significa che i dati vengono archiviati temporaneamente. Nell'intervallo di 100 TiB, la durata media stimata della perdita di dati è di due mesi. Nell'intervallo di 23 TB, la durata media stimata della perdita di dati è di almeno 12 mesi.
  • Striping di file e directory: ottimizza lo striping di file e directory in base alle dimensioni dei file predominanti per massimizzare le prestazioni.
  • Ottimizzazione dei costi: ottimizza i costi eseguendo lo staging dei dati in modo appropriato in Cloud Storage anziché in Parallelstore.
  • Selezione della zona: ottimizza i costi e le prestazioni posizionando i client di calcolo GPU o TPU e i nodi di archiviazione nella stessa zona.

Per ulteriori informazioni su come configurare l'ambiente Parallelstore per ottimizzare il rendimento, consulta Considerazioni sul rendimento.

Controllo a punti di controllo

I checkpoint sono un aspetto fondamentale dell'addestramento dei modelli di AI e ML. I checkpoint consentono di salvare lo stato del modello in vari punti durante il processo, in modo da poter riprendere l'addestramento da un checkpoint salvato in caso di interruzioni, guasti del sistema o per esplorare diverse configurazioni degli iperparametri. Quando utilizzi Parallelstore per l'addestramento, è fondamentale utilizzarlo anche per il checkpointing per sfruttare la sua elevata velocità effettiva di scrittura e minimizzare il tempo di addestramento. Questo approccio garantisce un utilizzo efficiente delle risorse e aiuta a ridurre il TCO per le risorse GPU, mantenendo sia l'addestramento che il checkpoint il più velocemente possibile.

Per ottimizzare il flusso di lavoro del checkpointing con Parallelstore, considera queste best practice:

  • Checkpointing rapido: sfrutta le scritture dei checkpoint rapide con Parallelstore. Puoi ottenere un throughput di 0,5 GB/s per TiB di capacità e più di 12 GB/s per VM A3.
  • Archiviazione selettiva dei checkpoint: esporta i checkpoint selezionati da Parallelstore in Cloud Storage per l'archiviazione a lungo termine e il disaster recovery.
  • Operazioni simultanee: sfrutta il full duplex di lettura e scrittura utilizzando Parallelstore contemporaneamente per l'addestramento e le scritture dei checkpoint.

Pubblicazione

La gestione dei modelli prevede di eseguire il deployment dei modelli di IA e ML addestrati per gestire le richieste di inferenza. Per ottenere un rendimento ottimale, è fondamentale ridurre al minimo il tempo necessario per caricare questi modelli in memoria. Sebbene Parallelstore sia progettato principalmente per i carichi di lavoro di addestramento, puoi utilizzare l'elevato throughput per VM (più di 20 GB/s) e il throughput aggregato del cluster per ridurre al minimo i tempi di caricamento dei modelli su migliaia di VM. Per monitorare le metriche chiave che ti consentono di identificare i colli di bottiglia e garantire un'efficienza ottimale, utilizza Cloud Monitoring.

Quando esegui il deployment di Parallelstore per l'erogazione, tieni presente quanto segue:

  • Alto throughput: massimizza le prestazioni di Parallelstore utilizzando il monitoraggio cloud per assicurarti di implementare una capacità sufficiente per raggiungere un throughput fino a 125 GB/s a 100 TiB.
  • Possibili interruzioni del servizio: poiché Parallelstore è un file system scratch, può verificarsi qualche interruzione occasionale del servizio. Il tempo medio di perdita di dati è di circa 2 mesi per un cluster da 100 TiB.
  • Ripristina i dati: se si verifica un'interruzione del servizio, devi ripristinare i dati di Parallelstore dall'ultimo backup di Cloud Storage. I dati vengono trasferiti a una velocità di circa 16 GB/s.
  • Istanze condivise: l'utilizzo di un'istanza Parallelstore per l'addestramento e la pubblicazione massimizza l'utilizzo delle risorse e può essere conveniente. Tuttavia, può verificarsi una potenziale contesa delle risorse se entrambi i carichi di lavoro hanno richieste di throughput elevate. Se dopo l'addestramento sono disponibili IOPS di riserva, l'utilizzo della stessa istanza può accelerare il caricamento del modello per la pubblicazione. Utilizza Cloud Monitoring per assicurarti di allocare risorse sufficienti per soddisfare le tue richieste di throughput.
  • Istanze separate: l'utilizzo di istanze separate consente di isolare le prestazioni, migliorare la sicurezza isolando i dati di addestramento e migliorare la protezione dei dati. Sebbene gli elenchi di controllo dell'accesso possano gestire la sicurezza all'interno di una singola istanza, le istanze separate offrono un confine di sicurezza più solido.

Opzioni di posizionamento

Per ridurre al minimo la latenza e massimizzare le prestazioni, crea l'istanza Parallelstore in una regione geograficamente vicina ai tuoi client di calcolo GPU o TPU.

  • Per l'addestramento e il checkpointing: per risultati ottimali, assicurati che i client e le istanze Parallelstore si trovino nella stessa zona. Questa co-locazione riduce al minimo i tempi di trasferimento dei dati e massimizza l'utilizzo della velocità effettiva di scrittura di Parallelstore.
  • Per la pubblicazione: anche se la colocazione con i client di calcolo nella stessa zona è l'ideale, è sufficiente avere un'istanza Parallelstore per regione. Questo approccio evita i costi aggiuntivi associati al deployment di più istanze e contribuisce a massimizzare le prestazioni di calcolo. Tuttavia, se hai bisogno di una maggiore capacità o un maggiore throughput, ti consigliamo di eseguire il deployment di più di un'istanza per regione.

Il deployment di Parallelstore in due regioni può migliorare notevolmente il rendimento mantenendo i dati geograficamente più vicini alle GPU o alle TPU utilizzate per la pubblicazione. Questo posizionamento riduce la latenza e consente un accesso più rapido ai dati durante l'inferenza. In caso di interruzione del servizio a livello di regione, sia le applicazioni di addestramento sia quelle di pubblicazione non saranno più disponibili per gli utenti.

Per garantire un'alta disponibilità e affidabilità, devi creare un'istanza di una replica di questa architettura in un'altra regione. Quando crei un'architettura geograficamente redundante, la tua applicazione di AI e ML può continuare a funzionare anche se una regione presenta un'interruzione del servizio. Per eseguire il backup e il ripristino dei dati del cluster e di Cloud Storage in un'altra regione, se necessario, puoi utilizzare Backup per GKE.

Per informazioni sulle località supportate per le istanze Parallelstore, consulta Località supportate.

Deployment

Per creare e implementare questa architettura di riferimento, ti consigliamo di utilizzare Cluster Toolkit. Cluster Toolkit è un toolkit modulare basato su Terraform progettato per il deployment di ambienti di IA e ML ripetibili suGoogle Cloud. Per definire il tuo ambiente, utilizza il blueprint di addestramento GKE e Parallelstore. Per eseguire il provisioning e gestire le istanze Parallelstore per i tuoi cluster, consulta il modulo Parallelstore.

Per informazioni su come eseguire il deployment manuale di Parallelstore, consulta Creare un'istanza Parallelstore. Per migliorare ulteriormente la scalabilità e le prestazioni con il provisioning dinamico, puoi creare e utilizzare un volume basato su un'istanza Parallelstore in GKE.

Passaggi successivi

Collaboratori

Autore: Samantha He | Technical Writer

Altri collaboratori: