[LLVMdev] multi-threading in llvm

Tobias Grosser tobias at grosser.es
Mon Sep 12 08:44:16 PDT 2011


On 09/12/2011 04:28 PM, Sebastian Pop wrote:
> Hi Alexandra,
>
> On Thu, Sep 8, 2011 at 13:53, Jimborean Alexandra<xinfinity_a at yahoo.com>  wrote:
>> I had a look at the CodeGeneration from Polly. Is it possible to use it
>> without creating the Scops, by transforming it into a LoopPass?
>
> Yes.  If you don't want to use the autopar of Polly and just rely on
> the pragmas inserted by the programmer, you don't need SCoPs.
> You can have the parallel code generation part of Polly working as
> a LoopPass.
Are you sure about this? In CodeGeneration we basically translate a 
CLooG AST into LLVM-IR. Without a CLooG AST this does not work.

> If you want to use the auto-parallelization part of Polly, you have to
> to restrict the form of the code on which data dependences can be
> computed: this is done by using SCoPs (Static Control Parts).

In Polly we just generate OpenMP calls, if we need them. We do not 
provide a generic OpenMP infrastructure (Something nice to have in LLVM 
and where I would love to contribute). However, such a generic 
infrastructure has a broader SCoP than the single specific OpenMP 
pattern we implemented in Polly.

Cheers
Tobi






More information about the llvm-dev mailing list