summaryrefslogtreecommitdiff
path: root/benchmark/so_sieve.yml
diff options
context:
space:
mode:
Diffstat (limited to 'benchmark/so_sieve.yml')
-rw-r--r--benchmark/so_sieve.yml28
1 files changed, 28 insertions, 0 deletions
diff --git a/benchmark/so_sieve.yml b/benchmark/so_sieve.yml
new file mode 100644
index 0000000..ae90f8f
--- /dev/null
+++ b/benchmark/so_sieve.yml
@@ -0,0 +1,28 @@
+prelude: |
+ # from http://www.bagley.org/~doug/shootout/bench/sieve/sieve.ruby
+benchmark:
+ so_sieve: |
+ num = 500
+ count = i = j = 0
+ flags0 = Array.new(8192,1)
+ k = 0
+ while k < num
+ k += 1
+ count = 0
+ flags = flags0.dup
+ i = 2
+ while i<8192
+ i += 1
+ if flags[i]
+ # remove all multiples of prime: i
+ j = i*i
+ while j < 8192
+ j += i
+ flags[j] = nil
+ end
+ count += 1
+ end
+ end
+ end
+ count
+loop_count: 1