I’m doing a neural network project (much of linear algebra calculations as you know) so I’ve already used Jblas which is a great library but after I installed Ubuntu latest Version 11.04 I’m having some trouble using it, (error couldn’t copy temp bla bla) which I would solve if I did some work.
But the error it self was a warning Should I really use native library ? Knowing that I already escaped C++ because of this kind of errors (Java as portable and Implementation easier etc)
So I went back to Apache Commons which is pretty good (functionally: lots of packages, good design) but performance it’s the worst !!
which puts me in dilemma here the Performance in Apache Vs Performance of Processors nowadays Should we disregard the slow performance of Libraries like Apache and count on the Improvement of Technology and multi-threading in new Processors ?
What do you think I should do I’m half way through using JBLAS,
- Should I use Apache ?
- Keep going using JBLAs(fix the error) and move on
- Use another new 2011 promising JAVA linear Algebra library of your choice ?
EDIT: Error was:
“org.jblas ERROR Couldn’t load copied link file: java.lang.UnsatisfiedLinkError: /tmp/jblas2930149998010945438libjblas_arch_flavor.so: libgfortran.so.3: cannot open shared object file: No such file or directory.”
After I consulted the Authors of JBLAS at their Facebook Page they told me I would need libgfortran3 to be installed, and problem was solved “Just in case someone gets the same problem”
I don’t think an interpreted language like Java is going to give you the raw performance of native code. That’s why FORTRAN/C/C++ are still very much alive and well in scientific computing. Packages like LAPACK are still the gold standard as far as I know.
I’m not sure if Colt makes me a liar. I have no personal experience with it, but if I were still working in this area I’d certainly give it a look.
If that’s truly your biggest issue, I’d press on with JBLAS. You can fix that error. Keep going.