File system paralleli per carichi di lavoro HPC

Last reviewed 2025-05-19 UTC

Questo documento presenta le opzioni di archiviazione in Google Cloud per i workload di computing ad alte prestazioni (HPC) e spiega quando utilizzare i file system paralleli per i workload HPC. In un file system parallelo, diversi client utilizzano percorsi di I/O paralleli per accedere ai dati condivisi archiviati in più nodi di archiviazione in rete.

Le informazioni contenute in questo documento sono destinate ad architetti e amministratori che progettano, eseguono il provisioning e gestiscono lo spazio di archiviazione per workload HPC ad alta intensità di dati. Il documento presuppone che tu abbia una conoscenza concettuale dei Network File System (NFS), dei file system paralleli, di POSIX e dei requisiti di archiviazione delle applicazioni HPC.

Che cos'è l'HPC (computing ad alte prestazioni)?

I sistemi HPC risolvono rapidamente problemi di calcolo di grandi dimensioni aggregando più risorse di computing. L'HPC promuove la ricerca e l'innovazione in settori quali sanità, scienze biologiche, media, intrattenimento, servizi finanziari ed energia. Ricercatori, scienziati e analisti utilizzano i sistemi HPC per eseguire esperimenti, simulazioni e valutare prototipi. I workload HPC, come l'elaborazione sismica, il sequenziamento genomico, il rendering multimediale e la modellazione climatica, generano e accedono a grandi volumi di dati con velocità di trasmissione dati sempre più elevate e latenze sempre più basse. L'archiviazione e la gestione dei dati ad alte prestazioni sono elementi fondamentali dell'infrastruttura HPC.

Opzioni di archiviazione per i workload HPC in Google Cloud

La configurazione e la gestione dell'infrastruttura HPC (computing ad alte prestazioni) on-premise sono costose e l'infrastruttura richiede una manutenzione continua. Inoltre, l'infrastruttura on-premise in genere non può essere scalata rapidamente per adattarsi alle variazioni della domanda. Pianificare, acquistare, eseguire il deployment e dismettere l'hardware on-premise richiede molto tempo, con conseguente ritardo nell'aggiunta di risorse HPC o capacità sottoutilizzate. Nel cloud, puoi eseguire il provisioning in modo efficiente di un'infrastruttura HPC (computing ad alte prestazioni) che utilizza la tecnologia più recente e puoi scalare la capacità on demand.

Google Cloud e i nostri partner tecnologici offrono opzioni di archiviazione convenienti, flessibili e scalabili per il deployment dell'infrastruttura HPC nel cloud e per il potenziamento dell'infrastruttura HPC on-premise. Scienziati, ricercatori e analisti possono accedere rapidamente a capacità HPC (computing ad alte prestazioni) aggiuntiva per i loro progetti quando ne hanno bisogno.

Per eseguire il deployment di un workload HPC in Google Cloud, puoi scegliere tra i seguenti servizi e prodotti di archiviazione, a seconda dei requisiti del tuo workload:

Tipo di workload Prodotti e servizi di archiviazione consigliati
Workload che richiedono un accesso ai dati a bassa latenza, ma non un I/O estremo ai set di dati condivisi e che hanno una condivisione dei dati limitata tra i client. Utilizza lo spazio di archiviazione NFS. Scegli una delle seguenti opzioni:
Workload che generano I/O complessi, interdipendenti e su larga scala, come le applicazioni HPC ad alto accoppiamento che utilizzano la Message-Passing Interface (MPI) per una comunicazione tra processi affidabile. Utilizza un file system parallelo. Scegli una delle seguenti opzioni:
Per saperne di più sui requisiti dei workload che i file system paralleli possono supportare, consulta Quando utilizzare i file system paralleli.

Quando utilizzare i file system paralleli

