Как проверить версию MPICH?

Как указано в вопросе, какая команда отображает текущую версию MPICH? Я использую CentOS.


person Isopycnal Oscillation    schedule 28.06.2013    source источник
comment
Попробуйте прочитать справочные страницы. Моим предпочтительным первым предположением было бы $prog --version, где $prog — это любое имя, с которым вы вызываете MPICH.   -  person icedwater    schedule 28.06.2013
comment
Когда я делаю man mpich, он говорит Нет ручного ввода для mpich   -  person Isopycnal Oscillation    schedule 28.06.2013
comment
Вы установили пакеты документации? Вы используете mpich команду? Затем я бы попробовал mpich -v, mpich --version или даже mpich --help, чтобы узнать больше.   -  person icedwater    schedule 28.06.2013
comment
Я могу понять путаницу. MPICH (наряду со всеми другими реализациями MPI) не генерирует исполняемый файл с именем mpich, а вместо этого создает mpirun/mpiexec/множество других вещей, ни одна из которых не называется mpich.   -  person Wesley Bland    schedule 28.06.2013


Ответы (5)


Команда, которую вы запускаете для запуска вашего приложения с MPICH, — mpiexec, поэтому способ проверить версию:

mpiexec --version
person Wesley Bland    schedule 28.06.2013
comment
Если вы не знакомы с тем, как использовать MPI (или, в частности, MPICH), есть много хороших веб-сайтов, где вы можете найти учебные пособия. Для получения подробной информации о том, как компилировать и запускать вашу программу, начните с README внутри каталога MPICH src. Если вы установили из менеджера пакетов (например, yum, apt-get, brew и т. д.), вы можете найти эту информацию на веб-сайте MPICH: mpich.org/documentation/guides - person Wesley Bland; 28.06.2013
comment
@Mr_and_Mrs_D, какую реализацию MPI вы используете, которая не поддерживает --version? - person Wesley Bland; 16.07.2013
comment
Тот, который установлен в лабораториях Linux в школе, то есть не уверен :) См. мой ответ ниже - person Mr_and_Mrs_D; 16.07.2013
comment
Это может дать вам версию openmpi, если оба установлены. Поэтому ответы ниже, возможно, следует предпочесть. - person HongboZhu; 05.03.2018

Ну для меня это было mpicc -v

mpicc for 1.1.1p1
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.2 --program-suffix=-4.2 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --enable-targets=all --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
Thread model: posix
gcc version 4.2.4 (Ubuntu 4.2.4-1ubuntu4)

ХТН

person Mr_and_Mrs_D    schedule 08.07.2013
comment
Вот это да. Это похоже на невероятно старую версию MPICH. Это правда, что это отличается для каждой реализации, но для последних версий MPICH и Open MPI и всех их производных вы должны просто сказать mpiexec --version. Например, если вы скажете mpicc -v в относительно недавней версии Open MPI (1.4.3), вы получите информацию о версии для GCC, потому что аргументы просто передаются. В MPICH вы все равно увидите информацию о версии для MPICH, потому что он захватывает этот флаг. - person Wesley Bland; 16.07.2013

Я считаю, что mpichversion, который находится в каталоге как mpicc, предоставляет очень полезную информацию. Например, на моем ноутбуке отображается:

$ mpichversion
MPICH Version:      3.2b1
MPICH Release date: unreleased development copy
MPICH Device:       ch3:nemesis
MPICH configure:    CC=gcc-4.9 CXX=g++-4.9 FC=gfortran-4.9 F77=gfortran-4.9 
                    --enable-cxx --enable-fortran --enable-threads=runtime 
                    --enable-g=dbg --with-pm=hydra 
                    --prefix=/opt/mpich/dev/gcc/default 
                    --enable-wrapper-rpath --enable-static --enable-shared
MPICH CC:   gcc-4.9    -g -O2
MPICH CXX:  g++-4.9   -g -O2
MPICH F77:  gfortran-4.9   -g -O2
MPICH FC:   gfortran-4.9   -g -O2

Обратите внимание, что я немного переформатировал вывод (я добавил пробелы, ничего больше), чтобы он хорошо вписывался в фиксированный формат столбца, не требуя ползунка.

Обратите внимание, что это дает меньше информации, чем ранее предложенный mpiexec --version, но флаги конфигурации даются в несколько менее полезном формате, по крайней мере, для моих целей (копирование и вставка в новый вызов configure).

$ mpiexec --version
HYDRA build details:
    Version:                                 3.2b1
    Release Date:                            unreleased development copy
    CC:                              gcc-4.9    
    CXX:                             g++-4.9    
    F77:                             gfortran-4.9   
    F90:                             gfortran-4.9   
    Configure options:                       '--disable-option-checking' '--prefix=/opt/mpich/dev/gcc/default' 'CC=gcc-4.9' 'CXX=g++-4.9' 'FC=gfortran-4.9' 'F77=gfortran-4.9' '--enable-cxx' '--enable-fortran' '--enable-threads=runtime' '--enable-g=dbg' '--with-pm=hydra' '--enable-wrapper-rpath' '--enable-static' '--enable-shared' '--cache-file=/dev/null' '--srcdir=../../../../src/pm/hydra' 'CFLAGS= -g -O2' 'LDFLAGS= ' 'LIBS=-lpthread ' 'CPPFLAGS= -I/Users/jrhammon/Work/MPI/MPICH/git/build/src/mpl/include -I/Users/jrhammon/Work/MPI/MPICH/git/src/mpl/include -I/Users/jrhammon/Work/MPI/MPICH/git/src/openpa/src -I/Users/jrhammon/Work/MPI/MPICH/git/build/src/openpa/src -D_REENTRANT -I/Users/jrhammon/Work/MPI/MPICH/git/build/src/mpi/romio/include'
    Process Manager:                         pmi
    Launchers available:                     ssh rsh fork slurm ll lsf sge manual persist
    Topology libraries available:            hwloc
    Resource management kernels available:   user slurm ll lsf sge pbs cobalt
    Checkpointing libraries available:       
    Demux engines available:                 poll select

(Я не переформатировал этот вывод.)

Одним из преимуществ mpichversion является то, что, поскольку он специфичен для MPICH (и, возможно, некоторых производных от MPICH), вы можете написать для него более специфичный синтаксический анализатор. Я не знаю, доступна ли какая-либо информация из mpiexec --version для OpenMPI или других реализаций MPI, отличных от MPICH.

person Jeff Hammond    schedule 06.04.2015

В зависимости от ваших прав, вы можете отметить yum (или sudo yum):

$> yum info mpich2
...
Name        : mpich2
Arch        : x86_64 
Version     : 1.2.1
Release     : 2.3.el6
Size        : 3.7 M
Repo        : base
...

показывает соответствующий раздел на моей машине. Repo : base будет Repo : installed для установленной версии.

Или вы можете проверить mpirun или mpiexec:

$> mpirun --version
mpirun (Open MPI) 1.6.3
person Yossarian    schedule 28.06.2013
comment
Небольшое замечание: самая последняя версия MPICH больше не называется MPICH2, а просто MPICH. Некоторые менеджеры пакетов по-прежнему будут иметь старое имя, но более поздние обновления могут не совпадать. - person Wesley Bland; 28.06.2013

В mpi.h есть строка с именем MPICH_VERSION, в которой указана версия. Cray, например, предоставляет свою собственную программу запуска приложений, поэтому не существует уже упомянутого стандартного набора исполняемых файлов для запроса версии MPICH.

person Frontier    schedule 14.09.2015