search for: priv_i

Displaying 14 results from an estimated 14 matches for "priv_i".

2017 Jan 21
2
[RFC] IR-level Region Annotations
...t it confirms what multiple people expressed in this thread, for example what Daniel wrote here: http://lists.llvm.org/pipermail/llvm-dev/2017-January/108997.html — Mehdi > > { void main() { > i32* val = alloca i32 > i32* I = alloca 32 > i32* priv_val = alloca i32 > i32* priv_i alloca 32 > tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] > > %priv_i = omp_get_thread_num(); > compute_something_into_val(%priv_val, %priv_i); > a[priv_i] = %priv_...
2017 Feb 01
0
[RFC] IR-level Region Annotations
...t it confirms what multiple people expressed in this thread, for example what Daniel wrote here: http://lists.llvm.org/pipermail/llvm-dev/2017-January/108997.html — Mehdi > > { void main() { > i32* val = alloca i32 > i32* I = alloca 32 > i32* priv_val = alloca i32 > i32* priv_i alloca 32 > tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] > > %priv_i = omp_get_thread_num(); > compute_something_into_val(%priv_val, %priv_i); > a[priv_i] = %priv_...
2017 Feb 01
2
[RFC] IR-level Region Annotations
...is thread, for example what Daniel wrote here: http://lists.llvm.org/pipermail/llvm-dev/2017-January/108997.html > > — > Mehdi > > > >> >> { void main() { >> i32* val = alloca i32 >> i32* I = alloca 32 >> i32* priv_val = alloca i32 >> i32* priv_i alloca 32 >> tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] >> >> %priv_i = omp_get_thread_num(); >> compute_something_into_val(%priv_val, %priv_i); >> a[...
2017 Feb 01
0
[RFC] IR-level Region Annotations
...is thread, for example what Daniel wrote here: http://lists.llvm.org/pipermail/llvm-dev/2017-January/108997.html > > — > Mehdi > > > >> >> { void main() { >> i32* val = alloca i32 >> i32* I = alloca 32 >> i32* priv_val = alloca i32 >> i32* priv_i alloca 32 >> tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] >> >> %priv_i = omp_get_thread_num(); >> compute_something_into_val(%priv_val, %priv_i); >> a[...
2017 Jan 20
5
[RFC] IR-level Region Annotations
...is means that the optimizer has to be aware of it, I’m missing the magic here? I understand that an openmp specific optimization can do it, the question is how it an openmp agnostic supposed to behave in face of llvm.experimental.intrinsic_a? — Mehdi > 1. create i32* priv_val = alloca i32 %priv_i = ...in the region, and replace all %val with %prv_val in the region. > 2. perform outlining. > > Caller code > .... > omp_push_num_threads(4) > omp_fork_call( .... outline_par_region....) .... > > Callee code: > Outlined_par_rgion { > I32* priv_val = alloca 32...
2017 Feb 01
1
[RFC] IR-level Region Annotations
...ttp://lists.llvm.org/pipermail/llvm-dev/2017-January/108997.html >> >> — >> Mehdi >> >> >> >>> >>> { void main() { >>> i32* val = alloca i32 >>> i32* I = alloca 32 >>> i32* priv_val = alloca i32 >>> i32* priv_i alloca 32 >>> tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] >>> >>> %priv_i = omp_get_thread_num(); >>> compute_something_into_val(%priv_val, %priv_i)...
2017 Feb 01
0
[RFC] IR-level Region Annotations
...uary/108997.html >>> >>> — >>> Mehdi >>> >>> >>> >>>> >>>> { void main() { >>>> i32* val = alloca i32 >>>> i32* I = alloca 32 >>>> i32* priv_val = alloca i32 >>>> i32* priv_i alloca 32 >>>> tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] >>>> >>>> %priv_i = omp_get_thread_num(); >>>> compute_something_into_val(%pr...
2017 Feb 01
2
[RFC] IR-level Region Annotations
...t place seems to indicate to me that it confirms what multiple people expressed in this thread, for example what Daniel wrote here: http://lists.llvm.org/pipermail/llvm-dev/2017-January/108997.html — Mehdi { void main() { i32* val = alloca i32 i32* I = alloca 32 i32* priv_val = alloca i32 i32* priv_i alloca 32 tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] %priv_i = omp_get_thread_num(); compute_something_into_val(%priv_val, %priv_i); a[priv_i] = %priv_val; llvm.experimental.intrinsi...
2017 Feb 01
0
[RFC] IR-level Region Annotations
...ists.llvm.org/pipermail/llvm-dev/2017-January/108997.html <http://lists.llvm.org/pipermail/llvm-dev/2017-January/108997.html> > > — > Mehdi > > > > > { void main() { > i32* val = alloca i32 > i32* I = alloca 32 > i32* priv_val = alloca i32 > i32* priv_i alloca 32 > tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] > > %priv_i = omp_get_thread_num(); > compute_something_into_val(%priv_val, %priv_i); > a[priv_i] = %priv_val;...
2017 Feb 01
2
[RFC] IR-level Region Annotations
...t place seems to indicate to me that it confirms what multiple people expressed in this thread, for example what Daniel wrote here: http://lists.llvm.org/pipermail/llvm-dev/2017-January/108997.html — Mehdi { void main() { i32* val = alloca i32 i32* I = alloca 32 i32* priv_val = alloca i32 i32* priv_i alloca 32 tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] %priv_i = omp_get_thread_num(); compute_something_into_val(%priv_val, %priv_i); a[priv_i] = %priv_val; llvm.experimental.intrinsi...
2017 Feb 01
2
[RFC] IR-level Region Annotations
...ists.llvm.org/pipermail/llvm-dev/2017-January/108997.html <http://lists.llvm.org/pipermail/llvm-dev/2017-January/108997.html> > > — > Mehdi > > > > > { void main() { > i32* val = alloca i32 > i32* I = alloca 32 > i32* priv_val = alloca i32 > i32* priv_i alloca 32 > tok = llvm.experimental.intrinsic_a()[ "DIR.PARALLEL"(),"QUAL.PRIVATE"(i32* %priv_val, i32 %priv_i), "QUAL.NUM_THREADS"(i32 4)] > > %priv_i = omp_get_thread_num(); > compute_something_into_val(%priv_val, %priv_i); > a[priv_i] = %priv_val;...
2017 Jan 20
9
[RFC] IR-level Region Annotations
Hi Sanjoy, Yes, that's exactly what we have been looking at recently here, but the region tags seem to make it possible to express the control flow as well, so I think we could start with reg ions+metadata, as Hal and Xinmin proposed, and then figure out what needs to be first class instructions. --Vikram Adve > On Jan 19, 2017, at 11:03 PM, Sanjoy Das <sanjoy at
2017 Jan 20
3
[RFC] IR-level Region Annotations
...missing the magic > here? > I understand that an openmp specific optimization can do it, the question is > how it an openmp agnostic supposed to behave in face of > llvm.experimental.intrinsic_a? > > — > Mehdi > > > > >> 1. create i32* priv_val = alloca i32 %priv_i = ...in the region, and >> replace all %val with %prv_val in the region. >> 2. perform outlining. >> >> Caller code >> .... >> omp_push_num_threads(4) >> omp_fork_call( .... outline_par_region....) .... >> >> Callee code: >> Outlined_par_...
2017 Feb 01
1
[RFC] IR-level Region Annotations
...ssing the > magic here? > I understand that an openmp specific optimization can do it, the > question is how it an openmp agnostic supposed to behave in face of > llvm.experimental.intrinsic_a? > > — > Mehdi > > > > >> 1. create i32* priv_val = alloca i32 %priv_i = ...in the region, and >> replace all %val with %prv_val in the region. >> 2. perform outlining. >> >> Caller code >> .... >> omp_push_num_threads(4) >> omp_fork_call( .... outline_par_region....) .... >> >> Callee code: >> Outlined_par...