Skip to content

Commit

Permalink
test: add prime sum bench mark (#59)
Browse files Browse the repository at this point in the history
Another performance test that's not so stack intensive as Fibonacci
(#37).

Counting the primes less than 10,000:

- gravlax: 36.7s
- jlox: 11s
- clox: 3.6s
  • Loading branch information
danvk committed Feb 18, 2024
1 parent 29c48a1 commit 2823c25
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions bench/prime.lox
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
var N = 10000;

fun isPrime(n) {
for (var i = 2; i <= n / 2; i = i + 1) {
for (var j = 2; j <= n / i + 1; j = j + 1) {
if (i * j == n) {
return false;
}
}
}
return true;
}

var start = clock();
var sumOfPrimes = 0;
var numPrimes = 0;
for (var i = 2; i < N; i = i + 1) {
if (isPrime(i)) {
// print "Found a prime!";
// print i;
sumOfPrimes = sumOfPrimes + i;
numPrimes = numPrimes + 1;
}
}
var end = clock();

print "N=";
print N;
print "Primes less than N";
print numPrimes;
print "Sum=";
print sumOfPrimes;
print "Elapsed time (ms)=";
print end - start;

0 comments on commit 2823c25

Please sign in to comment.