Displaying 2 results from an estimated 2 matches for "barrier2".
Did you mean:
barrier
2012 Dec 01
6
[LLVMdev] [RFC] "noclone" function attribute
...e* next state. This is guaranteed by the OpenCL spec.
Let's apply jump threading to that kernel:
kernel void k() {
if (x()) {
y();
barrier();
z();
} else {
barrier();
w();
}
}
Oh dear. Now, we'd end up creating a state machine with four states - START, BARRIER1, BARRIER2 and END. It is no longer guaranteed that all workitems will hit the same barrier, because we've broken an invariant the user guaranteed. Our optimisation has been broken.
2012 Dec 02
0
[LLVMdev] [RFC] "noclone" function attribute
...e* next state. This is guaranteed by the OpenCL spec.
Let's apply jump threading to that kernel:
kernel void k() {
if (x()) {
y();
barrier();
z();
} else {
barrier();
w();
}
}
Oh dear. Now, we'd end up creating a state machine with four states - START, BARRIER1, BARRIER2 and END. It is no longer guaranteed that all workitems will hit the same barrier, because we've broken an invariant the user guaranteed. Our optimisation has been broken.
_______________________________________________
LLVM Developers mailing list
LLVMdev at cs.uiuc.edu http://llvm.cs...