[cfe-dev] [Openmp-dev] [llvm-dev] RFC: Proposing an LLVM subproject for parallelism runtime and support libraries

Carlo Bertolli via cfe-dev cfe-dev at lists.llvm.org
Fri Apr 22 18:50:38 PDT 2016


Hi Chandler

About your points:

> 3) Initially, leave the OpenMP offloading stuff targeted at OpenMP. Then,
as it evolves, consider moving it to be another runtime in the broad
project if and when it makes sense.
> 4) As both OpenMP and SE evolve and are used some in the project,
evaluate whether there is a common core that makes sense to extract. If so,
do it and rebase them appropriately.

I agree with you.

I had some discussion within my group and there seems to be some agreement
that OpenMP offloading, if properly extended, could be used as a plugin for
SE. As time progresses and we learn more about SE we will be able to
re-evaluate this.

Thanks

-- Carlo



From:	Chandler Carruth via cfe-dev <cfe-dev at lists.llvm.org>
To:	Mehdi Amini <mehdi.amini at apple.com>, Jason Henline
            <jhen at google.com>, Hal Finkel <hfinkel at anl.gov>
Cc:	llvm-dev <llvm-dev at lists.llvm.org>, cfe-dev
            <cfe-dev at lists.llvm.org>, "openmp-dev at lists.llvm.org"
            <openmp-dev at lists.llvm.org>
Date:	04/22/2016 06:02 PM
Subject:	Re: [cfe-dev] [Openmp-dev] [llvm-dev] RFC: Proposing an LLVM
            subproject for parallelism runtime and support libraries
Sent by:	"cfe-dev" <cfe-dev-bounces at lists.llvm.org>



I feel like this thread got a bit stalled. I'd like to pick it up and try
to suggest a path forward.

I don't hear any real objections to the overall idea of having an LLVM
subproject for parallelism runtimes and support libraries. I think we
should get that created.

I don't actually see any real objections to StreamExecutor being one of the
runtimes. There are some interesting questions however:
- Is there common code in the OpenMP runtime that could be unified with
this?
- Could OpenMP end up using SE or some common shared library between them
as a basis for offloading?
- Would instead it make more sense to have the OpenMP offload library be a
plugin for StreamExecutor?

I don't know the answer to any of these really, but I also don't think that
they should prevent us from making progress here. And I think if anything,
they'll become easier to answer if we do.

So my suggestion would be:
1) Create the broader scoped LLVM subproject, including writing up its
charter, scope, plans, etc.

2) Add stream executor to it

3) Initially, leave the OpenMP offloading stuff targeted at OpenMP. Then,
as it evolves, consider moving it to be another runtime in the broad
project if and when it makes sense.

4) As both OpenMP and SE evolve and are used some in the project, evaluate
whether there is a common core that makes sense to extract. If so, do it
and rebase them appropriately.


Does this make sense? Are there objections to moving forward here?
_______________________________________________
cfe-dev mailing list
cfe-dev at lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20160422/5bdbaa4f/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: graycol.gif
Type: image/gif
Size: 105 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20160422/5bdbaa4f/attachment.gif>


More information about the cfe-dev mailing list