32-bit libjblas library does not load

Post Reply
matjan
Posts: 3
Joined: 27 Jan 2013 22:07

32-bit libjblas library does not load

Post by matjan » 27 Jan 2013 22:39

Hello,

I downloaded version 1.2.9 of openLCA this week, installed it on my work laptop which runs on Ubuntu 12.04 32-bit, and fiddled around with it. This fiddling around entailed defining the ecoinvent process 'ethanol, 99.7% in H2O, from wood, at distillation (SE)' as a product system and running the calculation. When I did this using the 'analysis' option, it took about 20 minutes. Obviously, this is rather long. So, I checked the log.html file and saw that the libjblas library is not loaded due to an error in it:

Code: Select all

java.lang.UnsatisfiedLinkError: /home/matty/openLCA-data/jblas_1.1/Linux/i386/libjblas.so: /home/matty/openLCA-data/jblas_1.1/Linux/i386/libjblas.so: undefined symbol: sqrt 
I was thinking that if this library is not loaded, this will cripple calculation speed since it is a linear algebra library. Therefore, I also installed openLCA on my desktop at home which runs on 64-bit Arch Linux. There, the libjblas library did load and the same calculation was done about half a minute.
So, it seems that the error is only present in the 32-bit version of openLCA and that the libjblas library indeed speeds up the calculation. I find it implausible that the time difference in the calculations can solely be contributed to difference in speed between the 32-bit and 64-bit version, or the speed of my desktop vs. work laptop.

I was advised to verify if g++ and gfortran were installed because the problem might be a missing Fortran library. However, both g++ and gfortran (gfortran version 4.6 and libgfortran3) are installed on my laptop. Maybe I am missing a library that is not included in these packages.
Has anyone else encountered this problem? If so, how can it be resolved? What could the missing Fortran library be?

Thanks for your advice,
Matty

msrocka
Posts: 18
Joined: 29 Jan 2013 10:07

Re: 32-bit libjblas library does not load

Post by msrocka » 29 Jan 2013 16:22

Dear Matty,

Thank you very much! You are right; the native BLAS support seems to be broken in the current version (1.2.9) for Linux.

I built a new version of the BLAS package for Linux 32bit which is available from here: http://build-blas.googlecode.com/files/ ... 386.tar.gz.

You can replace the BLAS library 'openLCA-data/jblas_1.1/Linux/i386/libjblas.so' with the libjblas.so in this package. As we cannot link statically to the gcc libraries on Linux the following packages need to be installed: gcc, gfortran, and g++.

Does this work? If so, we will include this package in the next release.

Best regards,
Michael

matjan
Posts: 3
Joined: 27 Jan 2013 22:07

Re: 32-bit libjblas library does not load

Post by matjan » 30 Jan 2013 17:38

Dear Michael,

it works!
The calculation for the same product system now takes about 15 seconds and is thus even faster than on my 64-bit Arch desktop. Could you maybe also compile a new 64-bit library just to see if that makes a difference?

Thank you very much for uploading the new library.

Best regards,
Matty

msrocka
Posts: 18
Joined: 29 Jan 2013 10:07

Re: 32-bit libjblas library does not load

Post by msrocka » 31 Jan 2013 19:12

Dear Matty,

Great! Thank you very much for testing it. I created a new package for Linux 64bit: http://build-blas.googlecode.com/files/ ... _64.tar.gz. Just replace the libjblas.so file as for the 32bit version (also gcc, g++, and gfortran need to be installed).

Hope it works and looking forward to see if it is faster.

Best regards,
Michael

gebbissimo1
Posts: 20
Joined: 24 Jan 2013 23:53

Re: 32-bit libjblas library does not load

Post by gebbissimo1 » 26 Feb 2013 14:15

Had the same problem, thanks for the solution!

Post Reply

Who is online

Users browsing this forum: No registered users and 10 guests