summaryrefslogtreecommitdiff
path: root/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala
diff options
context:
space:
mode:
authorAleksandar Pokopec <aleksandar.prokopec@epfl.ch>2010-06-07 10:15:32 +0000
committerAleksandar Pokopec <aleksandar.prokopec@epfl.ch>2010-06-07 10:15:32 +0000
commite67f56076624ea83383901934a30280d7f97380f (patch)
treea28b45d7a79ff9002735ea225b3a4733ac4d0234 /test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala
parentdd396886d0da88326e5e4772af4d8813360ea8a5 (diff)
downloadscala-e67f56076624ea83383901934a30280d7f97380f.tar.gz
scala-e67f56076624ea83383901934a30280d7f97380f.tar.bz2
scala-e67f56076624ea83383901934a30280d7f97380f.zip
Adding parallel collections to trunk.
sabbus also edited to add parallel collections to the library jar - review by phaller
Diffstat (limited to 'test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala')
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala39
1 files changed, 39 insertions, 0 deletions
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala
new file mode 100644
index 0000000000..9e6102fb94
--- /dev/null
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala
@@ -0,0 +1,39 @@
+package scala.collection.parallel.benchmarks.arrays
+
+
+import scala.collection.parallel.benchmarks._
+
+
+abstract class Resetting[T: Manifest](elemcreate: Int => T, sz: Int, p: Int, what: String)
+extends Bench {
+ val size = sz
+ val parallelism = p
+ val runWhat = what
+
+ var anyarray: Array[Any] = null
+ var castarray: AnyRef = null
+ var gencastarray: Array[T] = null
+ var manifarray: Array[T] = null
+
+ reset
+
+ def reset = what match {
+ case "any" =>
+ anyarray = new Array[Any](sz)
+ for (i <- 0 until sz) anyarray(i) = elemcreate(i)
+ case "cast" =>
+ val arr = new Array[T](sz)
+ for (i <- 0 until sz) arr(i) = elemcreate(i)
+ castarray = arr
+ case "gencast" =>
+ gencastarray = new Array[T](sz)
+ for (i <- 0 until sz) gencastarray(i) = elemcreate(i)
+ case "manif" =>
+ manifarray = new Array[T](sz)
+ for (i <- 0 until sz) manifarray(i) = elemcreate(i)
+ case "unknown" =>
+ manifarray = new Array[T](sz)
+ for (i <- 0 until sz) manifarray(i) = elemcreate(i)
+ case _ =>
+ }
+}