<!DOCTYPE html>
<html>
<head>

<meta charset=utf8>

<!--
 Copyright (C) 2007, 2013 Apple Inc. All rights reserved.

 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions
 are met:
 1. Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.
 2. Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution.

 THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
 CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
-->
<title>SunSpider 1.0.2 JavaScript Benchmark</title>
<link rel="stylesheet" href="sunspider.css">
</head>

<body>

<div class="topbox">

<h1><a href="http://browserbench.org/JetStream/">Try JetStream</a></h1>
<p>SunSpider is no longer maintained. We recommend
<a href="http://browserbench.org/JetStream/">JetStream</a>, which tests
the JavaScript techniques used by advanced web applications.</p>

</div>

<div class="bottombox">

<h2><span id="logo">&#x2600;</span>SunSpider 1.0.2 JavaScript Benchmark</h2>

<p>This is SunSpider, a JavaScript benchmark. This benchmark tests the
core JavaScript language only, not the DOM or other browser APIs. It
is designed to compare different versions of the same browser, and
different browsers to each other. Unlike many widely available
JavaScript benchmarks, this test is:</p>

<dl>
<dt>Real World<dt>
<dd>This test mostly avoids microbenchmarks, and tries to focus on
the kinds of actual problems developers solve with JavaScript today,
and the problems they may want to tackle in the future as the language
gets faster. This includes tests to generate a tagcloud from JSON
input, a 3D raytracer, cryptography tests, code decompression, and
many more examples. There are a few microbenchmarkish things, but they
mostly represent real performance problems that developers have
encountered.</dd>

<dt>Balanced<dt>
<dd>This test is balanced between different areas of the language and
different types of code. It's not all math, all string processing, or
all timing simple loops. In addition to having tests in many
categories, the individual tests were balanced to take similar amounts
of time on currently shipping versions of popular browsers.</dd>

<dt>Statistically Sound<dt>
<dd>One of the challenges of benchmarking is knowing how much noise
you have in your measurements. This benchmark runs each test multiple
times and determines an error range (technically, a 95% confidence
interval). In addition, in comparison mode it tells you if you have
enough data to determine if the difference is statistically
significant.</dd>

</dl>

<p><b>Current version - sunspider-1.0.2:</b> <a href="../sunspider-1.0.2/sunspider-1.0.2/driver.html">Start Now!</a><br>
<small>(When you run the benchmark, be patient - it loops through all of the
test cases five times and can take a minute or longer to complete.)</small></p>

<a href="versions.html">All versions.</a>

</div>

</body>

</html>
