diff options
author | Tobias Grosser <grosser@fim.uni-passau.de> | 2012-04-17 21:38:20 +0000 |
---|---|---|
committer | Tobias Grosser <grosser@fim.uni-passau.de> | 2012-04-17 21:38:20 +0000 |
commit | 105c984b511536a992aeaf63278eef7c53912a0c (patch) | |
tree | 167aa02531ee46c0b2aaee7447acf16a8ef36c5b /polly/www | |
parent | 37f6dcb3a8655e827a2f8b2aab195524aaf634f5 (diff) | |
download | bcm5719-llvm-105c984b511536a992aeaf63278eef7c53912a0c.tar.gz bcm5719-llvm-105c984b511536a992aeaf63278eef7c53912a0c.zip |
www: Update matmul example slightly.
llvm-svn: 154952
Diffstat (limited to 'polly/www')
6 files changed, 23 insertions, 24 deletions
diff --git a/polly/www/example_manual_matmul.html b/polly/www/example_manual_matmul.html index b94e27ea3c4..bc404f5d80a 100644 --- a/polly/www/example_manual_matmul.html +++ b/polly/www/example_manual_matmul.html @@ -22,9 +22,9 @@ which analysis is performed or what transformation is applied. In this example the polyhedral transformation is user-provided to show how much performance improvement can be expected by an optimal automatic optimizer.</p> -The files used and created in this example are available <a -href="experiments/matmul">here</a>. They can be created automatically by running -the <a href="experiments/matmul/runall.sh">runall.sh</a> script. +The files used and created in this example are available in the Polly checkout +in the folder <em>www/experiments/matmul</em>. They can be created automatically +by running the <em>www/experiments/matmul/runall.sh</em> script. <ol> <li><h4>Create LLVM-IR from the C code</h4> @@ -57,7 +57,7 @@ the LLVM-IR into this form we use a set of canonicalication passes. For this example only three passes are necessary. To get good coverage on more complicated input files often more canonicalization passes are needed. pollycc contains a list of passes that have shown to be beneficial. -<pre class="code">opt -S -mem2reg -loop-simplify -indvars matmul.s > matmul.preopt.ll</pre></li> +<pre class="code">opt -S -mem2reg -loop-simplify -polly-indvars matmul.s > matmul.preopt.ll</pre></li> <li><h4>Show the SCoPs detected by Polly (optional)</h4> @@ -232,9 +232,8 @@ changed. These changed schedules are used to descripe transformations. It is possible to import different jscop files by providing the postfix of the jscop file that is imported.</p> <p> We apply three different transformations on the SCoP in the main function. -The jscop files describing these transformations are hand written. If PoCC is -installed Polly can sometimes calculate such schedules fully automatically. -Hwever, this is still an area we are actively working on.</p> +The jscop files describing these transformations are hand written (and available +in <em>www/experiments/matmul</em>). <h5>No Polly</h5> diff --git a/polly/www/experiments/matmul/main___%1---%17.jscop b/polly/www/experiments/matmul/main___%1---%17.jscop index a3692e52829..c37839525ad 100644 --- a/polly/www/experiments/matmul/main___%1---%17.jscop +++ b/polly/www/experiments/matmul/main___%1---%17.jscop @@ -1,5 +1,5 @@ { - "context" : "{ [] }", + "context" : "{ : }", "name" : "%1 => %17", "statements" : [ { diff --git a/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged b/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged index d992fe949aa..1d73c8a9fdf 100644 --- a/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged +++ b/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged @@ -6,7 +6,7 @@ "accesses" : [ { "kind" : "write", - "relation" : "{ Stmt_4[i0, i1] -> MemRef_C[1067i0 + i1] }" + "relation" : "{ Stmt_4[i0, i1] -> MemRef_C[1536i0 + i1] }" } ], "domain" : "{ Stmt_4[i0, i1] : i0 >= 0 and i0 <= 1023 and i1 >= 0 and i1 <= 1023 }", @@ -17,19 +17,19 @@ "accesses" : [ { "kind" : "read", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1067i0 + i1] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1536i0 + i1] }" }, { "kind" : "read", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_A[1037i0 + i2] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_A[1536i0 + i2] }" }, { "kind" : "read", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_B[i1 + 1047i2] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_B[i1 + 1536i2] }" }, { "kind" : "write", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1067i0 + i1] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1536i0 + i1] }" } ], "domain" : "{ Stmt_6[i0, i1, i2] : i0 >= 0 and i0 <= 1023 and i1 >= 0 and i1 <= 1023 and i2 >= 0 and i2 <= 1023 }", diff --git a/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged+tiled b/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged+tiled index 29fcca55f3f..ab68b5ebda2 100644 --- a/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged+tiled +++ b/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged+tiled @@ -6,7 +6,7 @@ "accesses" : [ { "kind" : "write", - "relation" : "{ Stmt_4[i0, i1] -> MemRef_C[1067i0 + i1] }" + "relation" : "{ Stmt_4[i0, i1] -> MemRef_C[1536i0 + i1] }" } ], "domain" : "{ Stmt_4[i0, i1] : i0 >= 0 and i0 <= 1023 and i1 >= 0 and i1 <= 1023 }", @@ -17,19 +17,19 @@ "accesses" : [ { "kind" : "read", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1067i0 + i1] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1536i0 + i1] }" }, { "kind" : "read", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_A[1037i0 + i2] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_A[1536i0 + i2] }" }, { "kind" : "read", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_B[i1 + 1047i2] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_B[i1 + 1536i2] }" }, { "kind" : "write", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1067i0 + i1] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1536i0 + i1] }" } ], "domain" : "{ Stmt_6[i0, i1, i2] : i0 >= 0 and i0 <= 1023 and i1 >= 0 and i1 <= 1023 and i2 >= 0 and i2 <= 1023 }", diff --git a/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged+tiled+vector b/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged+tiled+vector index 62a444d0b8a..67a1cd9c3f0 100644 --- a/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged+tiled+vector +++ b/polly/www/experiments/matmul/main___%1---%17.jscop.interchanged+tiled+vector @@ -6,7 +6,7 @@ "accesses" : [ { "kind" : "write", - "relation" : "{ Stmt_4[i0, i1] -> MemRef_C[1067i0 + i1] }" + "relation" : "{ Stmt_4[i0, i1] -> MemRef_C[1536i0 + i1] }" } ], "domain" : "{ Stmt_4[i0, i1] : i0 >= 0 and i0 <= 1023 and i1 >= 0 and i1 <= 1023 }", @@ -17,19 +17,19 @@ "accesses" : [ { "kind" : "read", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1067i0 + i1] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1536i0 + i1] }" }, { "kind" : "read", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_A[1037i0 + i2] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_A[1536i0 + i2] }" }, { "kind" : "read", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_B[i1 + 1047i2] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_B[i1 + 1536i2] }" }, { "kind" : "write", - "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1067i0 + i1] }" + "relation" : "{ Stmt_6[i0, i1, i2] -> MemRef_C[1536i0 + i1] }" } ], "domain" : "{ Stmt_6[i0, i1, i2] : i0 >= 0 and i0 <= 1023 and i1 >= 0 and i1 <= 1023 and i2 >= 0 and i2 <= 1023 }", diff --git a/polly/www/experiments/matmul/runall.sh b/polly/www/experiments/matmul/runall.sh index 613db1c4123..7ce0e8f0b09 100755 --- a/polly/www/experiments/matmul/runall.sh +++ b/polly/www/experiments/matmul/runall.sh @@ -8,7 +8,7 @@ export PATH_TO_POLLY_LIB="~/polly/build/lib/" alias opt="opt -load ${PATH_TO_POLLY_LIB}/LLVMPolly.so" echo "--> 3. Prepare the LLVM-IR for Polly" -opt -S -mem2reg -loop-simplify -indvars matmul.s > matmul.preopt.ll +opt -S -mem2reg -loop-simplify -polly-indvars matmul.s > matmul.preopt.ll echo "--> 4. Show the SCoPs detected by Polly" opt -basicaa -polly-cloog -analyze -q matmul.preopt.ll |