|
From: Lynn Q. <qu...@ai...> - 2005-02-25 05:37:32
|
I would like to test the performance of the Intel Math Kernel Library
with MATLISP and CMUCL, but I have not been successful modifying
load-blas-&-lapack-libraries in lazy-loader.lisp
The Intel Math Kernel Library contains the lapack and blas functions.
The appropriate library is installed in
/opt/intel/mkl72/lib/32/libmkl.so.
Various attempts to modify load-blas-&-lapack-libraries result
in various errors. For example:
(defun load-blas-&-lapack-libraries ()
(ext::load-foreign "matlisp:lib;lazy-loader.o"
:libraries `("-R/opt/intel/mkl72/lib/32"
"-L/opt/intel/mkl72/lib/32"
"-L/usr/lib/gcc-lib/i386-redhat-linux/3.2.2"
"-L/usr/lib"
"-lmkl"
"-lfrtbegin"
"-lg2c"
"-lm"
"-lgcc_s")))
;; results in:
Error in function SYSTEM::LOAD-OBJECT-FILE:
Can't open object "/tmp/15879AG21": NIL
[Condition of type SIMPLE-ERROR]
The file /tmp/15879AG21 exists, but dlopen in CMUCL
load-object-file fails for some reason.
I can sucessfully do:
(ext::load-foreign "/m/opt/intel/mkl72/lib/32/libmkl.so")
And sucessfully do
(def-fortran-routine dgemm :void
(transa :string :input)
(transb :string :input)
(m :integer )
(n :integer )
(k :integer )
(alpha :double-float )
(a (* :double-float) )
(lda :integer )
(b (* :double-float) )
(ldb :integer )
(beta :double-float )
(c (* :double-float) :output)
(ldc :integer )
)
But CMUCL crashes when I call dgemm.
Any help would be appreciated.
|