[llvm-dev] PSA: Parallel STL algorithms available in LLVM

Bryce Lelbach via llvm-dev llvm-dev at lists.llvm.org
Wed May 10 22:14:40 PDT 2017


On May 10, 2017 9:14 PM, "Hal Finkel" <hfinkel at anl.gov> wrote:

On 05/10/2017 10:36 PM, Zachary Turner via llvm-dev wrote:

It's hard to say.  By definition it appears undefined (in the sense that
the TS literally does not define it), but on the other hand it is a TS and
this issue would (hopefully) come up and be specified before it made it to
standardization.


You mean the parallelism TS that was voted into C++17? ;)

Bryce, did they end up defining this?


TL;DR: ... $*!#

I'll take a full look at this tomorrow


 -Hal


Supporting recursive parallel calls certainly seems like desirable
behavior, so from my point of view it would be nice to make sure it works.
Not sure if others feel differently.

On Wed, May 10, 2017 at 8:08 PM Scott Smith <scott.smith at purestorage.com>
wrote:

> The spec doesn't seem to say anything about recursive calls to parallel
> functions.  In my mind that means the functions must support it, since it
> doesn't explicitly say it does not need to support it.  Do you think that's
> accurate?
>
> If so, I'll rely on that behavior in LLDB, and extend the implementation
> in LLVM accordingly.
>
> On Wed, May 10, 2017 at 5:37 PM, Zachary Turner via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> Hi all,
>>
>> This is just a PSA that as of r302752, 3 parallel algorithms (for_each,
>> for_each_n, and sort) are available in llvm/Support/Parallel.h.
>>
>> Effort was made to match the C++ Parallelism TS N4507 [
>> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4507.pdf] as
>> closely as possible, but some aspects were intentionally omitted.
>>
>> No support is added for the executor proposal N4406 [
>> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4406.pdf], but
>> I plan to try to work on this in the future, with no specified timeline.
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170510/6a2a13e5/attachment.html>


More information about the llvm-dev mailing list