In un file system parallelo, diversi client archiviano e accedono ai dati condivisi su più nodi di archiviazione in rete utilizzando percorsi di I/O paralleli. I file system paralleli sono ideali per workload HPC ad alto accoppiamento, come workload di intelligenza artificiale (AI) ad alta intensità di dati e workload di analisi che utilizzano applicazioni SAS. Valuta la possibilità di utilizzare un file system parallelo come Managed Lustre per i workload HPC sensibili alla latenza che hanno uno dei seguenti requisiti:

  • Trattamento dati ad alto accoppiamento: i workload HPC come la modellazione meteorologica e l'esplorazione sismica devono elaborare i dati in modo ripetitivo utilizzando molti job interdipendenti che vengono eseguiti contemporaneamente su più server. Questi processi in genere utilizzano MPI per scambiare dati a intervalli regolari e utilizzano il checkpointing per eseguire rapidamente il recupero in caso di errori. I file system paralleli consentono a client interdipendenti di archiviare e accedere contemporaneamente a grandi volumi di dati condivisi su una rete a bassa latenza.
  • Supporto per l'API I/O POSIX e per la semantica: i file system paralleli come Managed Lustre sono ideali per i workload che richiedono sia l'API POSIX sia la semantica. L'API di un file system e la sua semantica sono funzionalità indipendenti. Ad esempio, NFS supporta l'API POSIX, che è il modo in cui le applicazioni leggono e scrivono i dati utilizzando funzioni come open(), read() e write(). Tuttavia, il modo in cui NFS coordina l'accesso ai dati tra client diversi non è lo stesso della semantica POSIX per coordinare l'accesso ai dati tra thread diversi su una macchina. Ad esempio, NFS non supporta la coerenza della cache di lettura dopo scrittura POSIX tra i client; si basa sulla coerenza debole in NFSv3 e sulla coerenza close-to-open in NFSv4.
  • Petabyte di capacità: i file system paralleli possono essere scalati fino a più petabyte di capacità in un unico spazio dei nomi del file system. NetApp Volumes supporta fino a 1 PB, mentre Filestore Regional e Zonal supportano fino a 100 TiB per file system. Cloud Storage offre una capacità affidabile e a basso costo che scala automaticamente, ma potrebbe non soddisfare la semantica di condivisione dei dati e i requisiti di bassa latenza dei workload HPC.
  • Bassa latenza e larghezza di banda elevata: per i workload HPC che richiedono un accesso ad alta velocità a file molto grandi o a milioni di file di piccole dimensioni, i file system paralleli possono superare le prestazioni di NFS e dell'archiviazione di oggetti. La latenza inferiore al millisecondo fornita dai file system paralleli è significativamente inferiore rispetto all'archiviazione di oggetti, il che può influire sul numero massimo di IOPS. Inoltre, la larghezza di banda massima supportata dai file system paralleli può essere di ordini di grandezza superiore rispetto ai sistemi basati su NFS, il che può saturare la NIC di una VM.
  • Scalabilità estrema dei client: lo spazio di archiviazione NFS può supportare migliaia di client. I file system paralleli possono essere scalati per supportare l'accesso simultaneo ai dati condivisi da oltre 10.000 client e possono fornire un throughput elevato indipendentemente dal numero di client.

Esempi di applicazioni HPC ad alto accoppiamento

Questa sezione descrive esempi di applicazioni HPC ad alto accoppiamento che richiedono lo spazio di archiviazione a bassa latenza e throughput elevato fornito dai file system paralleli.

Modellazione molecolare resa possibile dall'AI

La ricerca farmaceutica è un processo costoso e ad alta intensità di dati. Le moderne organizzazioni di ricerca sui farmaci si affidano all'AI per ridurre i costi di ricerca e sviluppo, scalare le operazioni in modo efficiente e accelerare la ricerca scientifica. Ad esempio, i ricercatori utilizzano applicazioni abilitate dall'AI per simulare le interazioni tra le molecole di un farmaco e per prevedere l'effetto delle modifiche ai composti del farmaco. Queste applicazioni vengono eseguite su potenti processori GPU parallelizzati che caricano, organizzano e analizzano una quantità estrema di dati per completare rapidamente le simulazioni. I file system paralleli forniscono le IOPS e il throughput di archiviazione necessari per massimizzare le prestazioni delle applicazioni di AI.

Analisi del rischio di credito utilizzando le applicazioni SAS

Gli istituti di servizi finanziari, come i prestatori di mutui e le banche di investimento, devono analizzare e monitorare costantemente l'affidabilità creditizia dei loro clienti e dei loro portafogli di investimento. Ad esempio, i grandi istituti di credito ipotecario raccolgono ogni giorno dati relativi ai rischi su migliaia di potenziali clienti. I team di analisti del credito utilizzano applicazioni di analisi per esaminare in modo collaborativo diverse parti dei dati di ciascun cliente, come reddito, storia creditizia e modelli di spesa. Gli insight di questa analisi aiutano gli analisti del credito a formulare raccomandazioni di prestito accurate e tempestive.

Per accelerare e scalare l'analisi di set di dati di grandi dimensioni, gli istituti di servizi finanziari utilizzano piattaforme di grid computing come SAS Grid Manager. I file system paralleli come Managed Lustre supportano i requisiti di archiviazione a throughput elevato e bassa latenza delle applicazioni SAS multi-thread.

Previsioni meteo

Per prevedere i modelli meteorologici in una determinata regione geografica, i meteorologi dividono la regione in diverse celle e implementano dispositivi di monitoraggio come radar terrestri e palloni meteorologici in ogni cella. Questi dispositivi osservano e misurano le condizioni atmosferiche a intervalli regolari. I dispositivi trasmettono dati in modalità flusso continuamente a un'applicazione di previsione meteorologica in esecuzione in un cluster HPC.

L'applicazione di previsione meteorologica elabora i dati in streaming utilizzando modelli matematici basati su relazioni fisiche note tra i parametri meteorologici misurati. Un job separato elabora i dati di ogni cella della regione. Man mano che l'applicazione riceve nuove misurazioni, ogni job esegue l'iterazione degli ultimi dati per la cella assegnata e scambia l'output con i job per le altre celle della regione. Per prevedere i modelli meteorologici in modo affidabile, l'applicazione deve archiviare e condividere terabyte di dati generati e accessibili da migliaia di job in esecuzione in parallelo.

CFD per la progettazione di aeromobili

