Déployer la dynamique moléculaire et les applications GROMACS
Déployez la dynamique moléculaire et les applications GROMACS à l'aide d'une gamme d'options de structure de calcul allant du métal nu aux formes GPU de machine virtuelle disponibles dans Oracle Cloud Infrastructure (OCI).
GROMACS est un logiciel de dynamique moléculaire qui simule les mouvements des atomes dans les biomolécules dans un ensemble prédéfini de conditions. Il identifie le comportement de ces biomolécules lorsqu'elles sont exposées à des changements de température, de pression et d'autres intrants qui imitent les conditions réelles rencontrées dans un organisme vivant. GROMACS peut établir des schémas de pliage des protéines, de liaison protéine-ligande et de transport des membranes cellulaires, ce qui en fait une application utile pour la recherche et la découverte de médicaments.
GROMACS a les caractéristiques clés suivantes :
- Il est principalement conçu pour les molécules biochimiques telles que les protéines, les lipides et les acides nucléiques.
- Il offre de hautes performances avec de nombreuses optimisations algorithmiques.
- Il est le plus souvent écrit en C (compilateur se transforme en instructions de machine SIMD) et utilise une interface simple avec des options de ligne de commande pour les fichiers d'entrée et de sortie.
- Il est convivial avec les topologies, les fichiers de paramètres écrits en format texte clair, la vérification de la cohérence et la messagerie d'erreur claire.
- Il peut être exécuté en parallèle, en utilisant le protocole de communication MPI standard ou via notre propre bibliothèque MPI Thread pour les stations de travail mono-node.
- Il comprend un générateur de topologie entièrement automatisé.
- Est un logiciel libre, disponible sous la licence GNU Lesser General Public License (LGPL), version 2.1.
Architecture
Vous pouvez utiliser cette architecture de référence pour plusieurs applications liées à l'apprentissage profond et à l'informatique scientifique.
L'apprentissage profond et la charge de travail de l'informatique scientifique nécessitent des cadres informatiques spécialisés. Oracle Cloud Infrastructure (OCI) offre une grande variété d'options allant du métal nu aux formes GPU de machine virtuelle (VM) pour gérer les charges de travail les plus exigeantes. NVIDIA GPU Cloud (NGC) est l'une des options disponibles sur Oracle Cloud Infrastructure.
Dans cette architecture de référence simple, un noeud GPU avec stockage de blocs est déployé dans un VCN avec sous-réseau public et passerelle Internet. Stockage en bloc stocke les applications.
Le diagramme suivant illustre cette architecture de référence.
L'architecture comporte les composants suivants :
- Région
Une région Oracle Cloud Infrastructure est une zone géographique localisée qui contient un ou plusieurs centres de données, appelés domaines de disponibilité. Les régions sont indépendantes des autres régions et de vastes distances peuvent les séparer (d'un pays à l'autre ou même d'un continent à l'autre).
- Domaines de disponibilité
Les domaines de disponibilité sont des centres de données autonomes et indépendants au sein d'une région. Les ressources physiques de chaque domaine de disponibilité sont isolées des ressources des autres domaines de disponibilité, ce qui permet de tolérer les pannes. Les domaines de disponibilité ne partagent pas d'infrastructure comme l'alimentation ou le refroidissement, ou le réseau de domaine de disponibilité interne. Il est donc peu probable qu'un échec dans un domaine de disponibilité affecte les autres domaines de disponibilité de la région.
- Tenance
Une location est une partition sécurisée et isolée configurée par Oracle dans Oracle Cloud lorsque vous vous inscrivez à Oracle Cloud Infrastructure. Vous pouvez créer, organiser et administrer vos ressources dans Oracle Cloud au sein de votre location.
- Compartiment
Les compartiments sont des partitions logiques interrégionales dans une location Oracle Cloud Infrastructure. Utilisez des compartiments pour organiser vos ressources dans Oracle Cloud, contrôler l'accès aux ressources et définir des quotas d'utilisation. Pour contrôler l'accès aux ressources d'un compartiment donné, vous définissez des stratégies qui spécifient qui peut accéder aux ressources et quelles actions elles peuvent effectuer.
- Cloud Guard
Vous pouvez utiliser Oracle Cloud Guard pour surveiller et maintenir la sécurité de vos ressources dans Oracle Cloud Infrastructure. Cloud Guard utilise des recettes de détecteur que vous pouvez définir pour examiner vos ressources pour détecter les faiblesses de sécurité et surveiller les opérateurs et les utilisateurs pour détecter les activités risquées. Lorsqu'une erreur de configuration ou une activité non sécurisée est détectée, Cloud Guard recommande des actions correctives et aide à prendre ces actions, en fonction des recettes de répondeur que vous pouvez définir.
- Réseau cloud virtuel (VCN) et sous-réseaux
Un VCN est un réseau personnalisé défini par logiciel que vous configurez dans une région Oracle Cloud Infrastructure. Comme les réseaux traditionnels de centres de données, les VCN vous donnent un contrôle complet sur votre environnement réseau. Un VCN peut comporter plusieurs blocs CIDR sans chevauchement que vous pouvez modifier après avoir créé VCN. Vous pouvez segmenter un VCN en sous-réseaux, qui peuvent être étendus à une région ou à un domaine de disponibilité. Chaque sous-réseau comprend une plage contiguë d'adresses qui ne chevauchent pas les autres sous-réseaux de VCN. Vous pouvez modifier la taille d'un sous-réseau après la création. Un sous-réseau peut être public ou privé.
- Passerelle Internet
La passerelle Internet permet le trafic entre les sous-réseaux publics dans un VCN et Internet public.
- Table de routage
Les tables de routage virtuelles contiennent des règles pour acheminer le trafic de sous-réseaux vers des destinations en dehors d'un VCN, généralement via des passerelles.
- Liste de sécurité
Pour chaque sous-réseau, vous pouvez créer des règles de sécurité qui spécifient la source, la destination et le type de trafic qui doivent être autorisés dans et hors du sous-réseau.
- Calculer
Le service Oracle Cloud Infrastructure Compute vous permet de provisionner et de gérer les hôtes de calcul dans le cloud. Vous pouvez lancer des instances de calcul avec des formes répondant à vos besoins en ressources (CPU, mémoire, bande passante réseau et stockage). Après avoir créé une instance de calcul, vous pouvez y accéder en toute sécurité, la redémarrer, attacher et détacher des volumes, et la mettre fin lorsque vous n'en avez pas besoin.
- GPU Bare Metal
Utilisez une forme GPU Bare Metal pour l'analyse accélérée du matériel et d'autres calculs.
- Volume de bloc
Avec les volumes de stockage de blocs, vous pouvez créer, attacher, connecter et déplacer des volumes de stockage, et modifier les performances de volume pour répondre à vos besoins en matière de stockage, de performances et d'application. Une fois que vous attachez et connectez un volume à une instance, vous pouvez utiliser le volume comme un disque dur régulier. Vous pouvez également déconnecter un volume et le joindre à une autre instance sans perdre de données.
Recommandations
Utilisez les recommandations suivantes comme point de départ pour déployer des applications de dynamique moléculaire à l'aide d'une gamme d'options de structure de calcul sur Oracle Cloud Infrastructure.
Vos exigences peuvent différer de l'architecture décrite ici.
- VCN
Lorsque vous créez un VCN, déterminez le nombre de blocs CIDR requis et la taille de chaque bloc en fonction du nombre de ressources que vous prévoyez d'attacher à des sous-réseaux dans VCN. Utilisez les blocs CIDR qui se trouvent dans l'espace d'adresse IP privé standard.
Sélectionnez des blocs CIDR qui ne chevauchent aucun autre réseau (dans Oracle Cloud Infrastructure, votre centre de données sur site ou un autre fournisseur cloud) auquel vous souhaitez configurer des connexions privées.
Après avoir créé un VCN, vous pouvez modifier, ajouter et supprimer ses blocs CIDR.
Lorsque vous concevez les sous-réseaux, tenez compte de vos besoins en matière de flux de trafic et de sécurité. Attachez toutes les ressources d'un niveau ou d'un rôle spécifique au même sous-réseau, qui peut servir de limite de sécurité.
Utiliser des sous-réseaux régionaux.
- Listes de sécurité
Utilisez les listes de sécurité pour définir les règles entrantes et sortantes qui s'appliquent à l'ensemble du sous-réseau.
- Cloud Guard
Cloner et personnaliser les recettes par défaut fournies par Oracle pour créer des recettes de détecteur et de répondeur personnalisées. Ces recettes vous permettent de spécifier quel type de violation de sécurité génère un avertissement et quelles actions sont autorisées pour ces violations. Par exemple, vous pouvez détecter les buckets Object Storage dont la visibilité est définie sur Public.
Appliquez Cloud Guard au niveau de la location pour couvrir la portée la plus large et réduire le fardeau administratif lié à la maintenance de plusieurs configurations.
Vous pouvez également utiliser la fonction Liste gérée pour appliquer certaines configurations aux détecteurs.
- GPU Bare Metal
Utilisez les formes Bare Metal BM.GPU2.2 ou BM.GPU3.8 pour obtenir les meilleures performances.
Remarques
Lorsque vous déployez des applications de dynamique moléculaire, tenez compte des éléments suivants :
- Performances
Pour obtenir les meilleures performances, choisissez la forme de calcul correcte avec la bande passante appropriée.
- Disponibilité
Envisagez d'utiliser une option de haute disponibilité en fonction de vos besoins de déploiement et de votre région. Les options incluent l'utilisation de plusieurs domaines de disponibilité dans une région et l'utilisation de domaines de pannes.
- Coût
Une instance HPC en métal nu fournit l'alimentation CPU nécessaire pour un coût plus élevé. Évaluez vos besoins pour choisir la forme de calcul appropriée.
- Surveillance et alertes
Configurez la surveillance et les alertes sur l'utilisation de l'UC et de la mémoire pour vos noeuds, afin que vous puissiez redimensionner la forme en fonction des besoins.
Déployer
Le code Terraform de cette architecture de référence est disponible sur GitHub. Vous pouvez extraire le code dans Oracle Cloud Infrastructure Resource Manager en un seul clic, créer la pile et le déployer. Vous pouvez également télécharger le code de GitHub sur votre ordinateur, personnaliser le code et déployer l'architecture à l'aide de la CLI Terraform.
- Déployer à l'aide de l'exemple de pile dans Oracle Cloud Infrastructure Resource Manager :
- Cliquez sur
Si vous n'êtes pas déjà connecté, entrez les informations d'identification de location et d'utilisateur.
- Vérifiez et acceptez les conditions générales.
- Sélectionnez la région dans laquelle déployer la pile.
- Suivez les invites à l'écran et les instructions pour créer la pile.
- Après avoir créé la pile, cliquez sur Actions Terraform et sélectionnez Plan.
- Attendez que le travail soit terminé et examinez le plan.
Pour apporter des modifications, revenez à la page Détails de la pile, cliquez sur Modifier la pile et apportez les modifications requises. Exécutez ensuite à nouveau l'action Plan.
- Si aucune autre modification n'est nécessaire, revenez à la page Détails de la pile, cliquez sur Actions Terraform et sélectionnez Appliquer.
- Cliquez sur
- Déployer à l'aide du code Terraform dans GitHub :
- Accédez à GitHub.
- Cloner ou télécharger le référentiel sur votre ordinateur local.
- Suivez les instructions du document
README
.
Explorer plus
En savoir plus sur les caractéristiques de cette architecture.
-
Structure des meilleures pratiques pour Oracle Cloud Infrastructure
-
Pour plus d'informations, reportez-vous à la documentation de GROMACS.