
I'm using Windows 7 32bit Host OS(ghc 6.8.3) and Virtualbox Archlinux Guest OS(ghc 6.8.4) I feel that ghci code executing speed in guest os is 1.5~2x faster than host os The code: let t n = do {if n `mod` 100000 == 0 then print n else return ()} >> t (n+1) t 1 any clue?

Donghee Nah
I feel that ghci code executing speed in guest os is 1.5~2x faster than host os
The code: let t n = do {if n `mod` 100000 == 0 then print n else return ()} >> t (n+1) t 1
any clue?
Speed of the terminal? Cost of syscalls (user/kernel transitions)? -k -- If I haven't seen further, it is by standing in the footprints of giants

Hi, Am Sonntag, den 21.02.2010, 13:58 +0100 schrieb Ketil Malde:
Donghee Nah
writes: I feel that ghci code executing speed in guest os is 1.5~2x faster than host os
The code: let t n = do {if n `mod` 100000 == 0 then print n else return ()} >> t (n+1) t 1
any clue?
Speed of the terminal? Cost of syscalls (user/kernel transitions)?
also note that I observed similar things with Win32 code vs. Linux code when compiling stuff unoptimized. See http://www.joachim-breitner.de/blog/archives/358-Building-arbtt-for-Windows.... the first three paragraphs. But I don’t know why that is. Greetings, Joachim -- Joachim "nomeata" Breitner mail: mail@joachim-breitner.de | ICQ# 74513189 | GPG-Key: 4743206C JID: nomeata@joachim-breitner.de | http://www.joachim-breitner.de/ Debian Developer: nomeata@debian.org

On Feb 21, 2010, at 06:27 , Donghee Nah wrote:
I'm using Windows 7 32bit Host OS(ghc 6.8.3) and Virtualbox Archlinux Guest OS(ghc 6.8.4) I feel that ghci code executing speed in guest os is 1.5~2x faster than host os
My guess is that GHC (and the GHC RTS) on win32 is using a POSIX emulation layer supplied by mingw32 for all system calls, introducing extra overhead. Unfortunately, I don't think we have enough Windows- familiar folks with enough understanding of the GHC RTS to optimize it for the native Windows API. -- brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery@kf8nh.com system administrator [openafs,heimdal,too many hats] allbery@ece.cmu.edu electrical and computer engineering, carnegie mellon university KF8NH

Hello Brandon, Wednesday, February 24, 2010, 8:08:41 AM, you wrote:
I feel that ghci code executing speed in guest os is 1.5~2x faster than host os
My guess is that GHC (and the GHC RTS) on win32 is using a POSIX emulation layer supplied by mingw32 for all system calls, introducing extra overhead.
1. yes, mingw is using POSIX emulation layer for file operations, but i don't believe that it provides any serious overhead - even for i/o 2. this example was purely computational, no OS calls involved -- Best regards, Bulat mailto:Bulat.Ziganshin@gmail.com
participants (5)
-
Brandon S. Allbery KF8NH
-
Bulat Ziganshin
-
Donghee Nah
-
Joachim Breitner
-
Ketil Malde