diff options
author | Aleksandar Pokopec <aleksandar.prokopec@epfl.ch> | 2010-06-07 10:15:32 +0000 |
---|---|---|
committer | Aleksandar Pokopec <aleksandar.prokopec@epfl.ch> | 2010-06-07 10:15:32 +0000 |
commit | e67f56076624ea83383901934a30280d7f97380f (patch) | |
tree | a28b45d7a79ff9002735ea225b3a4733ac4d0234 /test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala | |
parent | dd396886d0da88326e5e4772af4d8813360ea8a5 (diff) | |
download | scala-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.scala | 39 |
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 _ => + } +} |