This is the mail archive of the gsl-discuss@sources.redhat.com mailing list for the GSL project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Is GSL a single or multi-threaded math library?


Vendor libraries are generally much faster for the particular platform they 
are built for, however they are notoriously un-portable. If you write using 
ESSL instead of a commonly available (portable) library you will probably 
get fast code that will only run on your IBM. It depends on where you want 
your code to run and how many ifdef statements you want to support in your 
code for various vendor libraries. ( I do VSIPL (www.vsipl.org) which is an 
attempt to produce an API supported by multiple vendors but VSIPLs 
historical thrust is the embedded market)

I have noticed that vendors of SMP's are doing multi threaded libraries 
that work in their parallel environment utilizing multiple processors 
"under the covers" so the user code acts like it is a single thread, but 
the vendor library uses lots of processors and is very fast. I am not sure 
what the advantage/disadvantage to using single thread libraries and 
writing portable parallel code using MPI or some other parallel library is 
vs this method.

You can always just put GSL in your home directory and use it from their. 
Perhaps your sysadmin thinks it is more efficient to let everybody support 
their own library suite than to do it in a standard location where only the 
sysamin has to support it.

             Randy Judd

At 10:31 AM 08/06/2001 -0700, Charlie Zender wrote:
>Hi,
>
>The sysadmin on our IBM supercomputers (8-node and 128-node)
>does not want to install GSL there because:
>
> > As per my voicemail response: In general, SCD doesn't support
> > single-threaded math libraries on our IBMs.  That is why you
> > don't see familiar libraries like slatec or fftpack there.
> >
> > We do this for efficiency reasons.  We prefer that users use the
> > vendor library ESSL if possible.  However, sometimes that is not
> > possible.
>
>I'm not sure how to respond to this.
>I'm not a computer scientist, so I don't even know if GSL
>is single or multi-threaded, or if the question means anything.
>I know that the C/C++ codes that I write use OpenMP (when the
>compiler supports OpenMP) to enable multi-threaded computations.
>Is there a distinction between this and GSL itself being
>multi-threaded? In case it matters, the specific GSL routines I use
>are gsl_complex and about 6 routines in the gsl_sf_erf and
>gsl_sf_gamma families. Does anyone know whether GSL would be
>superior or inferior to the "vendor library ESSL" (I have
>no idea what ESSL means) for the IBM AIX platform?
>
>Any clues appreciated,
>Charlie
>--
>Charlie Zender zender@uci.edu (949) 824-2987/FAX-3256, Department of
>Earth System Science, University of California, Irvine CA 92697-3100
>Visiting NCAR CGD Jul 1-Aug 31: Room ML-304A (303) 497-1738/FAX-1324
>Work Address: NCAR CGD, 1850 Table Mesa Dr., Boulder, CO, 80303-5602


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]