Re: F# performance benchmarks



Markus E L wrote:
Jon Harrop wrote:
What exactly do you mean by "complete" and "self-contained"?

Something which can be used as the basis for discussion, has all
measurements (or the finally valid ones) in it and their context
(hardware, OS version(s), software versions). Single document, you
know. As I said: Something that could perhaps be seen as a lab report,
nothing I'd have to search through the thread to find out what the
current state of affairs is and patch the together with discriptions
and measurements from earlier posts?

I see. You want enough information to be able to reproduce the results all
neatly collated. That's perfectly reasonable and I'll endeavour to do that
in the future.

In fact, I'll try to do that here. The hardware is:

AMD Athlon(tm) 64 X2 Dual Core Processor 4400+ 2.211GHz
2Gb RAM

Under Linux, each CPU is reported as:

cpu family : 15
model : 35
model name : AMD Athlon(tm) 64 X2 Dual Core Processor 4400+
stepping : 2
cpu MHz : 2211.376
cache size : 1024 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt lm
3dnowext 3dnow pni lahf_lm cmp_legacy
bogomips : 4424.58
TLB size : 1024 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp

Benchmarking current code from the shootout with bounds checking, measuring
real time best of three:

SpectralNorm N-Body
OCaml 14.353s 9.469s
F# 9.374s 6.933s

The following compiler options were used because they gave the fastest
results:

SpectralNorm:
ocamlopt -inline 10
fsc -O3

N-Body:
ocamlopt
fsc -O3

The following systems were used for the two languages:

OCaml:
x86_64 GNU/Linux 2.6.18 SMP

F#:
Windows XP Pro 2002 SP2

You're only pretending to be dense now, don't you? Really, really,
disappointing that is.

Not at all, no. I had been assuming that by "complete" you
meant "benchmarked on every permutation of setup" which is, of course,
infeasible.

--
Dr Jon D Harrop, Flying Frog Consultancy
OCaml for Scientists
http://www.ffconsultancy.com/products/ocaml_for_scientists/?usenet
.



Relevant Pages

  • Some initial postmark numbers from a dual-PIII+ATA, 4.x and 6.x
    ... I pulled down the postmark benchmark, and gave it a spin on a dual PIII ... the "alone" measurements, associated with the setup and tear-down of the ... While I didn't attempt to measure precise CPU usage as yet, ...
    (freebsd-performance)
  • Re: Data alignment and endianess
    ... What have your measurements shown? ... sketchy resemblance to what the CPU winds up doing. ... so "optimization" is largely about scheduling memory references ... resources compared with x86 desktop processors. ...
    (comp.lang.c)
  • Re: what are sparc,mips?
    ... > through a CPU core, and it usually causes the magic smoke to escape. ... > MIPS is an acronym for Meaningless Indicator of Processor Speed. ... > MIPS CPU. ... Because of the problems you obliquely refer to with the older measurements ...
    (comp.unix.solaris)
  • Some power data
    ... Some power measurements on this PC, ... scale ... The I/O load is a pair of .BAT files, each continuously copying a 1GB file ... but only 1-2% of the CPU cycles and very little I/O. ...
    (microsoft.public.windowsxp.hardware)
  • Re: Design Advice to avoid Gen 2 collections
    ... > test machines that is comparable in RAM and CPU to my main servers. ... > optimizations. ... you've done some measurements. ...
    (microsoft.public.dotnet.framework.clr)