[cfe-dev] [RFC] C++17 Parallel STL ∥ a new project

JF Bastien via cfe-dev cfe-dev at lists.llvm.org
Wed Dec 19 09:55:11 PST 2018

Hello parallelism enthusiasts!

As discussed a while on this list, Intel was interested in contributing its Parallel STL implementation to the LLVM, and contributing with a variety of folks on future work. They’ve now done so here:

https://reviews.llvm.org/D55889 <https://reviews.llvm.org/D55889>

The initial contribution is under the current LLVM license (instead of the new one).

You can clone the repository with:

git clone https://git.llvm.org/git/pstl.git/ <https://git.llvm.org/git/pstl.git/>
git svn init https://llvm.org/svn/llvm-project/pstl/trunk —username=santa
git svn rebase -l

All future contributions will go through the usual code review process for LLVM:  https://llvm.org/docs/DeveloperPolicy.html <https://llvm.org/docs/DeveloperPolicy.html>



> On Aug 21, 2018, at 2:13 PM, JF Bastien <jfbastien at apple.com> wrote:
> Hello parallelism enthusiasts!
> C++17 adds support for “Parallel STL <https://wg21.link/p0024>”, and neither libc++ nor libstdc++ have an implementation. Apple, RedHat, and Intel want to begin implementation work under the umbrella of the LLVM Foundation.
> What we’re suggesting
> Create a new repository, under the LLVM Foundation, to host Parallel STL work. This includes an implementation which can support multiple backends, correctness tests, and performance tests.
> This repository will be importable into libc++ <https://libcxx.llvm.org/> and libstdc++ <https://gcc.gnu.org/onlinedocs/libstdc++/>. Details will be worked out later as this will be experimental for a while.
> Contributions occur as usual, under LLVM’s contribution policy <https://llvm.org/docs/Contributing.html> (specifically, the revised <http://llvm.org/foundation/relicensing/devpolicy.patch> policy <http://llvm.org/foundation/relicensing/devpolicy.patch>).
> New mailing lists will be created for the project (pstl-dev@ and pstl-commits@), as well as new bugzilla components, and associated Phabricator setup.
> Intel will seed this new repository with the code from their initial implementation <https://github.com/intel/parallelstl/>.
> This repository will be exclusively under LLVM’s new license: Apache 2.0 with LLVM Exception <http://llvm.org/foundation/relicensing/>. That is, not dual-licensed under both the old and the new licenses.
> Apple’s Louis Dionne, RedHat’s Tom Rodgers, and Intel’s Mikhail Dvorskiy sign up to implement and maintain code in this repository. Marshall Clow will also participate in his capacity as libc++ code owner.
> We foresee this implementation as being ready for experimental distribution in the LLVM 8 and GCC 9 timeframes. We have no commitment to when an implementation will be deemed stable because we need to figure out ABIs, backends, etc.
> We look forward to getting developer feedback from such an experimental distribution.
> Future work will help inform the direction of C++20 and beyond. In particular, work towards Executors <https://wg21.link/p0761> and Networking <https://wg21.link/p0958> are closely tied to the Parallel STL and there’s a Parallel STL v2 <https://wg21.link/n4706> (Electric Boogaloo).
> Request for Comments
> The LLVM Foundation’s Board approves of this plan. We want to make sure that the wider community also approves. We’d also like to hear from anyone interested in helping with this work as well as integration into libc++ and libstdc++.
> Upcoming Discussions
> Tom will present this work at CppCon <http://sched.co/FnKl>.
> Louis will hold a BoF at the LLVM Developer’s meeting <https://llvm.org/devmtg/2018-10/>.
> Thanks,
> JF

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20181219/733cc80c/attachment.html>

More information about the cfe-dev mailing list