Distribuire dinamiche molecolari e applicazioni GROMACS

Distribuire dinamiche molecolari e applicazioni GROMACS utilizzando una qualsiasi delle opzioni del framework computazionale, dalle forme GPU bare metal alla virtual machine disponibili in Oracle Cloud Infrastructure (OCI).

GROMACS è un software di dinamica molecolare che simula i movimenti degli atomi nelle biomolecole in un insieme predefinito di condizioni. Identifica il comportamento di queste biomolecole quando esposte a variazioni di temperatura, pressione e altri input che imitano le condizioni reali incontrate in un organismo vivente. GROMACS può stabilire modelli in piegatura proteica, legame proteico-ligande e trasporto membrana cellulare, rendendolo un'applicazione utile per la ricerca e la scoperta di farmaci.

GROMACS ha le seguenti caratteristiche chiave:

  • È progettato principalmente per molecole biochimiche come proteine, lipidi e acidi nucleici.
  • Fornisce prestazioni elevate con molte ottimizzazioni algoritmiche.
  • È il più delle volte scritto in C (compilatore si trasforma in istruzioni della macchina SIMD) e utilizza una semplice interfaccia con opzioni della riga di comando per i file di input e di output.
  • È facile da usare con topologie, file di parametri scritti in formato testo chiaro, controllo della coerenza e cancellazione della messaggistica di errore.
  • Può essere eseguito in parallelo, utilizzando il protocollo di comunicazione MPI standard o tramite la nostra libreria MPI Thread per workstation a singolo codice.
  • Include un costruttore di topologia completamente automatizzato.
  • Software libero, disponibile sotto GNU Lesser General Public License (LGPL), versione 2.1.

Architettura

È possibile utilizzare questa architettura di riferimento per più applicazioni correlate all'apprendimento approfondito e all'informatica scientifica.

I carichi di lavoro di apprendimento approfondito e informatico scientifico richiedono quadri computazionali specializzati. Oracle Cloud Infrastructure (OCI) offre un'ampia gamma di opzioni, dalle forme GPU bare metal alla Virtual Machine (VM), per gestire i carichi di lavoro più difficili. NVIDIA GPU Cloud (NGC) è una delle opzioni disponibili in Oracle Cloud Infrastructure.

In questa semplice architettura di riferimento, un nodo GPU con memorizzazione a blocchi viene distribuito in un VCN con subnet pubblica e gateway Internet. La memorizzazione a blocchi memorizza le applicazioni.

Il seguente diagramma illustra questa architettura di riferimento.



L'architettura ha i seguenti componenti:

  • Area

    Un'area di Oracle Cloud Infrastructure è un'area geografica localizzata che contiene uno o più data center, denominati domini di disponibilità. Le regioni sono indipendenti da altre regioni, e vaste distanze possono separarle (tra paesi o addirittura continenti).

  • Domini di disponibilità

    I domini di disponibilità sono data center indipendenti e autonomi all'interno di un'area. Le risorse fisiche in ogni dominio di disponibilità vengono isolate dalle risorse negli altri domini di disponibilità, il che fornisce tolleranza agli errori. I domini di disponibilità non condividono infrastrutture quali l'alimentazione o il raffreddamento o la rete di dominio di disponibilità interna. È quindi improbabile che un errore a un dominio di disponibilità influenzi gli altri domini di disponibilità nell'area.

  • Tensione

    Una tenancy è una partizione sicura e isolata impostata da Oracle all'interno di Oracle Cloud al momento della registrazione a Oracle Cloud Infrastructure. È possibile creare, organizzare e amministrare le risorse in Oracle Cloud all'interno della tenancy.

  • Compartimento

    I compartimenti sono partizioni logiche tra aree all'interno di una tenancy di Oracle Cloud Infrastructure. Utilizzare i compartimenti per organizzare le risorse in Oracle Cloud, controllare l'accesso alle risorse e impostare le quote di utilizzo. Per controllare l'accesso alle risorse in un determinato compartimento, è possibile definire i criteri che specificano chi può accedere alle risorse e quali azioni possono eseguire.

  • Cloud Guard

    È possibile utilizzare Oracle Cloud Guard per monitorare e gestire la sicurezza delle risorse in Oracle Cloud Infrastructure. Cloud Guard utilizza ricette di detector che è possibile definire per esaminare le risorse per individuare le debolezze di sicurezza e per monitorare operatori e utenti per attività rischiose. Quando viene rilevata un'attività di configurazione errata o non sicura, Cloud Guard consiglia azioni correttive e assiste l'esecuzione di tali azioni in base alle ricette del rispondente che è possibile definire.

  • Rete cloud virtuale (VCN) e subnet

    VCN è una rete customizzabile e definita dal software impostata in un'area Oracle Cloud Infrastructure. Come le tradizionali reti di data center, i VCN ti danno il controllo completo sul tuo ambiente di rete. Un VCN può avere più blocchi CIDR non sovrapposti che è possibile modificare dopo la creazione di VCN. È possibile segmentare un VCN in subnet, che possono essere definite in un'area o in un dominio di disponibilità. Ogni subnet è costituita da un intervallo contiguo di indirizzi che non si sovrappongono alle altre subnet di VCN. È possibile modificare le dimensioni di una subnet dopo la creazione. Una subnet può essere pubblica o privata.

  • Gateway Internet

    Il gateway Internet consente il traffico tra le subnet pubbliche in un VCN e Internet pubblico.

  • Tabella instradamento

    Le tabelle di instradamento virtuale contengono regole per instradare il traffico dalle subnet alle destinazioni al di fuori di un VCN, in genere tramite gateway.

  • Lista di sicurezza

    Per ogni subnet è possibile creare regole di sicurezza che specifichino l'origine, la destinazione e il tipo di traffico che devono essere consentiti all'interno e all'esterno della subnet.

  • Calcola

    Il servizio Oracle Cloud Infrastructure Compute consente di eseguire il provisioning e la gestione degli host di calcolo nel cloud. È possibile avviare istanze di calcolo con forme che soddisfano i requisiti delle risorse (CPU, memoria, larghezza di banda di rete e storage). Dopo aver creato un'istanza di calcolo, è possibile accedervi in modo sicuro, riavviarla, collegare e scollegare i volumi e terminarla quando non ne hai bisogno.

  • GPU Bare Metal

    Utilizzare una forma GPU Bare Metal per l'analisi accelerata hardware e altri calcoli.

  • Volume a blocchi

    Con i volumi di memorizzazione a blocchi, è possibile creare, collegare, connettere e spostare i volumi di memorizzazione e modificare le prestazioni del volume per soddisfare i requisiti di memorizzazione, prestazioni e applicazione. Dopo aver collegato e collegato un volume a un'istanza, è possibile utilizzare il volume come un normale disco rigido. È inoltre possibile scollegare un volume e collegarlo a un'altra istanza senza perdere dati.

