octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Patching Octave-MPI


From: Paul Kienzle
Subject: Re: Patching Octave-MPI
Date: Thu, 21 Nov 2002 11:57:17 -0500
User-agent: Mutt/1.2.5.1i

On Thu, Nov 21, 2002 at 10:08:53AM -0600, John W. Eaton wrote:
> On 21-Nov-2002, Paul Kienzle <address@hidden> wrote:
> 
> | If you want fast parallel matrix operations, wouldn't you be better off
> | having an interface to scalapack or something similar?
> 
> Speaking of that, do you think it would be a good time to make it
> possible for Octave to easily link to whatever version of the
> blas/lapack the user wants at run time?  So instead of
> 
>   F77_XFCN (dgemm, DGEMM) (...);
> 
> in the code and
> 
>   g++ ... -llapack -lblas ...
> 
> or whatever, we would use
> 
>   octave_blas::dgemm_ptr (...);
> 
> or similar, and not link directly to lapack or blas, but load them and
> initialize the set of pointers at startup time.  Then you could tell
> Octave which lapack/blas combination you want using an environment
> variable or command-line option.  This all assumes the right set
> of configure options, otherwise we could still link to the normal
> libraries and not offer the run-time option.
> 
> Does that allow us to support scalapack, or does scalapack not have
> the same interface as lapack (after doing a quick check, it looks like
> it does not).
> 
> Even if this does not allow simple quick support for scalapack, would
> it be a useful addition?

I don't know anything about the details of distributed matrix libraries.
In particular, I don't know how they decide if and when to distribute
data.  

As a high level language, I would like octave to do the right thing.

If that means calling the local blas for small matrices and the parallel
blas for large matrices, then Octave would have to be linked against
both simultaneously.  If on the other hand the parallel blas are half
way intelligent and don't distribute small computations across the net,
there is no reason to link to the local blas.  If the user is really
concerned, then link two different executables: poctave against the
parallel blas and octave against the serial blas.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]