If you have an implementation for dot_product, kindly contribute by adding it to the dot.f90 or dot_co.f90 file and submit a pull request.
Execute the following commands to run benchmarks for different compilers:
fpm @benchmark-dot-< compiler>
<compiler> : ifx, ifort, gfortran, nvfortran
For Coarrays:
fpm @benchmark-dot-< compiler> -coarray
<compiler> : ifx, ifort
Run the following commands to generate plots after running benchmarks:
cd benchmarks/dot
python results/export.py dot_< compiler> .data
cd ../..
<compiler> : ifx, ifort, gfortran, nvfortran
For Coarrays:
cd benchmarks/dot
python results/export_co.py dot_< compiler> _co.data
python results/export_im.py dot_< compiler> _im1.data
cd ../..
<compiler> : ifx, ifort
System specifications for the obtained results:
Specification
Details
Processor
Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz
Memory
64 GB
Operating System
Ubuntu 22.04.3 LTS
Intel Fortran Compiler (ifx)
Elapsed Time
Performance
Speedup
Average Weighted Speedup
View detailed table
Intel Fortran Compiler Classic (ifort)
Elapsed Time
Performance
Speedup
Average Weighted Speedup
View detailed table
Elapsed Time
Performance
Speedup
Average Weighted Speedup
View detailed table
Elapsed Time
Performance
Speedup
Average Weighted Speedup
View detailed table
System specifications for the obtained results:
Specification
Details
Processor
Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz
Memory
64 GB
Operating System
Ubuntu 22.04.3 LTS
Intel Fortran Compiler (ifx)
Elapsed Time
Performance
Speedup
Average Weighted Speedup
View detailed table
Intel Fortran Compiler Classic (ifort)
Elapsed Time
Performance
Speedup
Average Weighted Speedup
View detailed table