diff options
Diffstat (limited to 'test/benchmarks/src/scala/collection/immutable')
-rw-r--r-- | test/benchmarks/src/scala/collection/immutable/range-bench.scala | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/test/benchmarks/src/scala/collection/immutable/range-bench.scala b/test/benchmarks/src/scala/collection/immutable/range-bench.scala deleted file mode 100644 index e167ff04e8..0000000000 --- a/test/benchmarks/src/scala/collection/immutable/range-bench.scala +++ /dev/null @@ -1,61 +0,0 @@ -package scala.collection.immutable -package benchmarks - -object RangeTest { - // not inlined any more, needs investigation - // - // class XXS { - // private val array = Array.range(0, 100) - // def tst = { var sum = 0; for (i <- 0 until array.length) sum += array(i); sum } - // } - - var x: Int = 0 - - def foreachSum(max: Int): Int = { - var sum = 0 - 1 to max foreach (sum += _) - sum - } - def whileSum(max: Int) = { - var sum = 0 - var num = 1 - while (num <= max) { - sum += num - num += 1 - } - sum - } - - def show(max: Int, foreachNanos: Long, whileNanos: Long) { - val winner = if (foreachNanos < whileNanos) "foreachSum" else "whileSum" - val ratio = if (foreachNanos < whileNanos) foreachNanos.toDouble / whileNanos else whileNanos.toDouble / foreachNanos - println("1 to %d:, %12s wins, %.3f: foreach %.3f while %.3f".format( - max, winner, ratio, - foreachNanos.toDouble / 1000000L, - whileNanos.toDouble / 1000000L) - ) - } - - def run(max: Int) = { - val foreachFirst = util.Random.nextBoolean - val t1 = System.nanoTime - x = if (foreachFirst) foreachSum(max) else whileSum(max) - val t2 = System.nanoTime - x = if (foreachFirst) whileSum(max) else foreachSum(max) - val t3 = System.nanoTime - - val foreachNanos = if (foreachFirst) t2 - t1 else t3 - t2 - val whileNanos = if (foreachFirst) t3 - t2 else t2 - t1 - show(max, foreachNanos, whileNanos) - } - - def main(args: Array[String]): Unit = { - var max = if (args.isEmpty) 100 else args(0).toInt - while (max > 0) { - run(max) - run(max) - run(max) - max += (max / 7) - } - } -} |