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

Auto-parallelization in Intel Compilers

postaquestion
Novice
536 Views

I am looking at buying your new fortran compiler with auto-parallelization. This would be incredibly powerful to work with my genetics research.

I am currently trying to decide between two strategies of parallel computing; either I can purchase one monster computer with 8 cores, or I can purchase 16 smaller systems with the Q6600 processors and gigabit ethernet capabilities.

If it is possible, I would much prefer to purchase several small computers rather than a single large computer, due to increased computing capabilities. However, truth be told, I am not by any means a computer scientist. If it were necessary for me to manually program multiple computers for parallel processing, I would not be able to do it.

So, are either of your linux or intel fortran compilers capable of auto-parallelization across multiple computers through gigabit ethernet? Thank you very much for your help!


0 Kudos
2 Replies
Steven_L_Intel1
Employee
536 Views
No - all of the compiler's support for parallelization, whether it be automatic or OpenMP, is for single systems with multiple processors/cores. The type of distributed parallel you mention is most often done with an MPI library, but you must add code for this yourself.

I will comment that auto-parallelization is not a magic wand. It can help in many situations, but its effectiveness is highly dependent on your coding style as it tends to be conservative. Typically you'll get more parallelization with OpenMP, but this requires some code work on your part (not as much as for MPI.)
0 Kudos
TimP
Honored Contributor III
536 Views
A dual quad core system is an easier step than multiple single socket systems.
The Cluster OpenMP option in ifort has a limited capability to extend OpenMP parallelism to multiple systems.

Intel compiler auto-parallelization is set to be conservative, as Steve says, with an option to make it less conservative. That option helps find opportunities for parallelization, but it is up to you to evaluate their usefulness, and select the good ones for OpenMP directives.
0 Kudos
Reply