this is for holding javascript data
dcdelia
over 8 years ago
Commit id: 35a80abe48db285fa27da4a7c0ef56eea575628b
deletions | additions
diff --git a/artifact/session3.tex b/artifact/session3.tex
index 6846178..f76679e 100644
--- a/artifact/session3.tex
+++ b/artifact/session3.tex
...
$ ./mcvm -jit_feval_opt false <
benchmarks/scripts/base/odeRK4
***********************************************
McVM - The McLab Virtual Machine v1.0
Visit http://www.sable.mcgill.ca for more info.
***********************************************
...
\end{verbatim}
\end{small}
\noindent The experiment duration on our platform was $\approx2$m, with a time per trial of
$\approx32.536$s $\approx32.537$s (discarding the warm-up run). The resulting speedup for the base code caching mechanism was thus
$32.866/32.536=1.010$, $32.867/32.537=1.010$, slightly different than the one reported in \mytable\ref{tab:feval} on the Intel Xeon platform, for which we repeated each experiment $10$ times.
We can now set an upper bound for speedups by measuring the running time when the code has been optimized by hand inserting direct calls in place of {\tt feval} instructions:
\begin{small}
\begin{verbatim}
$ ./mcvm < benchmarks/scripts/direct/odeRK4
***********************************************
McVM - The McLab Virtual Machine v1.0
Visit http://www.sable.mcgill.ca for more info.
***********************************************
>: >: Compiling function: "testSH_direct"
Compiling function: "odeRK4_testSHfun"
Compiling function: "testSHfun"
Compiling function: "rhsSteelHeat"
[TOC] Elapsed time: 11.776950 seconds
t y_RK4
0.0000 1.000000
20.0000 227.364633
\end{verbatim}
\end{small}
\noindent In this scenario McVM can compile the whole program ahead of time, as {\tt rhsSteelHeat} is not invoked through an {\tt feval} call anymore. A comparison of the running times suggests a rough $32.537/11.777=2.791$ speedup for by-hand optimization w.r.t. the baseline version.