1 2013-09-26 Geoffrey Garen <ggaren@apple.com>
3 Fixed a version number string in SunSpider 1.0.2
4 https://bugs.webkit.org/show_bug.cgi?id=122004
6 Reviewed by Gavin Barraclough.
8 * resources/driver-TEMPLATE.html:
9 * resources/results-TEMPLATE.html: 1.0.2!
11 2013-09-26 Geoffrey Garen <ggaren@apple.com>
13 Tentative SunSpider 1.0.2
14 https://bugs.webkit.org/show_bug.cgi?id=122002
16 Reviewed by Gavin Barraclough.
18 Be even more aggressive about asking for zero delay between tests by
19 setting a timeout at the beginning of a test instead of the end. This is
20 another step toward reducing noise -- particularly noise caused by
21 power management -- just like the step down from 10ms to 0ms.
23 Browsers typically put a 4ms floor on timers. The sooner we set
24 our timer, the sooner it will fire.
27 * resources/driver-TEMPLATE.html: Changed the driver to set the timeout
29 * tests/sunspider-1.0.2: Added. These tests are unchanged from 1.0.1.
31 2013-09-09 Filip Pizlo <fpizlo@apple.com>
33 Stress tests should test the jsc profiler (-p)
34 https://bugs.webkit.org/show_bug.cgi?id=121043
36 Reviewed by Mark Hahnenberg.
38 Add a jsc-stress-test that tries to profile SunSpider.
40 * profiler-test.yaml: Added.
42 2013-08-08 Cosmin Truta <ctruta@blackberry.com>
44 SunSpider: Move the 3d-morph fix from version 1.0 to version 1.0.1
45 https://bugs.webkit.org/show_bug.cgi?id=117993
47 Reviewed by George Staikos.
49 Bump the SunSpider version to 1.0.1.
51 Unroll r149548 in order to restore version 1.0 to its original,
52 and add the 3d-morph fix to version 1.0.1 instead.
54 * hosted/sunspider.html: Updated to version 1.0.1.
55 * hosted/versions.html: Updated to version 1.0.1.
56 * make-hosted: Added support for version 1.0.1.
57 * resources/driver-TEMPLATE.html: Updated to version 1.0.1.
58 * resources/results-TEMPLATE.html: Updated to version 1.0.1.
59 * sunspider: Updated to version 1.0.1.
60 * sunspider-compare-results: Updated to version 1.0.1.
61 * tests/sunspider-1.0/3d-morph.js: Rolled back to the original version.
62 * tests/sunspider-1.0.1/LIST: Added.
63 * tests/sunspider-1.0.1/3d-cube.js: Added.
64 * tests/sunspider-1.0.1/3d-morph.js: Added.
65 * tests/sunspider-1.0.1/3d-raytrace.js: Added.
66 * tests/sunspider-1.0.1/access-binary-trees.js: Added.
67 * tests/sunspider-1.0.1/access-fannkuch.js: Added.
68 * tests/sunspider-1.0.1/access-nbody.js: Added.
69 * tests/sunspider-1.0.1/access-nsieve.js: Added.
70 * tests/sunspider-1.0.1/bitops-3bit-bits-in-byte.js: Added.
71 * tests/sunspider-1.0.1/bitops-bits-in-byte.js: Added.
72 * tests/sunspider-1.0.1/bitops-bitwise-and.js: Added.
73 * tests/sunspider-1.0.1/bitops-nsieve-bits.js: Added.
74 * tests/sunspider-1.0.1/controlflow-recursive.js: Added.
75 * tests/sunspider-1.0.1/crypto-aes.js: Added.
76 * tests/sunspider-1.0.1/crypto-md5.js: Added.
77 * tests/sunspider-1.0.1/crypto-sha1.js: Added.
78 * tests/sunspider-1.0.1/date-format-tofte.js: Added.
79 * tests/sunspider-1.0.1/date-format-xparb.js: Added.
80 * tests/sunspider-1.0.1/math-cordic.js: Added.
81 * tests/sunspider-1.0.1/math-partial-sums.js: Added.
82 * tests/sunspider-1.0.1/math-spectral-norm.js: Added.
83 * tests/sunspider-1.0.1/regexp-dna.js: Added.
84 * tests/sunspider-1.0.1/string-base64.js: Added.
85 * tests/sunspider-1.0.1/string-fasta.js: Added.
86 * tests/sunspider-1.0.1/string-tagcloud.js: Added.
87 * tests/sunspider-1.0.1/string-unpack-code.js: Added.
88 * tests/sunspider-1.0.1/string-validate-input.js: Added.
90 2013-05-03 Cosmin Truta <ctruta@blackberry.com>
92 SunSpider 1.0: 3d-morph: use epsilon to check result
93 https://bugs.webkit.org/show_bug.cgi?id=115553
95 Reviewed by George Staikos.
97 SunSpider/3d-morph should be more lenient in validating its results, since they depend on Math.sin, which isn't formally specified.
99 * tests/sunspider-1.0/3d-morph.js:
101 2013-04-19 Filip Pizlo <fpizlo@apple.com>
103 SunSpider/string-tagcloud should be more lenient in validating its results, since they depend on Math.log, which isn't formally specified
104 https://bugs.webkit.org/show_bug.cgi?id=114895
106 Reviewed by Michael Saboff.
108 * tests/sunspider-1.0/string-tagcloud.js:
110 2013-04-18 Filip Pizlo <fpizlo@apple.com>
112 Whenever it is cheap and non-invasive, SunSpider tests should validate their results to ensure that the browser runs them correctly
113 https://bugs.webkit.org/show_bug.cgi?id=114852
115 Reviewed by Geoffrey Garen.
117 This adds low-overhead checking of the results of each SunSpider tests. This is not
118 meant to be an exhaustive test that everything was executed correctly, but rather a
119 simple sanity check that will catch glaring mistakes. The philosophy here is that we're
120 not trying to prevent all forms of cheating, or that we're trying to prove the
121 browser's correctness. Moreover, these checks are meant to incur minimal overhead;
122 they currently clock in at <2% slow-down in SunSpider 1.0.
124 The test expectations were generated using the LLInt on command-line, and I've verified
125 that Firefox 20, Chrome 26, IE 10, Safari 6, and ToT with all of the JITs agree. Note
126 that some tests cannot be precisely validated because they use Math functions, which
127 ECMAScript chooses to not formally specify - those functions like sin() and friends are
128 allowed to return implementation-dependent results. Also some tests cannot be validated
129 at all because their behavior is either intentionally random or is timezone-dependent.
130 But 23 out of 26 tests now have some kind of validation.
132 I've updated the harnesses to show erroneous runs when displaying results.
134 * resources/TEMPLATE.html:
135 * resources/driver-TEMPLATE.html:
136 * resources/sunspider-analyze-results.js:
140 * resources/sunspider-compare-results.js:
144 (sunspiderCompareResults):
145 * resources/sunspider-standalone-driver.js:
146 * tests/sunspider-1.0/3d-cube.js:
148 * tests/sunspider-1.0/3d-morph.js:
149 * tests/sunspider-1.0/3d-raytrace.js:
150 * tests/sunspider-1.0/access-binary-trees.js:
151 * tests/sunspider-1.0/access-fannkuch.js:
152 * tests/sunspider-1.0/access-nbody.js:
153 * tests/sunspider-1.0/access-nsieve.js:
155 * tests/sunspider-1.0/bitops-3bit-bits-in-byte.js:
156 * tests/sunspider-1.0/bitops-bits-in-byte.js:
157 * tests/sunspider-1.0/bitops-bitwise-and.js:
158 * tests/sunspider-1.0/bitops-nsieve-bits.js:
159 * tests/sunspider-1.0/controlflow-recursive.js:
160 * tests/sunspider-1.0/crypto-aes.js:
161 * tests/sunspider-1.0/crypto-md5.js:
162 * tests/sunspider-1.0/crypto-sha1.js:
163 * tests/sunspider-1.0/date-format-tofte.js:
164 * tests/sunspider-1.0/date-format-xparb.js:
165 * tests/sunspider-1.0/math-cordic.js:
166 * tests/sunspider-1.0/math-partial-sums.js:
168 * tests/sunspider-1.0/math-spectral-norm.js:
169 * tests/sunspider-1.0/regexp-dna.js:
170 * tests/sunspider-1.0/string-base64.js:
171 * tests/sunspider-1.0/string-fasta.js:
174 * tests/sunspider-1.0/string-tagcloud.js:
175 * tests/sunspider-1.0/string-unpack-code.js:
176 * tests/sunspider-1.0/string-validate-input.js:
178 2013-04-11 Filip Pizlo <fpizlo@apple.com>
180 Get rid of the 10ms delay between test executions
181 https://bugs.webkit.org/show_bug.cgi?id=114458
182 <rdar://problem/13631112>
184 Reviewed by Darin Adler and Geoffrey Garen.
186 More details on this in the bug. Long story short, I don't know why the 10ms delay is
187 there, and it appears to be the root of some noisyness and unreliability in the results.
188 Removing it makes results more consistent, which is a good thing.
190 * resources/driver-TEMPLATE.html:
192 2013-01-16 Eric Seidel <eric@webkit.org>
194 Remove --shark* support from sunspider/run-sunspider now that Shark is dead
195 https://bugs.webkit.org/show_bug.cgi?id=99512
197 Reviewed by Darin Adler.
199 I tried to use --instruments, but that also seems broken (in the same way before/after this patch).
204 2012-08-02 Filip Pizlo <fpizlo@apple.com>
206 Unreviewed, revert debugging stuff I landed in http://trac.webkit.org/changeset/124557
209 * tests/v8-v6/v8-crypto.js:
218 2012-03-11 Maciej Stachowiak <mjs@apple.com>
220 Add --instruments option to sunspider to profile with Instruments
221 https://bugs.webkit.org/show_bug.cgi?id=80783
223 Reviewed by Filip Pizlo.
225 * resources/TimeProfile20us.tracetemplate: Added.
229 2011-11-15 Andy Wingo <wingo@igalia.com>
231 Extend sunspider driver to be able to run kraken
232 https://bugs.webkit.org/show_bug.cgi?id=71799
234 Reviewed by Filip Pizlo.
236 * resources/sunspider-standalone-driver.js: Try to load a -data
237 file. If that succeeds, we have a kraken-like test, so we time
238 the test using `load'. Otherwise fall back to using `run'.
240 2011-08-11 Mark Rowe <mrowe@apple.com>
242 Fix sunspider-compare-results to default to the same suite version as the sunspider script.
244 Rubber-stamped by Maciej Stachowiak.
246 * sunspider-compare-results:
248 2011-07-02 Maciej Stachowiak <mjs@apple.com>
250 Update SunSpider versioning to 1.0
251 https://bugs.webkit.org/show_bug.cgi?id=63870
253 Reviewed by Dan Bernstein.
255 * hosted/sunspider.html:
256 * hosted/versions.html:
257 * resources/driver-TEMPLATE.html:
258 * resources/results-TEMPLATE.html:
261 2011-07-02 Maciej Stachowiak <mjs@apple.com>
263 Sunspider 0.9.1 harness doesn't actually close() its test documents
264 https://bugs.webkit.org/show_bug.cgi?id=47045
266 Reviewed by Daniel Bates.
268 * hosted/versions.html:
269 * resources/driver-TEMPLATE.html:
271 2011-07-02 Maciej Stachowiak <mjs@apple.com>
275 Fix obviou typo in previous commit.
277 * tests/sunspider-1.0/bitops-bitwise-and.js:
279 2011-07-02 Maciej Stachowiak <mjs@apple.com>
281 Reviewed by Anders Carlsson.
283 SunSpider: all four bitops benchmarks can be replaced with NOP
284 https://bugs.webkit.org/show_bug.cgi?id=38446
286 * tests/sunspider-1.0/bitops-3bit-bits-in-byte.js:
287 (TimeFunc): Save the result.
288 * tests/sunspider-1.0/bitops-bits-in-byte.js:
289 (TimeFunc): Save the result.
290 * tests/sunspider-1.0/bitops-bitwise-and.js: More explicitly
292 * tests/sunspider-1.0/bitops-nsieve-bits.js:
293 (sieve): Save the result.
295 2011-07-02 Maciej Stachowiak <mjs@apple.com>
297 SunSpider: string-validate-input.js uses an undeclared variable named 'name', which is a DOM API
298 https://bugs.webkit.org/show_bug.cgi?id=60937
300 Reviewed by Dan Bernstein.
302 * tests/sunspider-1.0/string-validate-input.js:
303 (doTest): Rename the variable to username
305 2011-07-02 Maciej Stachowiak <mjs@apple.com>
307 Reviewed by Darin Adler.
309 SunSpider: The main function of math-cordic is dead code
310 https://bugs.webkit.org/show_bug.cgi?id=63863
312 Try to prevent math-cordic from being eliminated as dead code or
313 compiled down to a constant.
315 * tests/sunspider-1.0/math-cordic.js:
319 2011-06-30 Maciej Stachowiak <mjs@apple.com>
321 Reviewed by Adam Barth.
323 Create sunspider-1.0 directory in preparation for fixing a bunch of bugs
324 https://bugs.webkit.org/show_bug.cgi?id=63782
326 * make-hosted: Learn about the new directory.
327 * tests/sunspider-1.0: Copied from PerformanceTests/SunSpider/tests/sunspider-0.9.1.
329 2010-11-29 Geoffrey Garen <ggaren@apple.com>
331 Reviewed by Gavin Barraclough.
333 Improved accuracy of command-line SunSpider.
335 * resources/sunspider-standalone-driver.js: Use the returned number of
336 elapsed milliseconds from "run" and "checkSyntax" instead of measuring
337 ourselves, for slightly more accurate numbers.
339 2010-09-16 Gavin Barraclough <barraclough@apple.com>
341 Reviewed by Mark Rowe.
342 https://bugs.webkit.org/show_bug.cgi?id=45924
344 Modify the SunSpider harness to allow a path to be passed to the --suite
345 argument, supress the normal prepend-"tests/" behaviour for suite names
348 Also wrap the code in an anonymous function to move variables out of global
349 scope (currently the harness cannot handle running tests the overwrite the
352 * resources/sunspider-standalone-driver.js:
355 2010-08-27 Michael Saboff <msaboff@apple.com>
357 Reviewed by Stephanie Lewis.
359 Added version 5 and version 6 of V8 tests with modifications similar
360 to the version 4 tests so they'll work with the SunSpider test harness.
361 Note that these files are external source and therefore don't conform
362 to WebKit coding standards.
363 https://bugs.webkit.org/show_bug.cgi?id=44638
365 * tests/v8-v5: Added.
366 * tests/v8-v5/LIST: Added.
367 * tests/v8-v5/v8-crypto.js: Added.
368 * tests/v8-v5/v8-deltablue.js: Added.
369 * tests/v8-v5/v8-earley-boyer.js: Added.
370 * tests/v8-v5/v8-raytrace.js: Added.
371 * tests/v8-v5/v8-regexp.js: Added.
372 * tests/v8-v5/v8-richards.js: Added.
373 * tests/v8-v5/v8-splay.js: Added.
374 * tests/v8-v6: Added.
375 * tests/v8-v6/LIST: Added.
376 * tests/v8-v6/v8-crypto.js: Added.
377 * tests/v8-v6/v8-deltablue.js: Added.
378 * tests/v8-v6/v8-earley-boyer.js: Added.
379 * tests/v8-v6/v8-raytrace.js: Added.
380 * tests/v8-v6/v8-regexp.js: Added.
381 * tests/v8-v6/v8-richards.js: Added.
382 * tests/v8-v6/v8-splay.js: Added.
384 2010-07-15 Stephanie Lewis <slewis@apple.com>
386 Reviewed by Geoff Garen.
388 http://bugs.webkit.org/show_bug.cgi?id=42406
389 Output location of results file.
393 2010-05-17 Maciej Stachowiak <mjs@apple.com>
395 Reviewed by Mark Rowe.
397 Browser-hosted version of SunSpider runs tests twice as many times as advertised
398 https://bugs.webkit.org/show_bug.cgi?id=39201
400 * make-hosted: Make sure to reset test list after every test suite.
402 2010-05-07 Adam Roben <aroben@apple.com>
404 Fix typo in sunspider-compare-results.js that caused incorrect
405 two-sample t statistics to be computed
407 Fixes <http://webkit.org/b/38768> SunSpider computes incorrect
408 two-sample t statistics
410 Reviewed by Darin Adler.
412 * resources/sunspider-compare-results.js:
413 (sunspiderCompareResults.resultLine): Fixed the calculation of the t
414 variable to match the definition of a two-sample t statistic. Looks
415 like this was just a simple typo.
417 2010-04-05 Darin Adler <darin@apple.com>
419 Updated the ignore property for changes to the contents here.
421 * .: Modified property svn:ignore.
423 2010-02-20 Maciej Stachowiak <mjs@apple.com>
425 Reviewed by Adam Barth.
427 Add sunspider-0.9.1 to the site in preparation for announcing it.
428 https://bugs.webkit.org/show_bug.cgi?id=35206
430 * hosted/sunspider.css: Remove tabs, which I noticed where present while
431 copying to the WebKitSite directory.
433 2010-01-11 Oliver Hunt <oliver@apple.com>
435 Reviewed by Darin Adler.
437 Sunspider parse-only tests don't run
438 https://bugs.webkit.org/show_bug.cgi?id=33489
440 Fix parse-only test list
442 * tests/parse-only/LIST:
444 2009-12-15 Maciej Stachowiak <mjs@apple.com>
446 Reviewed by Adele Peterson.
448 Make SunSpider version more prominent in the title
449 https://bugs.webkit.org/show_bug.cgi?id=32574
451 * hosted/sunspider.html:
452 * hosted/versions.html:
453 * resources/driver-TEMPLATE.html:
454 * resources/results-TEMPLATE.html:
456 2009-12-15 Maciej Stachowiak <mjs@apple.com>
458 Reviewed by Darin Adler.
460 Make SunSpider refuse to compare results across content versions
461 https://bugs.webkit.org/show_bug.cgi?id=32573
463 The results URL now includes a version indicator, and compare mode
464 will refuse to compare between versions.
466 * resources/driver-TEMPLATE.html:
467 * resources/results-TEMPLATE.html:
469 2009-12-14 Maciej Stachowiak <mjs@apple.com>
471 Reviewed by Darin Adler.
473 Some Browser-hosted SunSpider files are not valid HTML5
474 https://bugs.webkit.org/show_bug.cgi?id=32536
476 Made various fixes to validate as HTML5 with no warnings (mainly removing bogus
477 close tags and adding a meta charset declaration).
479 * hosted/sunspider.html:
480 * hosted/versions.html:
481 * resources/TEMPLATE.html:
482 * resources/driver-TEMPLATE.html:
483 * resources/results-TEMPLATE.html:
485 2009-12-14 Maciej Stachowiak <mjs@apple.com>
487 Reviewed by Eric Seidel.
489 Make sunspider-0.9.1 the default content set (both command-line and hosted)
490 https://bugs.webkit.org/show_bug.cgi?id=32537
492 * hosted/sunspider.html: Change default suite link.
493 * sunspider: Change default suite.
494 * sunspider-compare-results: Likewise.
496 2009-12-14 Maciej Stachowiak <mjs@apple.com>
498 Reviewed by Sam Weinig.
500 in-browser SunSpider suffers excessive penalty under power management
501 https://bugs.webkit.org/show_bug.cgi?id=32505
503 I have made a few changes to address this:
505 1) Change how browser-hosted SunSpider loads tests - preload the content and write it in with
506 document.write to reduce triggering of progress UI.
507 2) Reduce time between tests to 10ms from 500ms, so that power management doesn't keep the CPU
508 stepped all the way down the whole time.
509 3) Run the test cycle an extra time for warmup before the runs that count.
511 * hosted/sunspider-record-result.js: Removed.
513 * resources/TEMPLATE.html:
514 * resources/driver-TEMPLATE.html:
516 2009-12-13 Maciej Stachowiak <mjs@apple.com>
518 Reviewed by Gavin Barraclough.
520 SunSpider/tests/string-base64.js does not compute a valid base64 encoded string
521 https://bugs.webkit.org/show_bug.cgi?id=16806
523 Based on a patch by Eric Seidel.
525 Fix the base64 computation to actually compute correct results. The impact on runtime of
526 the test is pretty small, but noticeable for some browsers. But at least it's not
527 doing a wrong and meaningless computation any more.
529 * tests/sunspider-0.9.1/string-base64.js:
533 2009-12-13 Maciej Stachowiak <mjs@apple.com>
535 Fixing commit error...
537 I accidentally committed my last patch in a form that broke Web-hosted SunSpider. Fixing.
539 * resources/driver-TEMPLATE.html:
541 2009-12-13 Maciej Stachowiak <mjs@apple.com>
543 Reviewed by Sam Weinig.
545 Use JSON.parse instead of eval for Web-hosted SunSpider results processing
546 https://bugs.webkit.org/show_bug.cgi?id=32490
548 * hosted/json2.js: Added. Incorporated from json.org
549 * resources/driver-TEMPLATE.html: Fix an HTML validation bug I noticed.
550 * resources/results-TEMPLATE.html: Use JSON.parse instead of eval to process
553 2009-12-12 Maciej Stachowiak <mjs@apple.com>
555 Reviewed by Oliver Hunt.
557 Enable Web-hosted version of SunSpider to handle multiple versions
558 https://bugs.webkit.org/show_bug.cgi?id=32478
560 * make-hosted: Now generate the hosted version to be able to run both the
561 0.9 and the 0.9.1 test suites.
562 * hosted: Modified property svn:ignore.
563 * hosted/sunspider-driver.html: Removed.
564 * hosted/sunspider-results.html: Removed.
565 * hosted/sunspider.html:
566 * hosted/versions.html: Added.
567 * resources/TEMPLATE.html:
568 * resources/driver-TEMPLATE.html: Copied from hosted/sunspider-driver.html.
569 * resources/driver-TEMPLATE.html: Copied from hosted/sunspider-results.html.
571 2009-12-12 Maciej Stachowiak <mjs@apple.com>
573 Reviewed by Oliver Hunt.
575 Give command-line sunspider the ability to handle multiple suites and versions
576 https://bugs.webkit.org/show_bug.cgi?id=32477
578 Each suite/version's set of tests are now in a separate subdirectory of tests/, with a file named LIST
579 enumerating the tests. Current suites are:
581 sunspider-0.9 - riginal SunSpider content
582 sunspider-0.9.1 - SunSpider suite with a few tests fixed (and a few more to come)
583 ubench - "ubench" microbenchmark suite
584 v8-v4 - version 4 of the v8 benchmark
585 parse-only - some parser tests
587 Sunspider can now be run with the --suite= parameter to select a
588 suite. The default is --suite=sunspider-0.9.
590 * .: Modified property svn:ignore to ignore new results directories.
591 * make-hosted: Generate based on sunspider-0.9 suite.
592 * resources/TEMPLATE.html: Fix an HTML compliance problem.
593 * resources/sunspider-standalone-driver.js: Become aware of suite names.
594 * sunspider: Modified to handle multiple suites as described above.
595 * sunspider-compare-results: ditto
596 * tests/LIST: Moved to tests/sunspider-0.9/ and tests/sunspider-0.9.1/
597 * tests/LIST-PARSE-ONLY: Moved to parse-only/LIST
598 * tests/LIST-UBENCH: Removed.
599 * tests/LIST-V8: Removed.
600 * tests/3d-cube.js: Moved to tests/sunspider-0.9 and tests/sunspider-0.9.1
601 * tests/3d-morph.js: ditto
602 * tests/3d-raytrace.js: ditto
603 * tests/access-binary-trees.js: ditto
604 * tests/access-fannkuch.js: ditto
605 * tests/access-nbody.js: ditto
606 * tests/access-nsieve.js: ditto
607 * tests/bitops-3bit-bits-in-byte.js: ditto
608 * tests/bitops-bits-in-byte.js: ditto
609 * tests/bitops-bitwise-and.js: ditto
610 * tests/bitops-nsieve-bits.js: ditto
611 * tests/controlflow-recursive.js: ditto
612 * tests/crypto-aes.js: ditto
613 * tests/crypto-md5.js: ditto
614 * tests/crypto-sha1.js: ditto
615 * tests/date-format-tofte.js: ditto
616 * tests/date-format-xparb.js: ditto
617 * tests/math-cordic.js: ditto
618 * tests/math-partial-sums.js: ditto
619 * tests/math-spectral-norm.js: ditto
620 * tests/regexp-dna.js: ditto
621 * tests/string-base64.js: ditto
622 * tests/string-fasta.js: ditto
623 * tests/string-tagcloud.js: ditto
624 * tests/string-unpack-code.js: ditto
625 * tests/string-validate-input.js: ditto
626 * tests/sunspider-0.9/: Added
627 * tests/sunspider-0.9/*.js: Moved from one level up
628 * tests/sunspider-0.9.1: Added.
629 * tests/sunspider-0.9.1/*.js: Moved from one level up.
630 * tests/v8-crypto.js: Moved to v8-v4/ directory.
631 * tests/v8-deltablue.js: ditto
632 * tests/v8-earley-boyer.js: ditto
633 * tests/v8-raytrace.js: ditto
634 * tests/v8-regexp.js: ditto
635 * tests/v8-richards.js: ditto
636 * tests/v8-splay.js: ditto
637 * tests/v8-v4: Added.
639 2009-09-30 Csaba Osztrogonac <oszi@inf.u-szeged.hu>
641 Reviewed by Darin Adler.
643 Platform specific null device replaced with a platform independent.
644 https://bugs.webkit.org/show_bug.cgi?id=29544
646 * sunspider: Using File::Spec->devnull() instead of /dev/null and NUL.
648 2009-09-21 Csaba Osztrogonac <oszi@inf.u-szeged.hu>
650 Reviewed by Maciej Stachowiak.
652 [Qt] Make sunspider script work on Windows platform.
653 https://bugs.webkit.org/show_bug.cgi?id=29544
656 Using platform specific null device instead of /dev/null.
658 2009-06-19 Adam Treat <adam.treat@torchmobile.com>
660 Reviewed by Oliver Hunt.
662 https://bugs.webkit.org/show_bug.cgi?id=26540
663 Currently the SunSpider test driver lacks an option to run a test suite that
664 will test JavaScriptCore parsing performance only. This patch adds just such
665 a test suite and option to SunSpider as well as the jsc test shell. I've included
666 three large javascript source files found in the wild: jquery, mootools and prototype.
667 Combined with the concatenation of all three, these form a new testsuite to measure
668 and test pure JavaScriptCore parsing performance.
670 * resources/sunspider-standalone-driver.js:
671 Load the js with parse-only flag if it is part of the parse-only suite.
673 Add the parse-only suite to the list of options.
674 * sunspider-compare-results:
675 Add the parse-only suite to the list of options.
676 * tests/LIST-PARSE-ONLY: Added.
677 * tests/parse-only/concat-jquery-mootools-prototype.js: Added.
678 A very large concatenation of the scripts found below. This js takes ~30ms to parse on my machine.
679 * tests/parse-only/jquery-1.3.2.js: Added.
680 Latest version from jquery.com.
681 * tests/parse-only/mootools-1.2.2-core-nc.js: Added.
682 Latest version from mootools.net.
683 * tests/parse-only/prototype-1.6.0.3.js: Added.
684 Latest version from prototypejs.org.
686 2009-06-13 Steve Falkenburg <sfalken@apple.com>
688 Update V8 benchmark to version 4.
690 Reviewed by Cameron Zwarich.
693 * tests/v8-crypto.js:
694 * tests/v8-deltablue.js:
695 * tests/v8-earley-boyer.js:
696 * tests/v8-raytrace.js:
697 * tests/v8-regexp.js: Added.
698 * tests/v8-richards.js:
699 * tests/v8-splay.js: Added.
701 2009-05-26 Olivier DOLE <odole@pleyo.com>
705 Store sunspider test suite results in a specific directory for each
706 different type of benchmark (sunspider, V8 or ubench).
709 * sunspider-compare-results:
711 2009-05-12 Steve Falkenburg <sfalken@apple.com>
717 2009-05-11 Steve Falkenburg <sfalken@apple.com>
719 Include SunSpider tests in production builds.
721 Reviewed by Adam Roben.
723 * SunSpider.make: Added.
724 * xcopy.excludes: Added.
726 2009-03-04 Oliver Hunt <oliver@apple.com>
728 Added a few more tests to ubench
732 Adding a couple of test to cover too few and too many arguments. This
733 is needed to prevent regressions in all call paths from my current refactoring.
736 * tests/ubench/function-correct-args.js: Added.
738 * tests/ubench/function-excess-args.js: Added.
741 2008-10-30 Zoltan Horvath <Horvath.Zoltan.6@stud.u-szeged.hu>
743 Fix a bug where when V8's or UBENCH's test suite list file is missing
744 the error message is suggesting that SunSpider's list file is missing.
746 Reviewed by Sam Weinig.
749 (loadTestsList): Fix the error message to use the right list name.
751 2008-10-07 David Hyatt <hyatt@apple.com>
753 https://bugs.webkit.org/show_bug.cgi?id=18989
755 Remove global substitution from SunSpider regexp test, since only Firefox was honoring it and
756 we want all browsers to be doing the same thing on the test.
760 * tests/regexp-dna.js:
762 2008-09-09 Cameron Zwarich <cwzwarich@uwaterloo.ca>
764 Rubber-stamped by Maciej Stachowiak.
766 The bleeding edge branch of V8 now supports passing fileanmes after
767 '-f', so the SunSpider script should be changed to do this again.
768 This allows all 3 major JavaScript engines to be used with the
769 unmodified SunSpider script.
773 2008-09-04 Cameron Zwarich <cwzwarich@uwaterloo.ca>
775 Reviewed by Maciej Stachowiak.
777 Add a '--args' option to SunSpider, so that we can pass '-j' to TraceMonkey
778 and '--expose-gc' to V8. Also, rename the '--v8' option to '--v8-suite' and
779 correct the punctuation in its documentation.
783 2008-09-04 Cameron Zwarich <cwzwarich@uwaterloo.ca>
785 Reviewed by Oliver Hunt.
787 Bug 20616: Incorporate V8 benchmarks in testing
788 <https://bugs.webkit.org/show_bug.cgi?id=20616>
790 This is a first attempt at running the V8 benchmarks within SunSpider,
791 with the --v8 option. The number of iterations is fixed for each
792 benchmark, and was chosen to make each of the benchmarks run between
793 500 ms and 600 ms in V8 on my machine, a 2.16 GHz MacBook Pro.
796 * tests/LIST-V8: Added.
797 * tests/v8-crypto.js: Added.
798 * tests/v8-deltablue.js: Added.
799 * tests/v8-earley-boyer.js: Added.
800 * tests/v8-raytrace.js: Added.
801 * tests/v8-richards.js: Added.
803 2008-09-02 Cameron Zwarich <cwzwarich@uwaterloo.ca>
807 Remove a local change that was accidentally committed in r36034.
809 * resources/sunspider-standalone-driver.js:
811 2008-09-02 Cameron Zwarich <cwzwarich@uwaterloo.ca>
813 Rubber-stamped by Oliver Hunt.
815 Make SunSpider work with JavaScript shells that don't take filenames
816 after a '-f' argument.
820 2008-06-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
824 Remove the --squirrelfish option from SunSpider, as it is no longer needed.
827 * tests/LIST-SQUIRRELFISH: Removed.
829 2008-06-03 Alexey Proskuryakov <ap@webkit.org>
831 Rubber-stamped by Mark Rowe.
833 Roll out r31215 - with Mac OS X 10.5.3, there is no need to pause update daemon any more.
837 2008-04-15 Maciej Stachowiak <mjs@apple.com>
839 Rubber stamped by Oliver.
841 - add newly working tests to squirrelfish list
843 * tests/LIST-SQUIRRELFISH: Add 3d-raytrace and string-unpack-code
845 2008-04-14 Maciej Stachowiak <mjs@apple.com>
847 Rubber stamped by Oliver.
849 - move ubench tests properly.
851 * tests/ubench: Added.
852 * tests/ubench/function-closure.js: Added.
853 * tests/ubench/function-empty.js: Added.
854 * tests/ubench/function-missing-args.js: Added.
855 * tests/ubench/function-sum.js: Added.
856 * tests/ubench/loop-empty-resolve.js: Added.
857 * tests/ubench/loop-empty.js: Added.
858 * tests/ubench/loop-sum.js: Added.
860 2008-04-14 Maciej Stachowiak <mjs@apple.com>
862 Rubber stamped by Oliver.
864 * sunspider: Don't force --runs=1 in squirrelfish mode any more.
866 2008-04-14 Maciej Stachowiak <mjs@apple.com>
870 - make --squirrelfish mode use the real harness, but a reduced set of tests
872 Also add a new ubench mode which runs the older squirrelfish microbenchmarks.
875 * tests/LIST-SQUIRRELFISH:
876 * tests/LIST-UBENCH: Added.
877 * tests/squirrelfish: Moved to tests/ubench
879 2008-04-14 Geoffrey Garen <ggaren@apple.com>
881 Reviewed by Maciej Stachowiak.
883 Removed an unused test.
885 * tests/squirrelfish/loop-resolve.js: Removed.
887 2008-04-10 Maciej Stachowiak <mjs@apple.com>
891 Add newly runnable tests to --squirrelfish mode.
893 * tests/LIST-SQUIRRELFISH:
895 2008-04-06 Geoffrey Garen <ggaren@apple.com>
897 Reviewed by Maciej Stachowiak.
899 A little more love for --squirrelfish mode:
901 Fixed a misplaced sort. Results properly sort now.
903 Added a test list just for squirrelfish, and updated it to include
904 all currently passing SunSpider tests.
906 Fixed the pruning regexp to match 3d-morph.js.
910 2008-03-26 Geoffrey Garen <ggaren@apple.com>
912 Reviewed by Oliver Hunt.
914 --squirrelfish mode: pared down tests for squirrelfish to chew on.
918 * tests/squirrelfish: Added.
919 * tests/squirrelfish/function-closure.js: Added.
920 * tests/squirrelfish/function-empty.js: Added.
921 * tests/squirrelfish/function-missing-args.js: Added.
922 * tests/squirrelfish/function-sum.js: Added.
923 * tests/squirrelfish/loop-empty-resolve.js: Added.
924 * tests/squirrelfish/loop-empty.js: Added.
925 * tests/squirrelfish/loop-resolve.js: Added.
926 * tests/squirrelfish/loop-sum.js: Added.
928 2008-03-21 Alexey Proskuryakov <ap@webkit.org>
932 * sunspider: Pause update daemon on Darwin to make results reliable
933 again (workaround for <rdar://problem/5811127>).
935 2008-02-07 Eric Seidel <eric@webkit.org>
939 * sunspider: add an error message when ./tests/LIST is not found
941 2007-12-29 Alp Toker <alp@atoker.com>
945 * hosted/sunspider.html:
947 2007-12-29 Alp Toker <alp@atoker.com>
951 Provide the current URL in the SunSpider results page. Useful for
952 copying benchmark results out of browsers without a location bar or
953 where the location bar can't handle long URLs.
955 * hosted/sunspider-results.html:
957 2007-12-20 Eric Seidel <eric@webkit.org>
961 * sunspider: increase default number of runs for more accurate numbers
963 2007-12-18 Mark Rowe <mrowe@apple.com>
967 * hosted/sunspider.html:
969 2007-12-18 Maciej Stachowiak <mjs@apple.com>
973 - give an extra digit of precision for small differences.
975 * resources/sunspider-compare-results.js:
977 2007-12-17 Maciej Stachowiak <mjs@apple.com>
981 - work around IE layout bugs
983 * hosted/sunspider.css:
985 2007-12-17 Maciej Stachowiak <mjs@apple.com>
989 - fix compare feature
991 * hosted/sunspider-results.html:
993 2007-12-17 Maciej Stachowiak <mjs@apple.com>
997 - Change the format of the output URL to be shorter, to meet IE constraints
999 * hosted/sunspider-driver.html:
1000 * hosted/sunspider-results.html:
1002 2007-12-13 Maciej Stachowiak <mjs@apple.com>
1006 - Add some explanatory test and a dumb logo to SunSpider web hosted version
1008 * hosted/sunspider-driver.html:
1009 * hosted/sunspider-results.html:
1010 * hosted/sunspider.css:
1011 * hosted/sunspider.html:
1013 2007-12-13 Maciej Stachowiak <mjs@apple.com>
1017 - Make the web-hosted version of SunSpider look a little bit less drab.
1019 * hosted/sunspider-driver.html:
1020 * hosted/sunspider-results.html:
1021 * hosted/sunspider.css: Added.
1022 * hosted/sunspider.html:
1023 * resources/TEMPLATE.html:
1025 2007-12-12 Maciej Stachowiak <mjs@apple.com>
1029 - Change sunspider-compare-results output from showing "% faster" values to "x as fast" values.
1031 A sample of what new-style results would look like:
1033 TEST COMPARISON FROM TO DETAILS
1035 ** TOTAL **: 1.41x as fast 6613.6ms +/- 0.1% 4703.0ms +/- 0.1% significant
1037 3bit-bits-in-byte: *1.36x as slow* 88.8ms +/- 0.6% 121.1ms +/- 0.6% significant
1039 * resources/sunspider-compare-results.js:
1041 2007-11-14 Eric Seidel <eric@webkit.org>
1045 * sunspider: add --shark-cache for L2 Cache Miss profiling
1047 2007-11-09 Alexey Proskuryakov <ap@webkit.org>
1049 Reviewed by Darin Adler.
1051 http://bugs.webkit.org/show_bug.cgi?id=15925
1052 SunSpider should check for Shark being installed
1054 * sunspider: Explicitly test that shark command line tool is installed.
1056 2007-11-04 Darin Adler <darin@apple.com>
1058 * hosted/sunspider.html: Tweaked formatting a bit.
1060 2007-11-03 Maciej Stachowiak <mjs@apple.com>
1062 Reviewed by Darin Adler.
1064 - Add compare mode and a description of the benchmark to the hosted version.
1066 * hosted/sunspider-results.html: Add compare mode - you can just paste in another results URL.
1067 * hosted/sunspider.html: Added intro text.
1068 * make-hosted: Copy new file.
1069 * resources/sunspider-compare-results.js: Made more reusable by putting the implementation in
1071 * resources/sunspider-standalone-compare.js: Added. Calls the function in the way standalone mode
1073 * sunspider-compare-results: Use sunspider-standalone-compare.js.
1075 2007-11-02 Darin Adler <darin@apple.com>
1077 * sunspider: Changed "--base" to "--set-baseline".
1079 2007-11-02 Darin Adler <darin@apple.com>
1083 * sunspider: Added a "--base" option that records the current test as a baseline.
1084 Moved the code to find the newest .mshark file into a function (since I needed to use
1085 it in the other script and I prefer to copy/paste a function).
1087 * sunspider-compare-results: Added logic to compare the baseline with the last
1088 run when you don't pass any parameters.
1090 2007-10-29 Maciej Stachowiak <mjs@apple.com>
1094 - Added list of ECMAScript3 features that SunSpider does not cover currently.
1098 2007-10-29 Maciej Stachowiak <mjs@apple.com>
1102 - Give better error messages when sunspider-compare-results fails
1104 * sunspider-compare-results:
1106 2007-10-29 Maciej Stachowiak <mjs@apple.com>
1108 Reviewed by Darin Adler.
1110 - fix Date tests to work in command-line SpiderMonkey
1112 * tests/date-format-tofte.js:
1113 * tests/date-format-xparb.js:
1115 2007-10-29 Darin Adler <darin@apple.com>
1119 * sunspider: Added --shark20 option, to run Shark at its highest sample
1120 resolution instead of its default.
1122 2007-10-28 Adam Roben <aroben@apple.com>
1124 Fix SunSpider on Windows
1128 * sunspider: Don't use colons in filenames.
1130 2007-10-28 Darin Adler <darin@apple.com>
1134 * resources/sunspider-analyze-results.js: Tweak the output format a little.
1135 Change so that when there's only one run we don't write out confidence
1136 intervals at all rather than writing "NaN" over and over again.
1138 * sunspider: Use the time and date as a suffix on the results file, that way
1139 all the results are left behind in the tmp directory. This will make it easy
1140 for us to add features that compare past results in the future. Also rename
1141 the .mshark files using the same scheme.
1143 * sunspider-compare-results: Relax the parsing rules so we can parse the
1144 results file exactly as it's emitted from sunspider.
1146 2007-10-25 Adam Roben <aroben@apple.com>
1148 Strip carriage returns from results
1150 Carriage returns were screwing up sunspider-compare-results on
1153 Rubberstamped by Oliver.
1157 2007-10-24 Darin Adler <darin@apple.com>
1161 * sunspider: Open the profile in shark after completing a run.
1162 * sunspider-compare-results: Tiny perl tweaks.
1164 2007-10-23 Maciej Stachowiak <mjs@apple.com>
1166 Reviewed by Darin Adler.
1168 - Don't hardcode my path to testkjs
1170 * sunspider-compare-results:
1172 2007-10-23 Maciej Stachowiak <mjs@apple.com>
1174 Reviewed by Darin Adler.
1176 - Add a compare script to compare results, and improve formatting of standard results a bit.
1178 * resources/sunspider-analyze-results.js:
1179 * resources/sunspider-compare-results.js: Added.
1180 * sunspider-compare-results: Added.
1182 2007-10-23 Maciej Stachowiak <mjs@apple.com>
1184 Reviewed by Darin Adler.
1186 * resources/sunspider-analyze-results.js: Do the error range
1187 properly, using the t-distribution instead of 1.96 (which was
1188 based on the normal distribution).
1190 * sunspider: Print results in a way that will be friendlier to the
1191 soon-to-come compare mode.
1193 2007-10-22 Maciej Stachowiak <mjs@apple.com>
1197 - add more tests (probably the final set for now)
1199 Already balanced. Added date, regexp, control flow, and a few
1200 more string and object/array access tests.
1203 * tests/access-fannkuch.js: Added.
1204 * tests/access-nbody.js: Added.
1205 * tests/controlflow-recursive.js: Added.
1206 * tests/date-format-tofte.js: Added.
1207 * tests/date-format-xparb.js: Added.
1208 * tests/regexp-dna.js: Added.
1209 * tests/string-validate-input.js: Added.
1211 2007-10-21 Eric Seidel <eric@webkit.org>
1215 * sunspider: make --shark only sample from testkjs
1217 2007-10-21 Maciej Stachowiak <mjs@apple.com>
1219 Rubber stamped by Eric.
1221 - added crypto tests (already balanced)
1224 * tests/crypto-aes.js: Added.
1225 * tests/crypto-md5.js: Added.
1226 * tests/crypto-sha1.js: Added.
1228 2007-10-21 Maciej Stachowiak <mjs@apple.com>
1232 - rebalance new tests
1234 Scaled the new tests so they take 400-600ms on a reasonably normal user setup:
1236 Internet Explorer 7, Window XP, Dell Latitude D810 with a 2.13GHz Pentium M
1238 This balances them with the existing tests.
1240 * tests/access-binary-trees.js:
1241 * tests/access-nsieve.js:
1242 * tests/bitops-nsieve-bits.js:
1243 * tests/math-partial-sums.js:
1244 * tests/math-spectral-norm.js:
1245 * tests/string-fasta.js:
1247 2007-10-20 Eric Seidel <eric@webkit.org>
1251 Add improved argument handling to sunspider, including
1252 --runs=<number>, --tests=<pattern, --shark, and --help
1253 Also re-factor code into subroutines
1255 * sunspider: improved argument handling
1257 2007-10-20 Maciej Stachowiak <mjs@apple.com>
1261 - Add more new tests, mostly from the computer language shootout. Not normalized yet.
1265 * tests/access-binary-trees.js: Added.
1266 * tests/access-nsieve.js: Added.
1267 * tests/bitops-nsieve-bits.js: Added.
1268 * tests/math-partial-sums.js: Added.
1269 * tests/math-spectral-norm.js: Added.
1270 * tests/string-fasta.js: Added.
1272 2007-10-20 Maciej Stachowiak <mjs@apple.com>
1274 Reviewed by Darin Adler.
1276 * TODO: Updated to note areas that are now well-covered.
1278 - Change the tests and the driver to avoid leaving large object
1279 graphs hanging around, since that throws off the subsequent tests.
1281 * resources/sunspider-standalone-driver.js:
1283 * tests/3d-morph.js:
1284 * tests/3d-raytrace.js:
1285 * tests/bitops-bitwise-and.js:
1286 * tests/string-base64.js:
1287 * tests/string-tagcloud.js:
1289 2007-10-20 Maciej Stachowiak <mjs@apple.com>
1291 Reviewed by Nikolas.
1293 - Rebalance test complexity.
1295 Scaled all the tests so they take 400-600ms on a reasonably normal user setup:
1297 Internet Explorer 7, Window XP, Dell Latitude D810 with a 2.13GHz Pentium M
1299 However, for some tests, IE7 was a huge outlier compared to other
1300 major browsers. For those tests, I used Firefox 2.0.0.8 on the
1301 same OS and hardware as a normalization basis.
1303 * tests/3d-morph.js:
1304 * tests/3d-raytrace.js:
1305 * tests/bitops-3bit-bits-in-byte.js:
1306 * tests/bitops-bits-in-byte.js:
1307 * tests/bitops-bitwise-and.js:
1308 * tests/math-cordic.js:
1309 * tests/string-base64.js:
1310 * tests/string-tagcloud.js:
1311 * tests/string-unpack-code.js:
1313 2007-10-20 Maciej Stachowiak <mjs@apple.com>
1317 - Fix the browser-hosted driver to be compatible with Safari 2
1319 * hosted/sunspider-driver.html:
1321 2007-10-20 Maciej Stachowiak <mjs@apple.com>
1323 Rubber stamped by Hyatt.
1325 - Add BSD license notice to cordic test, the original author said to do so.
1327 * tests/math-cordic.js:
1329 2007-10-18 Maciej Stachowiak <mjs@apple.com>
1333 - Support Windows and Windows browsers.
1335 * hosted/sunspider-results.html: Display results correctly in IE.
1336 * sunspider: tweaks to work on Windows, and with spaces in the path.
1338 2007-10-18 Maciej Stachowiak <mjs@apple.com>
1340 Rubber stamped by Oliver.
1342 * tests/string-tagcloud.js: Remove stray print()
1344 2007-10-17 Maciej Stachowiak <mjs@apple.com>
1348 Add some string test cases.
1350 * tests/string-base64.js: Added. Does base64 encoding and decoding.
1351 * tests/string-tagcloud.js: Added. Parses a JSON string and
1352 generates tagcloud HTML markup based on the data.
1353 * tests/string-unpack-code.js: Added. Unpack compressed versions of
1354 four of the most popular JavaScript libraries.
1355 * tests/LIST: Added the new tests.
1357 2007-10-16 Maciej Stachowiak <mjs@apple.com>
1361 * TODO: Updated with info on how to do the stats properly.
1363 * hosted/sunspider-driver.html: Reduce timeout from 500 to 200 to
1364 avoid overly slowing down the benchmark.
1366 Added some 3D-related test cases.
1368 * tests/3d-cube.js: Added.
1369 * tests/3d-morph.js: Added.
1370 * tests/3d-raytrace.js: Added.
1373 2007-10-14 Maciej Stachowiak <mjs@apple.com>
1375 Reviewed by Darin Adler.
1377 - New JavaScript benchmark
1378 http://bugs.webkit.org/show_bug.cgi?id=15515
1380 A start on a new JavaScript benchmark, with standalone and
1381 browser-hosted drivers.
1383 The test content is still incomplete and the drivers could use
1384 some more features but there is enough here to make a good start.
1386 The drivers compute a 95% confidence interval on the mean for the
1387 whole test, each category, and each individual test to make it
1388 easier to tell whether differences are statistically
1389 significant. The confidence interval can be narrowed by running
1390 the test more times.
1392 * TODO: Added. Remaining things that need to be done.
1393 * sunspider: Added. Perl script that acts as the standalone test driver.
1394 * resources/sunspider-standalone-driver.js: Added. JavaScript part
1395 of standalone test driver.
1396 * resources/sunspider-analyze-results.js: Added. JavaScript statistical
1398 * resources/TEMPLATE.html: Added. Template for browser-hosted tests.
1399 * make-hosted: Added. Script to generate browser-hosted tests.
1400 * hosted/sunspider.html: Added. Start page for browser-hosted test.
1401 * hosted/sunspider-driver.html: Added. Driver for browser-hosted tests.
1402 * hosted/sunspider-results.html: Added. Results page for browser-hosted
1404 * hosted/sunspider-record-result.js: Added. Helper file for browser-hosted
1406 * tests/LIST: Added. List of tests to use.
1407 * tests/bitops-3bit-bits-in-byte.js: Added. Some initial test content.
1408 * tests/bitops-bits-in-byte.js: Added. Ditto.
1409 * tests/bitops-bitwise-and.js: Added. Ditto.
1410 * tests/math-cordic.js: Added. Ditto.