octave-maintainers
[Top][All Lists]
Advanced

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

Re: Wrapper for vectorized math libraries


From: Christopher Hulbert
Subject: Re: Wrapper for vectorized math libraries
Date: Fri, 30 Sep 2011 14:05:06 -0400

On Fri, Sep 30, 2011 at 10:11 AM, Dan Davis <address@hidden> wrote:
> For my own purposes, I am creating a wrapper library which can be used
> as a generic interface to some of the functionality of Intel's MKL or
> AMD's Libm (formerly acml_mv) libraries.  The specific functionality
> I'm targeting to start with are the routines for computing arrays of
> sin, cos, exp, log, log10, and log2 (those common to both libraries).
> My goal is to treat these vendor libraries as plugins, using them if
> they are available on the target machine, and providing default code
> (currently just simple loops over the array) if they are not
> available.

Have you looked at the vector, signal, and image processing library
(VSIPL) [1]? There is also VSIPL++ which is a specification (serial
and parallel specifications) [1]. This was created initially under
DARPA funding to define a portable high-performance API for a number
of computational functions. I have at times used ACML, MKL, vanilla
BLAS and LAPACK, FFTW, etc. as backends for that specification. You
will also find presentations from Miriam Leeser from Northwestern I
think who did work in using FPGA and GPU backends in VSIPL. GTRI also
has a GPU release of VSIPL. The reference implementation provides the
unoptomized versions you were looking at implementing when not
compiled with a backend. Unless you want to design your own, you may
find it nice starting from something established, and I do not some
commercial companies using VSIPL++ in production environments.

Chris

[1] http://www.vsipl.org/
[2] http://hpec-si.com/

>
> This could be useful to octave, although I'll admit I'm not sure of
> the legality of distributing such a library.  I would certainly not
> distribute AMD's or Intel's libraries, but I can see a great benefit
> to many routines if they are used when they are available.  The
> proprietary libraries are not required for building the wrapper, so I
> don't see think that it would be a problem, but IANAL.  Is it worth
> trying to add this in to octave?
>
> Daniel Davis
>


reply via email to

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