/mobile Handheld Friendly website
x64 Ubuntu : Intel® Q6600® one 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 |
|---|---|---|---|---|---|
| 500,000 | 0.95 | 0.95 | 16,116 | 329 | 0% 0% 0% 100% |
| 5,000,000 | 5.65 | 5.65 | 17,176 | 329 | 1% 0% 0% 100% |
| 50,000,000 | 52.19 | 52.21 | 17,796 | 329 | 0% 0% 0% 100% |
Read the ↓ make, command line, and program output logs to see how this program was run.
Read thread-ring 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/ Contributed by Jomo Fisher Uses F# asyncs. Asyncs are triggered by tailcall in sequence as progress is made around the ring. *) let ringLength = 503 let cells = Array.zeroCreate ringLength let threads = Array.zeroCreate ringLength let answer = ref -1 let createWorker i = let next = (i+1)%ringLength async { let value = cells.[i] if false then () match value with | 0 -> answer := i+1 | _ -> cells.[next] <- value - 1 return! threads.[next] } [<EntryPoint>] let main args = cells.[0] <- if args.Length>0 then int args.[0] else 50000000 for i in 0..ringLength-1 do threads.[i]<-createWorker i let result = Async.StartImmediate(threads.[0]) printfn "%d" !answer 0
Wed, 13 Feb 2013 12:47:11 GMT MAKE: mv threadring.fsharp-3.fsharp threadring.fsharp-3.fs /usr/local/bin/fsharpc --target:exe --platform:x64 -O -o threadring.fsharp-3.fsharp_run.exe threadring.fsharp-3.fs Microsoft (R) F# 3.0 Compiler version (Mono build) Copyright (c) Microsoft Corporation. All Rights Reserved. /home/dunham/benchmarksgame_onecore/threadring/tmp/threadring.fsharp-3.fs(9,1): warning FS0221: The declarations in this file will be placed in an implicit module 'Threadring.fsharp-3' based on the file name 'threadring.fsharp-3.fs'. However this is not a valid F# identifier, so the contents will not be accessible from other files. Consider renaming the file or adding a 'module' or 'namespace' declaration at the top of the file. rm threadring.fsharp-3.fs 3.63s to complete and log all make actions COMMAND LINE: /usr/local/bin/mono --llvm -O=unsafe threadring.fsharp-3.fsharp_run.exe 50000000 PROGRAM OUTPUT: 292 <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!