A new WG21 paper is available. A copy is linked below, and the paper will also appear in the next normal WG21 mailing. If you are not a committee member, please use the comments section below or the std-proposals forum for public discussion.
Document number: N3831
by Robert Geva and Clark Nelson
This document proposes a language extension for vector level parallel programming (vector programming) as an extension to C++. It is based on both Cilk Plus and OpenMP 4.0, which have almost exactly the same mutual capability in regard to vector parallelism, however with keywords-based syntax instead of pragma-based syntax.
Both parallel loops and SIMD loops, in OpenMP and in Cilk Plus, require that the loops are “countable loops”. While the proposal does not suggest adding countable loops to the language as a distinct feature, the document presents the concept separately, so that it can be reused for both parallel loops and SIMD loops. The constructs actually being proposed are:
- Array notations (in part II)
- SIMD loops
- SIMD enabled functions.