La fluidodinamica computazionale (CFD) prevede l'uso di modelli matematici, leggi fisiche e logica computazionale per simulare il comportamento di un gas o di un liquido attorno a un oggetto in movimento. Quando gli ingegneri aeronautici progettano la carrozzeria di un aereo, uno dei fattori che prendono in considerazione è l'aerodinamica. La CFD consente ai progettisti di simulare rapidamente l'effetto delle modifiche di progettazione sull'aerodinamica prima di investire tempo e denaro nella creazione di prototipi costosi. Dopo aver analizzato i risultati di ogni esecuzione della simulazione, i progettisti ottimizzano attributi come il volume e la forma dei singoli componenti del corpo dell'aereo e simulano nuovamente l'aerodinamica. La CFD consente ai progettisti di aeromobili di simulare in modo collaborativo l'effetto di centinaia di queste modifiche di progettazione in modo rapido.

Per completare le simulazioni di progettazione in modo efficiente, le applicazioni CFD richiedono l'accesso ai dati condivisi in meno di un millisecondo e la capacità di archiviare grandi volumi di dati a velocità fino a 100 GBps.

Panoramica delle opzioni del file system parallelo

Questa sezione fornisce una panoramica generale delle opzioni disponibili inGoogle Cloud per i file system paralleli.

Google Cloud Managed Lustre

Managed Lustre è un servizio gestito da Google che fornisce spazio di archiviazione con throughput elevato e bassa latenza per workload HPC ad alto accoppiamento. Accelera notevolmente i workload HPC e l'addestramento e l'inferenza dell'AI fornendo un accesso a bassa latenza e a throughput elevato a enormi set di dati. Per informazioni sull'utilizzo di Managed Lustre per i workload di AI e ML, consulta Panoramica dei servizi di archiviazione per i workload di AI e ML in AI Hypercomputer. Managed Lustre distribuisce i dati su più nodi di archiviazione, consentendo l'accesso simultaneo da parte di molte VM. Questo accesso parallelo elimina i colli di bottiglia che si verificano con i file system tradizionali e consente ai workload di importare ed elaborare rapidamente le grandi quantità di dati richieste.

DDN Infinia

Se hai bisogno di un'orchestrazione dei dati AI avanzata, puoi utilizzare DDN Infinia, disponibile in Google Cloud Marketplace. Infinia fornisce una soluzione di data intelligence incentrata sull'AI ottimizzata per l'inferenza, l'addestramento e l'analisi in tempo reale. Consente l'importazione dati ultraveloce, l'indicizzazione ricca di metadati e l'integrazione perfetta con framework di AI come TensorFlow e PyTorch.

Di seguito sono riportate le funzionalità principali di DDN Infinia:

  • Prestazioni elevate: offre una latenza inferiore al millisecondo e un throughput di più TB/s.
  • Scalabilità: supporta la scalabilità da terabyte a exabyte e può ospitare fino a oltre 100.000 GPU e un milione di client simultanei in un unico deployment.
  • Multi-tenancy con qualità del servizio (QoS) prevedibile: offre ambienti sicuri e isolati per più tenant con QoS prevedibile per prestazioni coerenti tra i workload.
  • Accesso unificato ai dati: consente un'integrazione perfetta con le applicazioni e i flussi di lavoro esistenti tramite il supporto multiprotocollo integrato, incluso quello per Amazon S3, CSI e Cinder.
  • Sicurezza avanzata: offre crittografia integrata, erasure coding con riconoscimento dei domini di errore e snapshot che contribuiscono a garantire la protezione dei dati e la conformità.

Sycomp Intelligent Data Storage Platform

Sycomp Intelligent Data Storage Platform, disponibile in Google Cloud Marketplace, ti consente di eseguire i tuoi workload di computing ad alte prestazioni (HPC), AI e ML e big data in Google Cloud. Con Sycomp Storage puoi accedere contemporaneamente ai dati di migliaia di VM, ridurre i costi gestendo automaticamente i livelli di archiviazione ed eseguire la tua applicazione on-premise o in Google Cloud. Sycomp Storage può essere implementato rapidamente e supporta l'accesso ai tuoi dati tramite NFS e il client IBM Storage Scale.

IBM Storage Scale è un file system parallelo che consente di gestire in modo sicuro grandi volumi (PB) di dati. Sycomp Storage Scale è un file system parallelo adatto per HPC, AI, ML, big data e altre applicazioni che richiedono un file system condiviso conforme a POSIX. Con una capacità di archiviazione adattabile e una scalabilità delle prestazioni, Sycomp Storage può supportare workload HPC, AI e ML di piccole e grandi dimensioni.

Dopo aver eseguito il deployment di un cluster in Google Cloud, decidi come utilizzarlo. Scegli se utilizzare il cluster solo nel cloud o in modalità ibrida connettendoti ai cluster IBM Storage Scale on-premise esistenti, alle soluzioni NAS NFS di terze parti o ad altre soluzioni di archiviazione basate su oggetti.

Collaboratori

Autore: Kumar Dhanagopal | Cross-Product Solution Developer

Altri collaboratori: