Il s'agit de la commande mpifort.openmpi qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
mpifort -- Ouvrir le compilateur wrapper MPI Fortran
SYNTAXE
mpifort [-showme|-showme:compile|-showme:lien] ...
OPTIONS
--montre moi
Cette option se décline en plusieurs variantes (voir ci-dessous). Aucune des variantes
invoque le compilateur sous-jacent ; ils fournissent tous des informations sur la façon dont le sous-jacent
compilateur aurait été invoqué si --montre moi pas été utilisé. Les bases --montre moi
L'option affiche la ligne de commande qui serait exécutée pour compiler le programme.
NOTE: Si un argument autre que le nom de fichier est passé sur la ligne de commande, le -montre moi option
sera pas afficher des drapeaux supplémentaires. Par exemple, "mpifort --showme" et
"mpifort --showme my_source.c" affichera tous les drapeaux fournis par le wrapper. Mais
"mpifort --showme -v" n'affichera que le nom du compilateur sous-jacent et "-v".
--showme:compiler
Sortez les indicateurs du compilateur qui auraient été fournis au compilateur Fortran.
--showme:lien
Sortez les indicateurs de l'éditeur de liens qui auraient été fournis au compilateur Fortran.
--showme:commande
Affiche la commande de compilateur Fortran sous-jacente (qui peut être un ou plusieurs jetons).
--showme:incdirs
Affiche une liste de répertoires délimités par des espaces (mais non décorés) que le
compilateur wrapper aurait fourni au compilateur Fortran sous-jacent pour indiquer
où se trouvent les fichiers d'en-tête pertinents.
--showme:libdirs
Affiche une liste de répertoires délimités par des espaces (mais non décorés) que le
le compilateur wrapper aurait fourni à l'éditeur de liens sous-jacent pour indiquer où
les bibliothèques pertinentes sont situées.
--showme:libs
Affiche une liste délimitée par des espaces (mais non décorée) des noms de bibliothèque qui
le compilateur wrapper aurait utilisé pour lier une application. Par exemple : "mpi
open-rte open-pal util".
--showme:version
Affiche le numéro de version d'Open MPI.
--showme:aide
Affiche un bref message d'aide à l'utilisation.
Consultez la page de manuel de votre compilateur Fortran sous-jacent pour les autres options pouvant être transmises
par mpifort.
DESCRIPTION
Conceptuellement, le rôle de ces commandes est assez simple : ajouter de manière transparente les
les drapeaux du compilateur et de l'éditeur de liens vers la ligne de commande de l'utilisateur qui sont nécessaires pour compiler/lier
Ouvrez les programmes MPI, puis invoquez le compilateur sous-jacent pour effectuer réellement le
commander.
En tant que telles, ces commandes sont fréquemment appelées compilateurs « wrapper » car elles ne
ne pas réellement compiler ou lier les applications elles-mêmes ; ils ajoutent uniquement des indicateurs de ligne de commande
et invoquez le compilateur back-end.
Contexte
Open MPI est composé de trois couches logicielles : OPAL (Open Portable Access Layer), ORTE
(Open Run-Time Environment) et OMPI (Open MPI). Il existe des compilateurs wrapper pour chaque
couche; le wrapper de chaque couche ne lie que les bibliothèques pertinentes pour cette couche.
Plus précisément, chaque couche fournit les compilateurs wrapper suivants :
OPAL
opale et mes opale++
PLACES
ortecc et mes ortec++
OMPI
mpcc, mpic++, mpicxx, mpiCC (uniquement sur les systèmes avec des systèmes de fichiers sensibles à la casse), et
mpifort (et ses noms hérités/dépréciés mpif77 et mes mpif90). Notez que mpic++,
mpicxx et mpiCC tous invoquent le même compilateur C++ sous-jacent avec les mêmes options.
Tous sont fournis à titre de compatibilité avec d'autres implémentations MPI.
Fortran Remarques
Le compilateur de wrapper Fortran pour MPI (mpifort, et ses noms hérités/obsolètes mpif77 et mes
mpif90) peut compiler et lier des applications MPI qui utilisent tout/tout le MPI Fortran
liaisons : mpif.h, un mpi module, et le mpi_f08 module (en supposant qu'Open MPI a été installé
avec prise en charge de chacune de ces liaisons Fortran). Concrètement : il n'est plus nécessaire
d'utiliser différents compilateurs wrapper pour les applications qui utilisent mpif.h par rapport aux applications qui
utiliser le mpi module -- il suffit d'utiliser mpifort pour toutes les applications Fortran MPI.
Notez, cependant, que le compilateur Fortran peut nécessiter des options de ligne de commande supplémentaires pour
appliquer un dialecte Fortran spécifique. Par exemple, dans certaines versions de l'IBM XLF
compilateur, si xlf90 est le compilateur Fortran sous-jacent, -qfixé peut être nécessaire de compiler
fichiers source Fortran au format fixe.
Enfin, notez que mpifort sera inopérant et renverra une erreur à l'utilisation si Fortran
le support n'a pas été intégré dans le MP Ilayer.
Informations clés
mpifort est un wrapper pratique pour le compilateur Fortran sous-jacent. Traduction d'un
Le programme Open MPI nécessite la liaison des bibliothèques spécifiques à Open MPI qui peuvent ne pas
résider dans l'un des répertoires de recherche standard de ld(1). Cela nécessite aussi souvent la
inclusion de fichiers d'en-tête qui peuvent également ne pas être trouvés dans un emplacement standard.
mpifort passe ses arguments au compilateur Fortran sous-jacent avec les -I, -L et
-l options requises par les programmes Open MPI.
L'équipe Open MPI fortement encourage à utiliser les compilateurs wrapper au lieu d'essayer de
lien vers les bibliothèques Open MPI manuellement. Cela permet la mise en œuvre spécifique d'Open
MPI à modifier sans forcer les modifications des directives de l'éditeur de liens dans les Makefiles des utilisateurs. En effet,
l'ensemble spécifique d'indicateurs et de bibliothèques utilisés par les compilateurs wrapper dépend de la façon dont Open
MPI a été configuré et construit ; les valeurs peuvent changer entre les différentes installations du
même version d'Open MPI.
En effet, étant donné que les wrappers sont simplement des coquilles minces au-dessus d'un compilateur sous-jacent, il
sont très, très peu de raisons impérieuses pas à utiliser mpifort. Lorsqu'il n'est pas possible d'utiliser
les emballages directement, le -showme:compiler et mes -showme:lien les options doivent être utilisées pour
déterminer quels indicateurs les wrappers auraient utilisés. Par exemple:
shell$ cc -c fichier1.c `mpic -showme:compile`
shell$ cc -c fichier2.c `mpic -showme:compile`
shell$ cc file1.o file2.o `mpic -showme:link` -o my_mpi_program
NOTES
Il est possible de rendre les compilateurs wrapper compatibles avec les bibliothèques multiples. C'est-à-dire que les bibliothèques et
inclut spécifié peut différer en fonction des indicateurs de compilateur spécifiés (par exemple, avec le
Compilateurs GNU sur Linux, un chemin de bibliothèque différent peut être utilisé si -m32 est vu par rapport à -m64
être vu). Ce n'est pas le comportement par défaut dans une version standard, mais peut être activé
(par exemple, dans un package binaire fournissant à la fois un support 32 et 64 bits). Plus d'information
peut être trouvé à:
https://svn.open-mpi.org/trac/ompi/wiki/compilerwrapper3264
Utilisez mpifort.openmpi en ligne en utilisant les services onworks.net