Java 8 du flux: pourquoi parallèle flux est plus lent?

Je suis à jouer avec Java 8 de cours d'eau et ne peut pas comprendre les résultats que j'obtiens. J'ai 2 core CPU (Intel i73520M), Windows 8 64 bits et 64 bits de Java 8 update 5. Je suis en train de faire simple carte au-dessus de flux/courant parallèle de Chaînes et a trouvé que la version parallèle est un peu plus lent.

Function<Stream<String>, Long> timeOperation = (Stream<String> stream) -> {
  long time1 = System.nanoTime();
  final List<String> list = 
     stream
       .map(String::toLowerCase)
       .collect(Collectors.toList());
  long time2 = System.nanoTime();
  return time2 - time1;
};

Consumer<Stream<String>> printTime = stream ->
  System.out.println(timeOperation.apply(stream) / 1000000f);

String[] array = new String[1000000];
Arrays.fill(array, "AbabagalamagA");

printTime.accept(Arrays.stream(array));            //prints around 600
printTime.accept(Arrays.stream(array).parallel()); //prints around 900

Ne devrait pas la version parallèle être plus rapide, compte tenu du fait que j'ai 2 cœurs de PROCESSEUR?
Quelqu'un pourrait-il me donner un indice pourquoi version parallèle est plus lent?

InformationsquelleAutor Eugene Loy | 2014-04-19