[racket] performance problem in math/matrix
On Jan 20, 2013, at 12:48 PM, Berthold Bäuml wrote:
> Nevertheless, my original motivation for the little test was to get an impression of what performance could be achieved in purely Typed Racket for numerical algorithms. Would it in principle be possible to come close to pure C-code performance (using the same algorithm) when using a floating-point-implementation?
This is an interesting challenge for all layers involved here:
-- typed racket
-- racket plus unsafe (the target language)
-- the compiler
-- and possibly the optimization coach
But we need to be careful to compare apples and apples (as much as we can). Our doubles aren't the same range as C++'s. They will always carry a 'tag'. Our vectors have a different layout, and that has performance implications.
Finally, our goal isn't high performance -- we would have to raise a lot more funding and employ pure compiler people, memory hierarchy people (a C++ compiler can account for cache sizes and memory placement), etc.
We should still try to do a good job. -- Matthias