[libcxx-dev] Parallel STL

Christopher Nelson via libcxx-dev libcxx-dev at lists.llvm.org
Tue Sep 15 12:40:05 PDT 2020


Okay, that makes sense. I can see how you might want to use Grand Central
Dispatch on macOS, and the Windows system thread pool on Windows. I'm not
really sure what that means for Linux, though. Other than maybe pthreads,
which is not great.

Is there any documentation on what is needed to create a backend? Or are
there perhaps already plans in motion? I don't want to step on any toes,
but I would love to have a usable pstl on macOS and Linux for the next LLVM
release. We use libc++ on Linux as well as macOS. Depending on what's
involved, I might be able to contribute a backend for those two platforms.

On Tue, Sep 15, 2020 at 2:50 PM Louis Dionne <ldionne at apple.com> wrote:

> Hi,
>
> Long story short, the PSTL is pretty much ready to be shipped with LLVM. I
> did the integration between it and libc++, and it all worked last time I
> checked. I think the next step would be to change whatever LLVM scripts are
> used to create releases to also install the PSTL, which is the part I
> haven't had time to look into yet.
>
> That being said, the PSTL will then default to using the Serial backend,
> which isn't very useful. We could decide to ship a different backend if we
> wanted, however I think what makes sense is to use a backend specific to
> the platform we're running on instead of adding a dependency to LLVM.
>
> Louis
>
> > On Sep 8, 2020, at 08:25, Christopher Nelson via libcxx-dev <
> libcxx-dev at lists.llvm.org> wrote:
> >
> > Hello friends,
> >
> > I have spent some time looking at the mailing archives and git logs for
> the parallel STL. I'm not clear what state it is in, since the oneAPI/tbb
> seems to be production ready and comes with the parallel STL. Also, it
> appears the GCC has shipped a PSTL based on the same code that clang is
> using.
> >
> > I was wondering if someone could clarify for me what state the PSTL is
> in, and if there is some work needed to help get it over the finish line I
> may be able to help. I'm very interested in using it in our production
> software, so I'm a motivated helper. :-)
> >
> > Thank you for your time,
> > -={C}=-
> > _______________________________________________
> > libcxx-dev mailing list
> > libcxx-dev at lists.llvm.org
> > https://lists.llvm.org/cgi-bin/mailman/listinfo/libcxx-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/libcxx-dev/attachments/20200915/e05d1e74/attachment.html>


More information about the libcxx-dev mailing list