| Index: chrome/test/data/sunspider/string-fasta.html
|
| ===================================================================
|
| --- chrome/test/data/sunspider/string-fasta.html (revision 0)
|
| +++ chrome/test/data/sunspider/string-fasta.html (revision 0)
|
| @@ -0,0 +1,135 @@
|
| +<!DOCTYPE html>
|
| +<head>
|
| +<!--
|
| + Copyright (C) 2007 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 COMPUTER, 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 COMPUTER, 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 string-fasta</title>
|
| +<link rel="stylesheet" href="sunspider.css">
|
| +</head>
|
| +
|
| +<body>
|
| +<h3>string-fasta</h3>
|
| +<div id="console">
|
| +</div>
|
| +<script src="sunspider-record-result.js"></script>
|
| +<script>
|
| +
|
| +var _sunSpiderStartDate = new Date();
|
| +
|
| +// The Great Computer Language Shootout
|
| +// http://shootout.alioth.debian.org
|
| +//
|
| +// Contributed by Ian Osgood
|
| +
|
| +var last = 42, A = 3877, C = 29573, M = 139968;
|
| +
|
| +function rand(max) {
|
| + last = (last * A + C) % M;
|
| + return max * last / M;
|
| +}
|
| +
|
| +var ALU =
|
| + "GGCCGGGCGCGGTGGCTCACGCCTGTAATCCCAGCACTTTGG" +
|
| + "GAGGCCGAGGCGGGCGGATCACCTGAGGTCAGGAGTTCGAGA" +
|
| + "CCAGCCTGGCCAACATGGTGAAACCCCGTCTCTACTAAAAAT" +
|
| + "ACAAAAATTAGCCGGGCGTGGTGGCGCGCGCCTGTAATCCCA" +
|
| + "GCTACTCGGGAGGCTGAGGCAGGAGAATCGCTTGAACCCGGG" +
|
| + "AGGCGGAGGTTGCAGTGAGCCGAGATCGCGCCACTGCACTCC" +
|
| + "AGCCTGGGCGACAGAGCGAGACTCCGTCTCAAAAA";
|
| +
|
| +var IUB = {
|
| + a:0.27, c:0.12, g:0.12, t:0.27,
|
| + B:0.02, D:0.02, H:0.02, K:0.02,
|
| + M:0.02, N:0.02, R:0.02, S:0.02,
|
| + V:0.02, W:0.02, Y:0.02
|
| +}
|
| +
|
| +var HomoSap = {
|
| + a: 0.3029549426680,
|
| + c: 0.1979883004921,
|
| + g: 0.1975473066391,
|
| + t: 0.3015094502008
|
| +}
|
| +
|
| +function makeCumulative(table) {
|
| + var last = null;
|
| + for (var c in table) {
|
| + if (last) table[c] += table[last];
|
| + last = c;
|
| + }
|
| +}
|
| +
|
| +function fastaRepeat(n, seq) {
|
| + var seqi = 0, lenOut = 60;
|
| + while (n>0) {
|
| + if (n<lenOut) lenOut = n;
|
| + if (seqi + lenOut < seq.length) {
|
| + ret = seq.substring(seqi, seqi+lenOut);
|
| + seqi += lenOut;
|
| + } else {
|
| + var s = seq.substring(seqi);
|
| + seqi = lenOut - s.length;
|
| + ret = s + seq.substring(0, seqi);
|
| + }
|
| + n -= lenOut;
|
| + }
|
| +}
|
| +
|
| +function fastaRandom(n, table) {
|
| + var line = new Array(60);
|
| + makeCumulative(table);
|
| + while (n>0) {
|
| + if (n<line.length) line = new Array(n);
|
| + for (var i=0; i<line.length; i++) {
|
| + var r = rand(1);
|
| + for (var c in table) {
|
| + if (r < table[c]) {
|
| + line[i] = c;
|
| + break;
|
| + }
|
| + }
|
| + }
|
| + ret = line.join('');
|
| + n -= line.length;
|
| + }
|
| +}
|
| +
|
| +var ret;
|
| +
|
| +var count = 7;
|
| +ret = fastaRepeat(2*count*100000, ALU);
|
| +ret = fastaRandom(3*count*1000, IUB);
|
| +ret = fastaRandom(5*count*1000, HomoSap);
|
| +
|
| +
|
| +
|
| +var _sunSpiderInterval = new Date() - _sunSpiderStartDate;
|
| +
|
| +record(_sunSpiderInterval);
|
| +</script>
|
| +
|
| +
|
| +</body>
|
| +</html>
|
|
|
| Property changes on: chrome\test\data\sunspider\string-fasta.html
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|