2009-03-08 33 views
5

He estado leyendo un número de tutorialson Haskell. Sin embargo, no he podido obtener la aplicación compilada para ejecutar en un multinúcleo (tengo un Intel Quad Core) en windows (32 bit).Haskell multi-núcleo en Windows

me han tratado una serie de cosas:

Pero no hubo suerte.

La aplicación compilada se ejecuta al 100% en un solo núcleo.

¿Alguna idea?

Código:

import Control.Parallel 
import Control.Monad 
import Text.Printf 

fib :: Int -> Int 
fib 0 = 0 
fib 1 = 1 
fib n = l `pseq` r `pseq` l+r 
    where 
    l = fib (n-1) 
    r = fib (n-2) 

main = forM_ [0..350] $ \i -> 
     printf "n=%d => %d\n" i (fib i) 
+0

¿Es posible añadir el código que está tratando de ejecutar? – vili

+0

¿Está ejecutando 32 o 64 bits? Probablemente importe – MarkusQ

+0

pregunta actualizada para ambos valores – cbrulak

Respuesta

5

Si Vili es correcta (no puedo probar, ya que no posee ninguna cajas MS), que podría estar relacionado con this bug

6

Mediante el par en lugar de PSEQ parece solucionarlo.

+0

¿está ejecutando Windows? Porque eso no me hizo nada – cbrulak

Cuestiones relacionadas