Displaying 3 results from an estimated 3 matches for "block_closur".
Did you mean:
block_closure
2012 Sep 26
0
[LLVMdev] [RFC] Parallelization metadata and intrinsics in LLVM (for OpenMP, etc.)
...ssible to lower all OpenMP directives to the above four
intrinsics in the frontend (please read this in conjunction with [1]):
Parallel regions can be lowered as a parallel_map with
@llvm.num_threads as the limit.
```
#pragma PARALLEL
block
```
desugars to
```
@llvm.parallel_map(num_threads, block_closure, shared_closure)
...
void block_closure(i32 tid, i8* shared_vars) {
block
}
```
Reductions are handled by a parallel_map followed by a regular
reduction loop (exactly as in Hal's proposal).
Serial blocks reduce to a block conditional on the index inside the
function being parallelly mapped...
2012 Aug 14
4
[LLVMdev] [RFC] Parallelization metadata and intrinsics in LLVM (for OpenMP, etc.)
On Tue, 14 Aug 2012 10:22:35 +0300
Pekka Jääskeläinen <pekka.jaaskelainen at tut.fi> wrote:
> On 08/13/2012 10:54 PM, Hal Finkel wrote:
> > I had thought about uses for shared-memory OpenCL implementations,
> > but I don't know enough about the use cases to make a specific
> > proposal. Is your metadata documented anywhere?
>
> It is now a quick "brute
2012 Sep 26
1
[LLVMdev] [RFC] Parallelization metadata and intrinsics in LLVM (for OpenMP, etc.)
...ssible to lower all OpenMP directives to the above four
intrinsics in the frontend (please read this in conjunction with [1]):
Parallel regions can be lowered as a parallel_map with
@llvm.num_threads as the limit.
```
#pragma PARALLEL
block
```
desugars to
```
@llvm.parallel_map(num_threads, block_closure, shared_closure)
...
void block_closure(i32 tid, i8* shared_vars) {
block
}
```
Reductions are handled by a parallel_map followed by a regular
reduction loop (exactly as in Hal's proposal).
Serial blocks reduce to a block conditional on the index inside the
function being parallelly mapped...