/mobile Handheld Friendly website
x64 Ubuntu : Intel® Q6600® quad-core |
Each table row shows performance measurements for this F# Mono program with a particular command-line input value N.
| N | CPU secs | Elapsed secs | Memory KB | Code B | ≈ CPU Load |
|---|---|---|---|---|---|
| 10 | 2.93 | 2.56 | 15,420 | 551 | 10% 36% 59% 11% |
| 11 | 41.09 | 33.27 | 17,008 | 551 | 32% 28% 25% 36% |
| 12 | 540.60 | 436.93 | 15,420 | 551 | 20% 39% 41% 21% |
Read the ↓ make, command line, and program output logs to see how this program was run.
Read fannkuch-redux benchmark to see what this program should do.
Microsoft (R) F# 3.0 Compiler version (Mono build)
Mono JIT compiler version 3.0.3 (tarball Tue Feb 12 21:22:20 PST 2013)
LLVM: yes(3.2svn-mono)
(* The Computer Language Benchmarks Game http://benchmarksgame.alioth.debian.org/ from Scala version by Otto Bommer, August 2010 *) let fannkuch n = begin let perm1 = Array.create n 0 in for i = 0 to (n-1) do perm1.[i] <- i done; let perm = Array.create n 0 let count = Array.create n 0 let mutable flips = 0 let mutable maxflips = 0 let mutable checksum = 0 let mutable nperm = 0 let mutable r = n while r > 0 do for i = 0 to n-1 do perm.[i] <- perm1.[i] done; while r <> 1 do count.[r-1] <- r; r <- r - 1; done; flips <- 0; let k = ref perm.[0] in while !k <> 0 do let t = ref 0 in for i = 0 to !k / 2 do t := perm.[i]; perm.[i] <- perm.[!k - i]; perm.[!k - i] <- !t; done; k := perm.[0]; flips <- flips + 1; done; maxflips <- max maxflips flips; if nperm &&& 1 = 0 then checksum <- checksum + flips else checksum <- checksum - flips let mutable go = true in let mutable t = 0 in while go do if r = n then begin go <- false; r <- 0; end else begin t <- perm1.[0]; for i = 0 to r - 1 do perm1.[i] <- perm1.[i+1] done; perm1.[r] <- t; count.[r] <- count.[r] - 1; if count.[r] > 0 then go <- false else r <- r + 1; end done; nperm <- nperm + 1; done; (maxflips, checksum); end let _ = let n = try int((System.Environment.GetCommandLineArgs()).[1]) with _ -> 7 let (maxflips, checksum) = fannkuch n Printf.printf "%d\nPfannkuchen(%d) = %d\n" checksum n maxflips
Wed, 13 Feb 2013 06:59:32 GMT MAKE: mv fannkuchredux.fsharp fannkuchredux.fs /usr/local/bin/fsharpc --target:exe --platform:x64 -O -o fannkuchredux.fsharp_run.exe fannkuchredux.fs Microsoft (R) F# 3.0 Compiler version (Mono build) Copyright (c) Microsoft Corporation. All Rights Reserved. rm fannkuchredux.fs 3.55s to complete and log all make actions COMMAND LINE: /usr/local/bin/mono --llvm fannkuchredux.fsharp_run.exe 12 PROGRAM OUTPUT: 3968050 Pfannkuchen(12) = 65 <premain>: CommandLine Error: Argument 'misched' defined more than once! <premain>: CommandLine Error: Argument 'print-machineinstrs' defined more than once! -simplifycfg: CommandLine Error: Argument 'misched' defined more than once! -simplifycfg: CommandLine Error: Argument 'print-machineinstrs' defined more than once!