Automatic parallelization in 4.3?

Craig Powers enigma@hal-pc.org
Tue Oct 24 07:05:00 GMT 2006


Brian Taylor wrote:
> I noticed that the GCC 4.3 projects page mentions plans for automatic
> parallelization of loops using the framework developed for OpenMP (see
> http://gcc.gnu.org/wiki/AutomaticParallelization ).  I was wondering
> if there are any specific plans to support the Fortran 95 forall
> construct.  These types of loops can be manually parallelized using
> the OpenMP "workshare" directive.
> 
> Since all procedures within a forall construct must be pure (i.e. have
> no side effects), it seems like they should be easier to analyze and
> auto-parallelize than normal do loops.  For similar reasons, the
> "where" statement might be another candidate for auto-parallelization.
> 
> I found one post by Zdenek Dvorak regarding auto-parallelization, but
> it doesn't mention Fortran AFAICT.  See
> http://gcc.gnu.org/ml/gcc-patches/2006-09/msg01243.html
> 
> Any comments?  I can post a request for enhancement on bugzilla if it
> would be useful.

One comment -- for my use of Fortran in a cluster environment, I 
actually prefer to avoid use of additional processor cores because they 
are controlled resources managed by the cluster's master scheduler.  So 
if I were to use gfortran to build my group's code, I would prefer to be 
able to turn something like this off easily, preferably without 
compromising other optimizations.

(It's not clear to me from glancing through the patch, as a casual user, 
whether this is easy to turn off, independently of other options.)



More information about the Fortran mailing list