[prev in list] [next in list] [prev in thread] [next in thread]
List: gcc-fortran
Subject: Re: Automatic parallelization in 4.3?
From: Tobias Burnus <burnus () gmx ! de>
Date: 2006-10-24 14:27:39
Message-ID: 453E22DB.602 () gmx ! de
[Download RAW message or body]
Hi Zdenek,
Zdenek Dvorak wrote:
>> 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
>
> the autoparallelization we currently develop is language-independent
> (it runs together with other loop optimizations quite late in the
> compilation process), so I cannot do anything strictly fortran specific.
As it came up as question and I wonder myself:
Your patch (link above) uses:
+ @item -ftree-parallelize-loops=@var{n}
+ Automatically generate parallel code using the primitives from
+ libgomp. Create parallel code for @var{n} threads.
The question is: Why does one need to specify the number of processors
at compile time? Using OpenMP this is done at run time via
OMP_NUM_THREADS.
It might be nice to have optionally the possibility to specify the
number of threads at compile time since this (as I assume) makes
optimization easier. But I think using a variable number of threads
makes sense (and this is what the Intel Compiler do if you specify
-parallel).
> It should be possible to pass some information from fortran frontend
> (like the fact that the procedures in forall constructs are pure) to the
> optimizers, which might make it possible to parallelize the
> corresponding loops (and it could also help other optimizations).
Do you know how to pass this information?
Tobias
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic