<> :: (top_level) // top level task, single instance |
{
|
<> :: data_type p; // no domain for scalar variable |
// data App]p+1 |
-> <A_dom : a0,a1,a2> {0<=a0<p; 0<=a1<p; 0<=a2<p+1;}; |
<A_dom::array_A; |
// task seqCholesky |
->task1_dom:k>{0<=k<p;}; |
<task1_dom:: (task1) {body_id(“seqCholesky”);}; |
-> (task1:k) -; |
//task TriSolve |
-> <task2_dom : k,j>{0k<p; k+1j<p;}; |
<task2_dom:: (task2) {body_id(“TriSolve”);}; |
// task Update |
-> <task3_dom:k,j,i0k<p; k+1j<p; k+1ij;}; |
<task3_dom:: (task3) {body_id(“Update”);}; |
+,+ -> (task3 : k,j,i) -> ; |
//dependence |
(task2 : k,j) -> (task3 : k,j,(k+1)..j) |
;
|