summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksandar Pokopec <aleksandar.prokopec@epfl.ch>2010-06-16 14:07:07 +0000
committerAleksandar Pokopec <aleksandar.prokopec@epfl.ch>2010-06-16 14:07:07 +0000
commit8af697d20f3c79cae0ebfb7fd3c35356705f8f62 (patch)
tree3c1e3dbec765cb601cbff12aa686f8d2fc182d9f
parentb23b36e65522730c82c9f44e93ef887cbd824596 (diff)
downloadscala-8af697d20f3c79cae0ebfb7fd3c35356705f8f62.tar.gz
scala-8af697d20f3c79cae0ebfb7fd3c35356705f8f62.tar.bz2
scala-8af697d20f3c79cae0ebfb7fd3c35356705f8f62.zip
Minor changes in parallel hash trie. No review.
-rw-r--r--src/parallel-collections/scala/collection/parallel/immutable/ParallelHashTrie.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/Benchmarking.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Dummy.scala1
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala1
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala14
5 files changed, 19 insertions, 1 deletions
diff --git a/src/parallel-collections/scala/collection/parallel/immutable/ParallelHashTrie.scala b/src/parallel-collections/scala/collection/parallel/immutable/ParallelHashTrie.scala
index 362e36135e..3f73c8fe18 100644
--- a/src/parallel-collections/scala/collection/parallel/immutable/ParallelHashTrie.scala
+++ b/src/parallel-collections/scala/collection/parallel/immutable/ParallelHashTrie.scala
@@ -70,7 +70,7 @@ extends ParallelMap[K, V]
object ParallelHashTrie extends ParallelMapFactory[ParallelHashTrie] {
def empty[K, V]: ParallelHashTrie[K, V] = new ParallelHashTrie[K, V]
- implicit def canBuildFrom[K, V]: CanBuildFromParallel[ParallelHashTrie[K, V], (K, V), ParallelMap[K, V]] = new ParallelMapCanBuildFrom[K, V]
+ implicit def canBuildFrom[K, V]: CanBuildFromParallel[Coll, (K, V), ParallelHashTrie[K, V]] = new ParallelMapCanBuildFrom[K, V]
}
diff --git a/test/benchmarks/src/scala/collection/parallel/Benchmarking.scala b/test/benchmarks/src/scala/collection/parallel/Benchmarking.scala
index 01b522cd99..0054893b8a 100644
--- a/test/benchmarks/src/scala/collection/parallel/Benchmarking.scala
+++ b/test/benchmarks/src/scala/collection/parallel/Benchmarking.scala
@@ -98,6 +98,8 @@ trait BenchmarkRegister {
// parallel hash trie benchmarks
register(hashtries.RefParallelHashTrieBenches.Reduce)
register(hashtries.RefParallelHashTrieBenches.ReduceMedium)
+ register(hashtries.RefParallelHashTrieBenches.Map)
+ register(hashtries.RefParallelHashTrieBenches.Map2)
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Dummy.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Dummy.scala
index 3699b1a255..2b2ad81af6 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Dummy.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Dummy.scala
@@ -6,6 +6,7 @@ package scala.collection.parallel.benchmarks.generic
class Dummy(val in: Int) {
var num = in
override def toString = in.toString
+ override def hashCode = in
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala
index 42399c980a..1268f94bac 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala
@@ -11,6 +11,7 @@ trait Operators[T] {
def mediumreducer: (T, T) => T
def filterer: T => Boolean
def mapper: T => T
+ def mapper2: T => T = error("unsupported")
def heavymapper: T => T
def taker: T => Boolean
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala
index a7488858b2..3db33ebaed 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala
@@ -110,6 +110,20 @@ trait StandardParallelIterableBench[T, Coll <: ParallelIterable[T]] extends Para
def companion = ReduceMedium
}
+ object Map extends IterableBenchCompanion {
+ override def defaultSize = 5000
+ def benchName = "map";
+ def apply(sz: Int, p: Int, w: String) = new Map(sz, p, w)
+ }
+
+ class Map(val size: Int, val parallelism: Int, val runWhat: String)
+ extends IterableBench with StandardParallelIterableBench[T, Coll] {
+ def comparisonMap = collection.Map()
+ def runseq = this.seqcoll.map(operators.mapper)
+ def runpar = this.parcoll.map(operators.mapper)
+ def companion = Map
+ }
+
}