Skip to content
Prev 1792 / 3656 Next

Accessto OpenBLAS

So I was passing this to my IT department but they have now
abandoned me and I'm left to fend for myself.? I guess I have to 
learn how to do everything on my own now.

I looked at the read.me.? It's pretty cryptic.? How does one link
with -lopenblas to a shared library?? At the bash command line?
Somewhere else?? Where?

My machine has 4 Intel? Xeon? Processor X5650 CPUs.? On
Intel's site they say each CPU has 6 cores and 12 threads.? Of 
course I want to take advatage of that horsepower. It looks like 
the environment variables can be setup when I launch R, correct?
The questions is how?? There are three environment variables.? 
Which one should I use?? And how do I get R to pick up
those environment variables.? (I'm usinf Rkward as a front end).

There's some ambiguity in the read.me under known issues.? 
It says:

The number of CPUs/Cores should less than or equal to 
8*sizeof(unsigned long). On 64 bits, the limit is 64.
?
I'm not sure what that implies in terms of my machine.
To what values?do I set my environment variables?
?
----- Original Message -----
From: Dirk Eddelbuettel <edd at debian.org>
To: Scott Raynaud <scott.raynaud at yahoo.com>
Cc: "r-sig-debian at r-project.org" <r-sig-debian at r-project.org>
Sent: Thursday, February 23, 2012 11:31 AM
Subject: Re: [R-sig-Debian] Accessto OpenBLAS
On 23 February 2012 at 09:08, Scott Raynaud wrote:
| So my experiments have confirmed that the binary version of
| OpenBLAS uses onlt two cores.? Should the compiled version
| use more?
| 
| I want figure out which package to utilize mulitiple cores in
| a UNIX environment.? Did some research on this a while back 
| but it's a bit fuzzy right now.? My main concern is there's a 
| warning about BLAS and multiple cores in the install docs.
| Will I run into problems?

Did you see the README?? 

? 4.Usages
? Link with libopenblas.a or -lopenblas for shared library.

? 4.1 Set the number of threads with environment variables. for example,
? export OPENBLAS_NUM_THREADS=4
? ? or
? export GOTO_NUM_THREADS=4
? ? or 
? export OMP_NUM_THREADS=4
? 
? The priorities are OPENBLAS_NUM_THREADS > GOTO_NUM_THREADS > OMP_NUM_THREADS.
? 
? If you compile this lib with USE_OPENMP=1, you should only set OMP_NUM_THREADS environment variable.

Some BLAS libraries can respond to environment variables at run-time: MKL,
GotoBlas and hence OpenBlas.? For others such as Atlas this is fixed at
compile time.

Dirk