Tengo un programa escrito en Haskell y destinado a compilarse con GHC. El programa se escala muy bien en múltiples núcleos, por lo que es muy importante habilitar el multihilo. En mi archivo .cabal
, agregué ghc-options: -O3 -threaded
para vincularme con el tiempo de ejecución enhebrado. El problema es que con este enfoque el usuario necesitaría ejecutar el programa con foo +RTS -N
, lo que parece un poco críptico y poco amigable para el usuario.Creación con indicadores de tiempo de ejecución utilizando cabal y ghc
¿Cómo puedo decirle a cabal/ghc que habilite esos indicadores de tiempo de ejecución de forma invisible para el usuario? He leído sobre --with-rtsopts
, pero GHC (7.0.3) simplemente escupe unrecognized flag
cuando intento usarlo.
¡Gracias, esto me ayudó! También intenté habilitar la bandera '-g1' con' -with-rtsopts = "- N -g1" 'pero luego recibí' bandera no reconocida: -g1'. Ambos '-N' y' -g1' funcionan bien por separado. –
@ Viktor Dahl: Creo que las citas están causando el problema. Intenta usar comillas simples o múltiples líneas '-with-rtsopts'. Si eso lo resuelve, probablemente sea un error ghc (o un error de documentación). –
Las comillas simples no lo resolvieron, pero utilizaron dos '-with-rtsopts'. –