summaryrefslogtreecommitdiff
path: root/test/benchmarking
diff options
context:
space:
mode:
authorAleksandar Prokopec <axel22@gmail.com>2012-03-19 17:03:17 +0100
committerAleksandar Prokopec <axel22@gmail.com>2012-03-19 17:03:17 +0100
commit1ba08472d6b3cf309211c6f912cc895e3a63fee0 (patch)
tree75142b2ea34d1aca90c070ea27628a48c240fa97 /test/benchmarking
parent57475a8eca20a89bc7be326a9b198d2eff0bcc43 (diff)
downloadscala-1ba08472d6b3cf309211c6f912cc895e3a63fee0.tar.gz
scala-1ba08472d6b3cf309211c6f912cc895e3a63fee0.tar.bz2
scala-1ba08472d6b3cf309211c6f912cc895e3a63fee0.zip
Add 2 benchmark sources.
Diffstat (limited to 'test/benchmarking')
-rw-r--r--test/benchmarking/ParHashMap.scala33
-rw-r--r--test/benchmarking/ParVector-reduce.scala33
2 files changed, 66 insertions, 0 deletions
diff --git a/test/benchmarking/ParHashMap.scala b/test/benchmarking/ParHashMap.scala
new file mode 100644
index 0000000000..33a378fb04
--- /dev/null
+++ b/test/benchmarking/ParHashMap.scala
@@ -0,0 +1,33 @@
+
+
+
+import collection.parallel.mutable.ParHashMap
+
+
+
+object Map extends testing.Benchmark {
+ val length = sys.props("length").toInt
+ val par = sys.props("par").toInt
+ val phm = ParHashMap((0 until length) zip (0 until length): _*)
+
+ phm.tasksupport = new collection.parallel.ForkJoinTaskSupport(new scala.concurrent.forkjoin.ForkJoinPool(par))
+
+ def run = {
+ phm map {
+ kv => kv
+ }
+ }
+}
+
+
+object MapSeq extends testing.Benchmark {
+ val length = sys.props("length").toInt
+ val hm = collection.mutable.HashMap((0 until length) zip (0 until length): _*)
+
+ def run = {
+ hm map {
+ kv => kv
+ }
+ }
+}
+
diff --git a/test/benchmarking/ParVector-reduce.scala b/test/benchmarking/ParVector-reduce.scala
new file mode 100644
index 0000000000..2b4594e997
--- /dev/null
+++ b/test/benchmarking/ParVector-reduce.scala
@@ -0,0 +1,33 @@
+
+
+
+import collection.parallel.immutable.ParVector
+
+
+
+object Reduce extends testing.Benchmark {
+ val length = sys.props("length").toInt
+ val par = sys.props("par").toInt
+ val parvector = ParVector((0 until length): _*)
+
+ parvector.tasksupport = new collection.parallel.ForkJoinTaskSupport(new scala.concurrent.forkjoin.ForkJoinPool(par))
+
+ def run = {
+ parvector reduce {
+ (a, b) => a + b
+ }
+ }
+}
+
+
+object ReduceSeq extends testing.Benchmark {
+ val length = sys.props("length").toInt
+ val vector = collection.immutable.Vector((0 until length): _*)
+
+ def run = {
+ vector reduce {
+ (a, b) => a + b
+ }
+ }
+}
+