gecko/testing/performance/talos/page_load_test/jss/real-nsieve-2.html

50 lines
981 B
HTML

<html><head>
<!-- MOZ_INSERT_CONTENT_HOOK -->
<script src = runner.js></script>
<script>
var onlyName = 'N-Sieve', onlyNum = 2;
function thisTest() {
// The Great Computer Language Shootout
// http://shootout.alioth.debian.org/
//
// modified by Isaac Gouy
function pad(number,width){
var s = number.toString();
var prefixWidth = width - s.length;
if (prefixWidth>0){
for (var i=1; i<=prefixWidth; i++) s = " " + s;
}
return s;
}
function nsieve(m, isPrime){
var i, k, count;
for (i=2; i<=m; i++) { isPrime[i] = true; }
count = 0;
for (i=2; i<=m; i++){
if (isPrime[i]) {
for (k=i+i; k<=m; k+=i) isPrime[k] = false;
count++;
}
}
return count;
}
startTest("real-nsieve");
for ( var i = 1; i <= 4; i++ ) (function(i){
test( "N-Sieve", i, function(){
var m = (1<<i)*10000;
var flags = Array(m+1);
nsieve(m,flags);
});
})(i);
endTest();
}
</script>
<body onload="thisTest()"></body></html>