Suggerimenti

Utilizzare i suggerimenti riportati di seguito come punto di partenza per distribuire applicazioni dinamiche molecolari utilizzando una qualsiasi delle opzioni del framework computazionale in Oracle Cloud Infrastructure.

Le vostre esigenze potrebbero differire dall'architettura descritta qui.

  • VCN

    Quando si crea un VCN, determinare il numero di blocchi CIDR richiesti e la dimensione di ciascun blocco in base al numero di risorse che si prevede di collegare alle subnet in VCN. Utilizzare blocchi CIDR all'interno dello spazio degli indirizzi IP privati standard.

    Selezionare blocchi CIDR che non si sovrappongono a nessun'altra rete (in Oracle Cloud Infrastructure, nel data center in locale o in un altro provider cloud) a cui si intende impostare connessioni private.

    Dopo aver creato un VCN, è possibile modificare, aggiungere e rimuovere i blocchi CIDR.

    Quando si progettano le subnet, prendere in considerazione il flusso di traffico e i requisiti di sicurezza. Collegare tutte le risorse all'interno di uno specifico livello o ruolo alla stessa subnet, che può fungere da limite di sicurezza.

    Utilizzare subnet regionali.

  • Liste di sicurezza

    Utilizzare gli elenchi di sicurezza per definire le regole di ingresso e uscita applicabili all'intera subnet.

  • Cloud Guard

    Duplicare e personalizzare le ricette predefinite fornite da Oracle per creare ricette personalizzate di detector e responder. Queste ricette consentono di specificare il tipo di violazioni della sicurezza che generano un'avvertenza e le azioni che possono essere eseguite su di esse. Ad esempio, è possibile rilevare i bucket di storage degli oggetti con visibilità impostata su Pubblico.

    Applica Cloud Guard a livello di tenancy per coprire l'ambito più ampio e ridurre l'onere amministrativo di gestire più configurazioni.

    È inoltre possibile utilizzare la funzione Lista gestita per applicare determinate configurazioni ai rilevatori.

  • GPU Bare Metal

    Utilizzare bare metal shape BM.GPU2.2 o BM.GPU3.8 per ottenere prestazioni ottimali.

Considerazioni

Quando si distribuiscono applicazioni dinamiche molecolari, prendere in considerazione quanto segue:

  • Prestazioni

    Per ottenere le migliori prestazioni, scegliere la forma di calcolo corretta con la larghezza di banda appropriata.

  • Disponibilità

    Utilizzare un'opzione ad alta disponibilità in base ai requisiti di distribuzione e all'area. Le opzioni includono l'utilizzo di più domini di disponibilità in un'area e l'utilizzo di domini di errore.

  • Costo

    Un'istanza HPC bare metal fornisce la potenza CPU necessaria per un costo maggiore. Valuta le tue esigenze per scegliere la forma di calcolo appropriata.

  • Monitoraggio e avvisi

    Impostare il monitoraggio e gli avvisi sull'uso della CPU e della memoria per i nodi, in modo da poter scalare la forma su o giù in base alle esigenze.

Distribuisci

Il codice Terraform per questa architettura di riferimento è disponibile su GitHub. È possibile estrarre il codice in Oracle Cloud Infrastructure Resource Manager con un solo clic, creare lo stack e distribuirlo. In alternativa, è possibile scaricare il codice da GitHub al computer, personalizzare il codice e distribuire l'architettura utilizzando Terraform CLI.

  • Distribuire utilizzando lo stack di esempio in Oracle Cloud Infrastructure Resource Manager:
    1. Fare clic su Distribuisci in Oracle Cloud

      Se non si è già connessi, immettere la tenancy e le credenziali utente.

    2. Rivedere e accettare i termini e le condizioni.
    3. Selezionare l'area in cui distribuire lo stack.
    4. Seguire le istruzioni e i prompt sullo schermo per creare lo stack.
    5. Dopo aver creato lo stack, fare clic su Azioni Terraform e selezionare Piano.
    6. Attendere il completamento del job e rivedere il piano.

      Per apportare eventuali modifiche, tornare alla pagina Dettagli stack, fare clic su Modifica stack e apportare le modifiche necessarie. Eseguire di nuovo l'azione Piano.

    7. Se non sono necessarie ulteriori modifiche, tornare alla pagina Dettagli stack, fare clic su Azioni Terraform e selezionare Applica.
  • Distribuire utilizzando il codice Terraform in GitHub:
    1. Andare a GitHub.
    2. Duplicare o scaricare il repository nel computer locale.
    3. Seguire le istruzioni contenute nel documento README.

Scopri di più

Scopri di più sulle caratteristiche di questa architettura.