05 ‐ Compiladores e Implementações MPI - arcarneiro/teste-doc-sdumont GitHub Wiki
Compiladores disponíveis
Inclui os compiladores C/C++/GFortran
- Versão 8.5.0 - Compilador padrão do Sistema Operacional. Não é necessário carregar módulo!
- Outras versões (6.X, 7.X, 9.X etc) - Disponíveis através do module.
- Para listar todas as versões disponíveis, executar o comando module avail gcc.
- Para carregar o módulo, executar o comando module load gcc/<VERSAO>.
Inclui os compiladores C, C++ e Fortran, Integrated Performance Primitives (IPP), Math Kernel Library (MKL), Threading Building Blocks (TBB), Data Analytics Acceleration Library (DAAL), Intel Advisor, Intel VTune Profiler (formerly VTune Amplifier), Intel MPI Library, Intel Trace Analyzer and Collector e Intel Distribution for Python.
Necessário carregar o módulo ou configurar o ambiente!
- Para listar todas as versões disponíveis, executar o comando module avail intel_psxe.
- Para carregar o módulo, executar o comando module load intel_psxe/<VERSAO>.
- Outra forma de configurar o Intel PSXE é através do comando source. Exemplo: source /petrobr/app_sequana/modulos2/intel-psxe-<VERSAO>.sh
Conjunto de softwares da Intel que veio para substituir o Parallel Studio XE após a versão 2020.
Necessário carregar o módulo ou configurar o ambiente!
- Versões disponíveis
- 2022: module load intel-oneapi/2022_sequana
As opções de MPI são OpenMPI, MPICH e o Intel MPI (baseado no MPICH e fornecido pelo Intel PSXE ou OneAPI). Para colocar os executáveis ( mpicc , mpif77 , etc) no path , execute um dos comandos abaixo.
- Utilizando compiladores GNU (gcc, g++, gfortran):
module load openmpi/gnu/4.1.1_sequana
Para uma lista completa das versões do OpenMPI disponíveis:
module avail openmpi
- Listar as versões disponívies:
module avail mpich
- Carregar o módulo:
module load mpich/<VERSAO>
Disponível ao carregar um dos módulos informados em Parallel Studio XE ou OneAPI.
Para compilar uma aplicação com o Intel MPI e os compiladores Intel, é necessário utilizar os seguintes comandos:
- mpiicc: Compilador C
- mpiicpc: Compilador C++
- mpiifort: Compilador Fortran
Exemplo, usando o Intel PSXE 2017:
#Carrega o módulo do Intel PSXE
$ module load intel_psxe/2017_sequana
#Verifica a versão do compilador C
$ icc --version
icc (ICC) 17.0.4 20170411
Copyright (C) 1985-2017 Intel Corporation. All rights reserved.
#Verifica a versão do compilador MPI C com icc
$ mpiicc --version
icc (ICC) 17.0.4 20170411
Copyright (C) 1985-2017 Intel Corporation. All rights reserved.
#Verifica a versão do compilador MPI C com GCC
$ mpicc --version
gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-18)
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#Verifica a versão do MPI da Intel
$ mpirun --version
Intel(R) MPI Library for Linux* OS, Version 2017 Update 3 Build 20170405 (id: 17193)
Copyright (C) 2003-2017, Intel Corporation. All rights reserved.
Exemplo, usando o Intel OneAPI 2022:
#Carrega o módulo do Intel PSXE
$ module load intel-oneapi/2022_sequana
$ icc --version
icc (ICC) 2021.5.0 20211109
Copyright (C) 1985-2021 Intel Corporation. All rights reserved.
$ mpiicc --version
icc (ICC) 2021.5.0 20211109
Copyright (C) 1985-2021 Intel Corporation. All rights reserved.
$ mpicc --version
gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-18)
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ mpirun --version
Intel(R) MPI Library for Linux* OS, Version 2021.5 Build 20211102 (id: 9279b7d62)
Copyright 2003-2021, Intel Corporation.