Browse thread
[Caml-list] matrix-matrix multiply - O'Caml is 6 times slower than C
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Xavier Leroy <xavier.leroy@i...> |
| Subject: | Re: [Caml-list] matrix-matrix multiply - O'Caml is 6 times slower than C |
> I don't see how to do strength-reduction without introducing references, > which appears to reduce performance more than is gained. The compiler can optimize "local" references into variables, avoiding the extra indirection normally associated with references. But even with this optimization, there might be issues related to the small number of registers available on the x86. > Here is what I was trying to accomplish - I am involved with a project > that is trying to automate/generalize some of the tricks that ATLAS > (http://math-atlas.sourceforge.net/) uses for getting maximal > performance from matrix-matrix multiply (MMM). I knew about Bagley's > conclusion that O'Caml was competitive with C for MMM, so I was curious > how close O'Caml came to GCC on Blocked MMM. I would like to use O'Caml > as a target language over C or Fortran. OCaml is a fun language to write the problem analysis and code generation for specialized numerical components, see e.g. http://www.fftw.org/ However, I agree with your conclusions that for ultimate performance you probably want to generate Fortran (for a good parallelizing compiler) or C (with asm inserts for SIMD instructions). - Xavier Leroy ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners