#+title: Vericert Scheduling Results
#+html_head_extra:
* Raw results
#+name: raw-vericert
#+caption: Vericert base results.
| name | slice | ramfifo | delay | cycles |
|----------------+-------+---------+-------+---------|
| 2mm | 1764 | 4 | 4.59 | 467612 |
| 3mm | 1940 | 8 | 4.56 | 604582 |
| adi | 3238 | 4 | 4.764 | 1831462 |
| atas | 599 | 4 | 4.539 | 101618 |
| bicg | 930 | 4 | 4.692 | 130790 |
| cholesky | 1898 | 8 | 4.877 | 2575070 |
| covariance | 557 | 4 | 4.271 | 340794 |
| doitgen | 1167 | 4 | 4.305 | 386782 |
| durbin | 737 | 1 | 9.702 | 23832 |
| fdtd-2d | 1517 | 4 | 4.467 | 958412 |
| floyd-warshall | 894 | 8 | 4.473 | 5414366 |
| gemm | 1110 | 4 | 4.609 | 406774 |
| gemver | 1121 | 4 | 4.684 | 193048 |
| gesummv | 991 | 4 | 4.719 | 116556 |
| heat-3d | 1458 | 4 | 4.734 | 592770 |
| jacobi-1d | 454 | 1 | 4.248 | 19996 |
| jacobi-2d | 891 | 4 | 4.378 | 397200 |
| lu | 1755 | 8 | 4.817 | 2893146 |
| ludcmp | 2584 | 8 | 4.695 | 2641694 |
| mvt | 1704 | 4 | 4.686 | 148874 |
| nussinov | 981 | 8 | 4.467 | 956490 |
| seidel-2d | 728 | 4 | 4.386 | 942338 |
| symm | 1562 | 4 | 4.608 | 279832 |
| syr2k | 1369 | 8 | 4.543 | 525908 |
| syrk | 899 | 4 | 4.502 | 338286 |
| trisolv | 474 | 4 | 4.541 | 36050 |
| trmm | 889 | 2 | 4.384 | 165828 |
#+name: raw-vericert-list
#+caption: Results for list scheduling.
| name | slice | ramfifo | delay | cycles |
|----------------+-------+---------+--------+---------|
| 2mm | 972 | 16 | 10.466 | 165471 |
| 3mm | 1194 | 32 | 10.113 | 261965 |
| adi | 1920 | 16 | 10.582 | 485316 |
| atas | 421 | 16 | 4.526 | 59798 |
| bicg | 715 | 16 | 4.668 | 94772 |
| cholesky | 829 | 32 | 11.385 | 517257 |
| covariance | 549 | 16 | 4.577 | 203830 |
| doitgen | 633 | 16 | 10.756 | 109403 |
| durbin | 585 | 1 | 10.578 | 14641 |
| fdtd-2d | 838 | 16 | 4.433 | 480256 |
| floyd-warshall | 744 | 32 | 4.562 | 3536988 |
| gemm | 808 | 16 | 4.758 | 216926 |
| gemver | 844 | 16 | 14.507 | 101950 |
| gesummv | 750 | 16 | 10.707 | 84050 |
| heat-3d | 813 | 16 | 4.519 | 128098 |
| jacobi-1d | 269 | 1 | 4.135 | 10663 |
| jacobi-2d | 584 | 16 | 4.411 | 187405 |
| lu | 822 | 32 | 11.166 | 593194 |
| ludcmp | 1124 | 32 | 11.029 | 579252 |
| mvt | 973 | 16 | 12.178 | 87718 |
| nussinov | 679 | 32 | 4.716 | 637205 |
| seidel-2d | 432 | 16 | 4.331 | 365267 |
| symm | 883 | 16 | 4.82 | 133974 |
| syr2k | 878 | 32 | 4.792 | 232748 |
| syrk | 659 | 16 | 4.533 | 184897 |
| trisolv | 356 | 16 | 10.006 | 16966 |
| trmm | 566 | 8 | 4.366 | 88820 |
#+name: raw-vericert-hyper
#+caption: Results for hyperblock scheduling.
| name | slice | ramfifo | delay | cycles |
|----------------+-------+---------+--------+---------|
| 2mm | 1134 | 16 | 10.076 | 161455 |
| 3mm | 1267 | 32 | 10.017 | 257422 |
| adi | 2481 | 16 | 10.645 | 459394 |
| atas | 503 | 16 | 4.528 | 57966 |
| bicg | 835 | 16 | 4.54 | 89418 |
| cholesky | 1066 | 32 | 11.25 | 511897 |
| covariance | 565 | 16 | 4.543 | 203624 |
| doitgen | 678 | 16 | 10.735 | 105752 |
| durbin | 780 | 1 | 10.932 | 14448 |
| fdtd-2d | 963 | 16 | 4.604 | 476096 |
| floyd-warshall | 991 | 32 | 4.559 | 3479990 |
| gemm | 929 | 16 | 4.845 | 211833 |
| gemver | 897 | 16 | 14.22 | 96749 |
| gesummv | 929 | 16 | 10.089 | 77216 |
| heat-3d | 829 | 16 | 4.485 | 128048 |
| jacobi-1d | 328 | 1 | 4.282 | 10563 |
| jacobi-2d | 650 | 16 | 4.397 | 187275 |
| lu | 1067 | 32 | 11.411 | 587834 |
| ludcmp | 1448 | 32 | 10.565 | 573817 |
| mvt | 1243 | 16 | 11.735 | 82080 |
| nussinov | 840 | 32 | 4.55 | 593596 |
| seidel-2d | 440 | 16 | 4.533 | 365107 |
| symm | 1076 | 16 | 4.718 | 130841 |
| syr2k | 1006 | 32 | 4.724 | 225839 |
| syrk | 740 | 16 | 4.536 | 180421 |
| trisolv | 346 | 16 | 9.884 | 16849 |
| trmm | 696 | 8 | 4.529 | 87568 |
* Processing
#+name: vericert-processed-size
#+caption: Design size relative to Vericert.
| benchmark | vericert-list | vericert-hyper |
|----------------+---------------+----------------|
| 2mm | 1.8148148 | 1.5555556 |
| 3mm | 1.6247906 | 1.5311760 |
| adi | 1.6864583 | 1.3051189 |
| atas | 1.4228029 | 1.1908549 |
| bicg | 1.3006993 | 1.1137725 |
| cholesky | 2.2895054 | 1.7804878 |
| covariance | 1.0145719 | 0.98584071 |
| doitgen | 1.8436019 | 1.7212389 |
| durbin | 1.2598291 | 0.94487179 |
| fdtd-2d | 1.8102625 | 1.5752856 |
| floyd-warshall | 1.2016129 | 0.90211907 |
| gemm | 1.3737624 | 1.1948332 |
| gemver | 1.3281991 | 1.2497213 |
| gesummv | 1.3213333 | 1.0667384 |
| heat-3d | 1.7933579 | 1.7587455 |
| jacobi-1d | 1.6877323 | 1.3841463 |
| jacobi-2d | 1.5256849 | 1.3707692 |
| lu | 2.1350365 | 1.6447985 |
| ludcmp | 2.2989324 | 1.7845304 |
| mvt | 1.7512847 | 1.3708769 |
| nussinov | 1.4447717 | 1.1678571 |
| seidel-2d | 1.6851852 | 1.6545455 |
| symm | 1.7689694 | 1.4516729 |
| syr2k | 1.5592255 | 1.3608350 |
| syrk | 1.3641882 | 1.2148649 |
| trisolv | 1.3314607 | 1.3699422 |
| trmm | 1.5706714 | 1.2772989 |
#+tblfm: $1='(identity remote(raw-vericert,@@#$1))
#+tblfm: $2=(remote(raw-vericert,@@#$2))/(remote(raw-vericert-list,@@#$2))
#+tblfm: $3=(remote(raw-vericert,@@#$2))/(remote(raw-vericert-hyper,@@#$2))
#+name: vericert-processed-speed
#+caption: Execution time relative to Vericert.
| benchmark | vericert-list | vericert-hyper |
|----------------+---------------+----------------|
| 2mm | 0.10964074 | 0.11388448 |
| 3mm | 0.11272619 | 0.11380653 |
| adi | 0.11254961 | 0.11188351 |
| atas | 0.25071807 | 0.25060733 |
| bicg | 0.25128535 | 0.25837004 |
| cholesky | 0.10709267 | 0.10837778 |
| covariance | 0.23328600 | 0.23503192 |
| doitgen | 0.10006043 | 0.10025617 |
| durbin | 0.91718661 | 0.88748628 |
| fdtd-2d | 0.25191744 | 0.24256082 |
| floyd-warshall | 0.24512275 | 0.24528405 |
| gemm | 0.24217108 | 0.23782250 |
| gemver | 0.080719653 | 0.082348805 |
| gesummv | 0.11018493 | 0.11693428 |
| heat-3d | 0.26189422 | 0.26387960 |
| jacobi-1d | 1.0273277 | 0.99205979 |
| jacobi-2d | 0.24812968 | 0.24891972 |
| lu | 0.10784972 | 0.10553413 |
| ludcmp | 0.10642397 | 0.11109796 |
| mvt | 0.096198062 | 0.099829570 |
| nussinov | 0.23680025 | 0.24543956 |
| seidel-2d | 0.25317479 | 0.24189279 |
| symm | 0.23900415 | 0.24417126 |
| syr2k | 0.23700960 | 0.24042125 |
| syrk | 0.24829032 | 0.24812610 |
| trisolv | 0.11345693 | 0.11485735 |
| trmm | 0.25103069 | 0.24199603 |
#+tblfm: $1='(identity remote(raw-vericert,@@#$1))
#+tblfm: $2=(remote(raw-vericert,@@#$3) * remote(raw-vericert,@@#$4))/(remote(raw-vericert-list,@@#$3) * remote(raw-vericert-list,@@#$4))
#+tblfm: $3=(remote(raw-vericert,@@#$3) * remote(raw-vericert,@@#$4))/(remote(raw-vericert-hyper,@@#$3) * remote(raw-vericert-hyper,@@#$4))
* Plots
:PROPERTIES:
:CUSTOM_ID: plots
:END:
#+begin_src gnuplot :var data=vericert-processed-size :file ./static/5a22847d-9bd6-46e9-9e2c-1291d3f8c7b9.svg :exports results
reset
red = "#e07a5f"
blue = "#81b29a"
set style data histogram
set style fill solid
set log y
set yrange [1:3]
set ytics 0.5 nologscale
set ylabel "Design size relative to Vericert"
set xtics rotate nomirror
set title "Vericert size comparison"
plot data using 2:xtic(1) title "list" linecolor rgb red, \
data using 3 title "hyper" linecolor rgb blue
#+end_src
#+RESULTS:
[[file:./static/5a22847d-9bd6-46e9-9e2c-1291d3f8c7b9.svg]]
#+begin_src gnuplot :var data=vericert-processed-speed :file ./static/a95a49aa-9aa3-4e83-b3e0-767756736ec1.svg :exports results
reset
red = "#3d405b"
blue = "#f2cc8f"
set style data histogram
set style fill solid
set log y
set yrange [0.05:1.2]
set ytics 0.01,0.1,1
set ylabel "Execution time relative to Vericert"
set xtics rotate nomirror
set title "Vericert speed comparison"
plot data using 2:xtic(1) title "list" linecolor rgb red, \
data using 3 title "hyper" linecolor rgb blue
#+end_src
#+RESULTS:
[[file:./static/a95a49aa-9aa3-4e83-b3e0-767756736ec1.svg]]