Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28383 Discussions

Fortran high performance computing with intel Fortran cluster edition

FortranUser22
Novice
662 Views

Hello,

 

I have intel fortran compiler19.1 cluster edition on windows visual studio . I m good at coding with Fortran and Matlab. I took training in OpenMP and MPI. I m more comfortable with OpenMP than MPI but I understand how most of the instructions work. I m not an expert in parallel programming but I want to use it in the most efficient way. 

 

I need to have my code massively parallelized. Can intel parallelize the code automatically? I added the following line before the DO loops:

"!dir$ loop count min(512)" 

I also had "USE OMP_LIB" in the declaration section.

I have changed the properties at the project properties:

Fortran=>Libraries=>use run-time library=>Multithreaded(MT)

Fortran=>runtime=>check-stack frame=>No

Fortran=>optimization=>Maximize speed plus higher level optimization(/o3)

                                          =>favor size or speed=>speed

I noticed significant improvement in execution speed. Did Intel converted my code to openMP and executed it on multithread? 

Can intel do automatic parallelization of the code using MPI? Can intel run my code on GPU without me learning Fortran CUDA? Is there any updated Intel fortran software or hardware that I need to buy to run my code on GPU? 

Intel has released intel cloud but I may or may not be allowed to use it.

 

 

 

 

0 Kudos
1 Solution
Steve_Lionel
Honored Contributor III
569 Views

You can't see the parallelized Fortran code, though you can ask for an optimization report that will tell you what it did and didn't parallelize.

The new compiler is ifx, not ifix. It works with Intel GPUs (at present, the ones integrated with the CPU, but I assume it will work with the upcoming Intel Arc GPUs. Theoretically, it could also be made to work with other vendors' GPUs, but that would require them to supply the appropriate oneAPI library.

View solution in original post

5 Replies
Steve_Lionel
Honored Contributor III
623 Views

If you want the Intel compiler to automatically parallelize, you must add /parallel to the options (Fortran > Optimization > Parallelization > Yes.) Your use of OMP_LIB doesn't do anything on its own.

Auto-parallel uses OpenMP under the hood, but it isn't as good as your coding OpenMP directives yourself. There is no automatic MPI parallelization.

The new "ifx" compiler supports targeting Intel GPUs with OpenMP.

FortranUser22
Novice
593 Views

Many thanks for your reply. It is very helpful. I had also added /parallel to the options. I made several changes until it worked. 

 

I started coding OpenMP directives directly but I had several issues. That is why I used automatic parallelization. Is there a way to see my code after intel autoparallelization with openMP. It will be helpful to learn better openMP if I can see how intel used openMP directives on my code.

I will have to update my Fortran compiler to get the ifix. What GPU hardware would I need to make it work with the new ifix compiler?

 

 

 

 

 

 

 

0 Kudos
Steve_Lionel
Honored Contributor III
570 Views

You can't see the parallelized Fortran code, though you can ask for an optimization report that will tell you what it did and didn't parallelize.

The new compiler is ifx, not ifix. It works with Intel GPUs (at present, the ones integrated with the CPU, but I assume it will work with the upcoming Intel Arc GPUs. Theoretically, it could also be made to work with other vendors' GPUs, but that would require them to supply the appropriate oneAPI library.

FortranUser22
Novice
564 Views

Thank you very much for your reply. 

0 Kudos
FortranUser22
Novice
560 Views

My computer uses the following CPU: Intel Xeon Processor E52670 v3 30M Cache 2.30 GHz Product Specifications

It does not have integrated GPU. I have to purchase either intel CPU with integrated GPU or the coming intel Arc GPU.

0 Kudos
Reply