Quantcast

Compiling Eigen/Lapack/BLAS for overo gumstix

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Compiling Eigen/Lapack/BLAS for overo gumstix

Jonatan Olofsson
Hi!

I'm trying to compile a program that will need Eigen/Lapack/BLAS on the Overo. Eigen itself installs fins of course (since it's only header files), but to compile the program I will need an installation of Lapack/BLAS. Has anyone gotten this to work? What BLAS is recommended?

I tried to build Eigen's BLAS natively, but the overo ran out of memory, and when building ATLAS, it stopped due to the cache beeing too small.

Anyone has any experience?

Best regards,
Jonatan Olofsson

------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Compiling Eigen/Lapack/BLAS for overo gumstix

Greg Kogut
I've compiled and used libEigen2.so from Eigen (which contains some BLAS stuff), boost's BLAS, and Orocos KDL for Overo on my host machine using OpenEmbedded recipes.    I have not tried Lapack or one of the classic BLASes.

I plan to submit all my recipes to OE, but don't feel they're nearly stable enough for public consumption yet.

It sounds like you might be trying to build directly on the Gumstix?  I have not tried that.   

Regards,
Greg




From: Jonatan Olofsson <[hidden email]>
To: [hidden email]
Sent: Thursday, January 26, 2012 1:52 PM
Subject: [Gumstix-users] Compiling Eigen/Lapack/BLAS for overo gumstix

Hi!

I'm trying to compile a program that will need Eigen/Lapack/BLAS on the Overo. Eigen itself installs fins of course (since it's only header files), but to compile the program I will need an installation of Lapack/BLAS. Has anyone gotten this to work? What BLAS is recommended?

I tried to build Eigen's BLAS natively, but the overo ran out of memory, and when building ATLAS, it stopped due to the cache beeing too small.

Anyone has any experience?

Best regards,
Jonatan Olofsson

------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users



------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Compiling Eigen/Lapack/BLAS for overo gumstix

Alex Gibson-3
In reply to this post by Jonatan Olofsson
On 27/01/2012 8:52 AM, Jonatan Olofsson wrote:

> Hi!
>
> I'm trying to compile a program that will need Eigen/Lapack/BLAS on the
> Overo. Eigen itself installs fins of course (since it's only header
> files), but to compile the program I will need an installation of
> Lapack/BLAS. Has anyone gotten this to work? What BLAS is recommended?
>
> I tried to build Eigen's BLAS natively, but the overo ran out of memory,
> and when building ATLAS, it stopped due to the cache beeing too small.
>
> Anyone has any experience?
>
> Best regards,
> Jonatan Olofsson


I've been having similar hassles trying to build scipy which needs atlas

If you need gfortran , install libgfortran as the usual gcc install
doesn't add the library.


Looks like the netbsd guys got lapack built for arm
wonder if we can borrow their make files
ftp://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/math/lapack/README.html
ftp://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/math/blas/README.html

They don't have atlas or scipy for arm though.
Looks like they are using g95 not gfortran, might be the problem.

Would love to get matplotlib built for overo
http://matplotlib.sourceforge.net/

Alex

------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Compiling Eigen/Lapack/BLAS for overo gumstix

dtran11
Has anyone gotten LAPACK to work with overo?

Thanks
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Compiling Eigen/Lapack/BLAS for overo gumstix

Greg Kogut
I've gotten Eigen and BLAS to work.  Not LAPACK, that I can remember (unless it's used by BLAS?)

I compiled them from source using OE/bitbake.

Greg



From: dtran11 <[hidden email]>
To: [hidden email]
Sent: Wednesday, May 29, 2013 8:07 AM
Subject: Re: [Gumstix-users] Compiling Eigen/Lapack/BLAS for overo gumstix

Has anyone gotten LAPACK to work with overo?

Thanks



--
View this message in context: http://gumstix.8.x6.nabble.com/Compiling-Eigen-Lapack-BLAS-for-overo-gumstix-tp4341783p4967317.html
Sent from the Gumstix mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users



------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
_______________________________________________
gumstix-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gumstix-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Compiling Eigen/Lapack/BLAS for overo gumstix

the suicidal eggroll
In reply to this post by dtran11
I just downloaded the source, changed make.inc to use the cross compilers from the OpenEmbedded build environment, and everything compiled normally.  I haven't tried using it, but I don't foresee any problems.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Compiling Eigen/Lapack/BLAS for overo gumstix

dtran11
Thanks I am also able to cross-compile it but haven't used it yet. Did you use any optimizations to use the hardware floating point unit (NEON)?

Thanks
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Compiling Eigen/Lapack/BLAS for overo gumstix

dtran11
So I am trying to get an optimized Blas library by compiling ATLAS on the Gumstix. It is currently compile now so hopefully it will finish successfully. I did run into some problems which I will share here:

1) To get native compile tools, bitbake task-sdk-native

2) If during compile you get "libgcc_s" not found then do this:
     ln -s /lib/libgcc_s.so.1 /lib/libgcc_s.so

3) If you get "library not found for -lgfortran" then install the libgfortran package or build it. It doesn't get installed by default.

