Hi,
I just recently downloaded the gnu toolchain
when i invoke the openmp flag, it fails
$ aarch64-none-elf-gfortran -c -o mod_constants.fppized.o -fopenmp -O3 -march=native mod_constants.fppized.f90 aarch64-none-elf-gfortran: error: unrecognized command line option '-pthread' [yhuerta@cn4002 build_base_compsys.0000]$ aarch64-none-elf-gfortran --version GNU Fortran (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10) ) 9.2.1 20191025 Copyright (C) 2019 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. [yhuerta@cn4002 build_base_compsys.0000]$
that is not the case, when i used the gcc9 compiler i downloaded directly from gnu gcc website
$ gcc-gcc9 -c -o mod_constants.fppized.o -fopenmp -O3 -march=native mod_constants.fppized.f90 $ [yhuerta@cn4002 build_base_compsys.0000]$ gcc-gcc9 -v Using built-in specs. COLLECT_GCC=gcc-gcc9 COLLECT_LTO_WRAPPER=/home/yhuerta/gcc/local-gcc9/libexec/gcc/aarch64-unknown-lin ux-gnu/9.2.0/lto-wrapper Target: aarch64-unknown-linux-gnu Configured with: ../configure --prefix=/home/yhuerta/gcc/local-gcc9 --program-su ffix=-gcc9 --enable-languages=c,c++,fortran --disable-multilib Thread model: posix gcc version 9.2.0 (GCC) [yhuerta@cn4002 build_base_compsys.0000]$
do i need to compile aarch64-none-elf-gfortran and add openmp support to it?
thanks
the solution was to compile from source. i was able to invoke the -fopenmp flag with no issue
$ ../configure --prefix=/home/testuser/gcc-arm/local-gcc9 --program-suffix=-gcc9-arm --enable-languages=c,c++,fortran --disable-multilib --with-gmp=/home/testuser/gcc-arm/local --with-isl=/home/testuser/gcc-arm/local --with-libiconv-prefix=/home/testuser/gcc-arm/local --with-mpc=/home/testuser/gcc-arm/local --with-mpfr=/home/testuser/gcc-arm/local
i was hoping to see if the latest gcc9 compilers had improved their performance, but it looks like it is still the same as reported on summer 2019 for this specific omp2012 spec benchmark. time is reported in seconds
https://spec.org/omp2012/results/res2019q3/omp2012-20190812-00186.html arm compiler:
520 360.ilbdc
https://spec.org/omp2012/results/res2019q3/omp2012-20190812-00184.html gcc compiler:
360.ilbdc 97359
that is a big difference.
yah
The search was recommended to help you recognize the difference between baremetal toolchains and hosted toolchains.