相关疑难解决方法(0)

使用 Common Lisp 中的 BLAS 进行矩阵乘法

假设我有两个矩阵(以 Common Lisp 数组的形式) foo 和 bar ,这样:

(defvar foo #2A((2 1 6) (7 3 4)))
(defvar bar #2A((3 1) (6 5) (2 3)))
Run Code Online (Sandbox Code Playgroud)

我想使用 BLAS 执行矩阵乘法,而不使用 Matlisp、GSLL、LLA 等包装器。这样我就得到一个包含结果的数组:

#2A((24 25) (47 34))
Run Code Online (Sandbox Code Playgroud)

我应该采取哪些步骤来执行此类操作?

我的理解是,我应该从 REPL 调用 BLAS 矩阵乘法函数,并将我的参数 foo 和 bar 传递给它。

在 R 中,我可以轻松地这样做:

foo %*% bar
Run Code Online (Sandbox Code Playgroud)

我怎样才能在 Common Lisp 中做到这一点?

免责声明:1)我使用 SBCL 2)我不是经验丰富的计算机科学家

sbcl common-lisp blas matrix-multiplication

2
推荐指数
1
解决办法
1383
查看次数

标签 统计

blas ×1

common-lisp ×1

matrix-multiplication ×1

sbcl ×1