Hi,
i tried to use some more aggressive compiler options ("-fast -parallel -xCORE-AVX2"), especially because Intel VTune is free now and
some of the settings showed large speedups, especially with AVX options and IPO
(https://softline.ru/uploads/98/7d/b5/c9/8c/f9/29/88/2b/origin.pdf)
and
(https://www.fz-juelich.de/SharedDocs/Downloads/IAS/JSC/EN/slides/supercomputer-ressources-2020-11/16-tuning_intel.pdf)
But I wonder where should I put them? Into the /config/meson.build file? I added it here, but it did not seem to use the compiler options for all the code, at least I could not see it in the log files. Or should I call them with a meson option?
elif fc_id == 'intel'
add_project_arguments(
'-traceback',
'-Ofast',
'-axCORE-AVX2',
language: 'fortran',
)
add_project_arguments(
'-DLINUX',
language: 'c',
)
Another related question is if the FORTRAN compiler options are completely different from the C compiler options, also WINDOWS and LINUX seem to have different calling conventions unfortunately. For example LINUX requires: " -march=core-avx2" .
See
https://software.intel.com/content/www/us/en/develop/articles/performance-tools-for-software-developers-intel-compiler-options-for-sse-generation-and-processor-specific-optimizations.html
Thanks.
Tobias
Hi,
i tried to use some more aggressive compiler options ("-fast -parallel -xCORE-AVX2"), especially because Intel VTune is free now and
some of the settings showed large speedups, especially with AVX options and IPO
(https://softline.ru/uploads/98/7d/b5/c9/8c/f9/29/88/2b/origin.pdf)
and
(https://www.fz-juelich.de/SharedDocs/Downloads/IAS/JSC/EN/slides/supercomputer-ressources-2020-11/16-tuning_intel.pdf)
But I wonder where should I put them? Into the /config/meson.build file? I added it here, but it did not seem to use the compiler options for all the code, at least I could not see it in the log files. Or should I call them with a meson option?
Another related question is if the FORTRAN compiler options are completely different from the C compiler options, also WINDOWS and LINUX seem to have different calling conventions unfortunately. For example LINUX requires: " -march=core-avx2" .
See
https://software.intel.com/content/www/us/en/develop/articles/performance-tools-for-software-developers-intel-compiler-options-for-sse-generation-and-processor-specific-optimizations.html
Thanks.
Tobias