aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2011-06-16 18:03:06 -0700
committerAlon Zakai <alonzakai@gmail.com>2011-06-16 18:03:06 -0700
commit2664b875614f188cc4f14fcb28b125dbb274d4e3 (patch)
treec479138689b8939475b25a44fa008debebc4477d /docs
parent4d0f6917baef98bcf4007d22e169af9f322e698f (diff)
paper improvements
Diffstat (limited to 'docs')
-rw-r--r--docs/paper.tex15
1 files changed, 13 insertions, 2 deletions
diff --git a/docs/paper.tex b/docs/paper.tex
index 8e3580c0..f3272557 100644
--- a/docs/paper.tex
+++ b/docs/paper.tex
@@ -29,7 +29,7 @@
\begin{abstract}
We present Emscripten, an LLVM-to-JavaScript compiler. Emscripten compiles
-LLVM assembly code into standard JavaScript, which opens up two avenues for running code written
+LLVM (Low Level Virtual Machine) assembly code into standard JavaScript, which opens up two avenues for running code written
in languages other than JavaScript on the web: (1) Compile code directly into LLVM bitcode, and
then compile that into JavaScript using Emscripten, or (2) Compile
a language's entire runtime into LLVM and then JavaScript, as in the previous
@@ -633,7 +633,18 @@ The first column is the name of the benchmark, and in parentheses any
parameters used in running it. The source code to all the benchmarks
can be found at \url{https://github.com/kripken/emscripten/tree/master/tests}
(each in a separate file with its name, except for `primes', which is
-embedded inside runner.py in the function test\_primes). The second
+embedded inside runner.py in the function test\_primes). A brief summary of
+the benchmarks is as follows:
+\begin{itemize}
+\item \textbf{fannkuch} and \textbf{fasta} are commonly-known benchmarks, appearing for example
+ on the Computer Language Benchmarks Game\footnote{\url{http://shootout.alioth.debian.org/}}.
+ They use a mix of mathematic operations (integer in the former, floating-point in the latter) and memory access.
+\item \textbf{primes} is the simplest benchmark in terms of code. It is basically just a tiny loop that calculates prime numbers.
+\item \textbf{raytrace} is real-world code, from the sphereflake raytracer\footnote{\url{http://ompf.org/ray/sphereflake/}}. This benchmark has a combination of memory access and floating-point math.
+\item \textbf{dlmalloc} (Doug Lea's malloc\footnote{\url{http://en.wikipedia.org/wiki/Malloc#dlmalloc_and_its_derivatives}}) is a well-known real-world implementation of malloc and free. This benchmark does a large amount of calls to malloc and free in an intermixed way, which tests memory access and integer calculations.
+\end{itemize}
+
+Returning to the table of results, the second
column is the elapsed time (in seconds) when running the compiled code (generated using all Emscripten and LLVM
optimizations as well as the Closure Compiler) in the SpiderMonkey JavaScript
engine (specifically the JaegerMonkey branch, checked out June 15th, 2011).