Wolfgang Hoschek wrote:
>> Why do you recommend VecMath over Jama, Jampack, Jakarta or my own
>> ojAlgo?
>
> Just to clarify: I never said Colt was slow/bad, and yes the tests
> were done using small matrices.
>
> "Consider" does not mean "recommend".
> Plus, I have expressed no opinion either way on your project.
I didn't expect you to know anything about ojAlgo. I'll refrase the
question: Is there any reason why you ask people to consider VectMath
and not Jama?
>
>> I just rewrote the tests to work with randomly generated matrices of
>> arbitrary size. These are the numbers for 100x100 dimension matrices
>> looping 10 times.
>
>
> Total execution time is too small for this to be a meaningful
> benchmark with real-world relevance.
> There are lots of gotchas when benchmarking with hotspot engines. To
> get some background, try to attend a talk from hotspot engineers when
> you get a chance. Here one such talk "how not to write a
> microbenchmark"
> http://servlet.java.sun.com/javaone/sf2002/conf/sessions/display
> -1816.en.jsp
Just running the test on Windows instead of on Mac gives different
execution time relations/proprotions.
There are other problems... Is exploiting characteristics of a specific
implementation cheating? Both BigMatrix and ColtMatrix are very fast at
transposing matrices, but that's because they´re not actually moving the
numbers.
>
>> Working with BigDecimal rather than double gives you unmatched
>> precision (not speed).
>
> Which is what few use cases need in practise, at least in my experience.
I needed it once. That's why ojAlgo exists. Currently I can switch
between 4 implementations with different characteristics (speed,
precision, complex numbers...)
/Anders
http://ojalgo.org/
> Anyway, enjoy your project.
>
> Wolfgang.
|