[erlang-questions] Vector instructions, BLAS, FFI
Alceste Scalas
alceste@REDACTED
Wed Apr 9 10:18:29 CEST 2008
Il giorno mar, 08/04/2008 alle 22.16 +1000, jm ha scritto:
> Not being very familar with blas: Is the license compatible with
> Erlang?
BLAS is just a standardized API, with several implementations. Some
examples:
* NetLib reference implementation: http://www.netlib.org/blas/
* ATLAS: http://math-atlas.sourceforge.net/
* AMD Core Math Library: http://developer.amd.com/acml.jsp
* Intel Math Kernel Library:
http://www.intel.com/cd/software/products/asmo-na/eng/266858.htm
* nVIDIA CUDA: http://developer.nvidia.com/object/cuda.html
Each implementation comes with its own license (Netlib and ATLAS are
released under BSD-like, GPL-compatible licenses). They are usually
binary compatible, so you can switch between them without recompiling
(as long as you use dynamic linking and don't depend on some
non-standard API extensions).
> Assuming yes, are you in a position to make any of the code
> public?
I hope I'll be able to release the code, but it depends on the FFI
patches --- so it may not be very useful, unless the FFI EEP is approved
in some form.
> How well does it perform?
We tried several ways to integrate BLAS and Erlang. The current
FFI-based implementation is slightly slower than dedicated BIFs, but
definitely faster than a linked-in driver (and definitely easier to
develop, since all the linked-in driver boilerplate code went away).
I can't provide the benchmarks data right now, but we plan to submit a
paper for the next Erlang Workshop.
> Lastly, what are the "distributed numerical applications" that Erlang is
> being investigated for?
Simulation of mechanical and thermodynamical systems.
Regards,
alceste
--
Alceste Scalas <alceste@REDACTED>
CRS4 - http://www.crs4.it/
More information about the erlang-questions
mailing list