4) ATLAS gave me errors with the flag "-mfpu=vfpv3". To solve this I changed "vfpv3" to "neon" in the file:
    ATLAS/CONFIG/src/atlcomp.txt


I hoped this helps.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Compiling Eigen/Lapack/BLAS for overo gumstix

dtran11
I spoke to soon. I ran into some compile errors. Might be due to the fact that I am using v4.3.3 of gcc and not v4.7. If anyone is able to compile ATLAS please post your solution. Thanks


ERROR IN COMMAND: make mmcase pre=d loopO=JIK ta=T tb=N mb=68 nb=68 kb=68 lda=68 ldb=68 ldc=0 mu=5 nu=4 ku=68 alpha=1 beta=1 muladd=1 lat=1 cleanup=1 pfA=513 casnam="res/dJIKmmTN68_68x68x68_68x68x0_5x4x68_a1_b1_1x1_1_pf513_cf-1" > /dev/null 2>&1
   PROPOSED FILENAME: res/dJIKmmTN68_68x68x68_68x68x0_5x4x68_a1_b1_1x1_1_pf513_cf-1
READ IN NUMBER OF GEMM REGISTERS = 32, MACC=1, lat=1:
PROBING FOR M AND N UNROLLING FACTORS:
   nb= 72, mu=  5, nu=  5, ku=  1, MACC=1, lat=1, mf=41.48
   nb= 72, mu=  6, nu=  4, ku=  1, MACC=1, lat=1, mf=41.00
   nb= 72, mu=  4, nu=  6, ku=  1, MACC=1, lat=1, mf=43.33
   nb= 72, mu=  3, nu=  9, ku=  1, MACC=1, lat=1, mf=39.78
   nb= 72, mu=  5, nu=  4, ku=  1, MACC=1, lat=1, mf=44.78
   nb= 72, mu=  4, nu=  5, ku=  1, MACC=1, lat=1, mf=44.78
   nb= 72, mu=  3, nu=  8, ku=  1, MACC=1, lat=1, mf=42.13
   nb= 72, mu=  7, nu=  3, ku=  1, MACC=1, lat=1, mf=44.22
   nb= 72, mu=  3, nu=  7, ku=  1, MACC=1, lat=1, mf=44.59
   nb= 72, mu=  4, nu=  4, ku=  1, MACC=1, lat=1, mf=44.59
   nb= 72, mu=  6, nu=  3, ku=  1, MACC=1, lat=1, mf=44.41
   nb= 72, mu=  3, nu=  6, ku=  1, MACC=1, lat=1, mf=44.78
   nb= 72, mu=  5, nu=  3, ku=  1, MACC=1, lat=1, mf=44.22
   nb= 72, mu=  3, nu=  5, ku=  1, MACC=1, lat=1, mf=44.41
   nb= 72, mu=  2, nu= 14, ku=  1, MACC=1, lat=1, mf=39.93
   nb= 72, mu=  2, nu= 13, ku=  1, MACC=1, lat=1, mf=40.85
   nb= 72, mu=  4, nu=  3, ku=  1, MACC=1, lat=1, mf=44.04
   nb= 72, mu=  3, nu=  4, ku=  1, MACC=1, lat=1, mf=44.22
   nb= 72, mu=  2, nu= 12, ku=  1, MACC=1, lat=1, mf=40.08
SELECTED MU=5, NU=4 (44.78)

FINDING UPPER BOUND ON NB:
NB UPPER BOUND CHOSEN AS : 80 (44.78)

FINDING LOWER BOUND ON NB:
   nb= 72, mu=  5, nu=  4, ku=  1, MACC=1, lat=1, mf=44.78
   nb= 68, mu=  5, nu=  4, ku=  1, MACC=1, lat=1, mf=44.98
   nb= 64, mu=  5, nu=  4, ku=  1, MACC=1, lat=1, mf=44.55
NB LOWER BOUND CHOSEN AS : 68

FINDING BEST NB AND PREFETCH SETTING IN RANGE [68,80,2]:
make[4]: *** [RunGMMSearch] Error 255
make[4]: Leaving directory `/home/root/ATLAS-3.10.1/Linux-ARM/tune/blas/gemm'
xmmsearch: /home/root/ATLAS-3.10.1/Linux-ARM/..//tune/blas/gemm/mmsearch.c:140: DoAllSearches: Assertion `!system(ln)' failed.

INVOKING GMMSEARCH.C, PRE='d'
make[3]: *** [res/dMMRES.sum] Aborted
make[3]: Leaving directory `/home/root/ATLAS-3.10.1/Linux-ARM/tune/blas/gemm'
make[2]: *** [/home/root/ATLAS-3.10.1/Linux-ARM/tune/blas/gemm/res/dMMRES.sum] Error 2
make[2]: Leaving directory `/home/root/ATLAS-3.10.1/Linux-ARM/bin'
xatlas_build: /home/root/ATLAS-3.10.1/Linux-ARM/..//bin/atlas_install.c:706: GoToTown: Assertion `mmp' failed.
Aborted
make[1]: *** [build] Error 134
make[1]: Leaving directory `/home/root/ATLAS-3.10.1/Linux-ARM'
make: *** [build] Error 2
Loading...