Здесь показаны различия между двумя версиями данной страницы.
Следующая версия | Предыдущая версия | ||
общее:инструкции:компиляция_openmp_программ [24.10.2016 15:39:45] 127.0.0.1 внешнее изменение |
общее:инструкции:компиляция_openmp_программ [19.09.2022 21:11:01] (текущий) Admin |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | Большинство современных компиляторов поддерживают технологию OpenMP. Поэтому, для того чтобы скомпилировать OpenMP-программу достаточно в строке вызова указать компилятору в качестве дополнительного параметра специальный ключ: | + | ===== Компиляция OpenMP программ ===== |
- | --- **fopenmp** для компиляторов GCC | ||
- | --- **openmp** для компиляторов Intel | ||
- | --- **mp** включает поддержку OpenMP в компиляторах PGI | ||
- | --- **nomp** выключает поддержку OpenMP в компиляторах PGI | ||
- | |||
- | |||
- | Для того, чтобы скомпилировать простую OpenMP-программу в командной строке достаточно ввести команду со следующей структурой: | ||
<code> $ <compiler> <source_file>[ <source_file>] -o <executable_file> <omp_key> [...] </code> | <code> $ <compiler> <source_file>[ <source_file>] -o <executable_file> <omp_key> [...] </code> | ||
- | ,где | ||
- | * **<compiler>** - команда вызова компилятора | + | ^ <compiler> | команда вызова компилятора | |
+ | ^ <source_file> | файл с исходным кодом | | ||
+ | ^ <executable_file> | исполняемый файл | | ||
+ | ^ <omp_key> | ключ для компилирования OpenMP-программ | | ||
+ | ^ [...] | дополнительные опции компилятора | | ||
- | * **<source_file>** - файл с исходным программным кодом | + | ===== Примеры компиляции ===== |
- | * **<executable_file>** - исполняемый файл | + | <code> |
+ | $ gcc src.c -fopenmp -o openmp-gcc-c | ||
+ | </code> | ||
- | * **<omp_key>** - ключ для компилирования OpenMP-программ (зависит только от используемого компилятора) | + | <code> |
+ | $ g++ src.cpp -fopenmp -o openmp-gcc-cpp | ||
+ | </code> | ||
- | * **[...]** - дополнительные опции компилятора | + | <code> |
+ | $ gfortran src.f -fopenmp -o openmp-gcc-fortran | ||
+ | </code> | ||
- | === Примеры [OpenMP-программы] === | ||
- | ---- | ||
- | Программа на языке С состоит из двух файлов с программным кодом (source_file_1.c, src_2.c) компилируется в исполняемый файл my_program с помощью компилятора: | ||
- | * **GCC v.4.1.2** <code> $ gcc src_1.c src_2.c -o my_program -fopenmp </code> | ||
- | * **Intel** <code> $ /share/apps/intel/bin/icc src_1.c src_2.c -o my_program -openmp </code> |