问题描述
我想通过向量乘法来执行矩阵,但是在整数类型的数组上执行矩阵以避免额外的转换(当双方都是 f32 类型时它工作正常);
对于整数类型,这种操作会抛出错误的类型异常,有什么解决方法吗?
解决方法
ArrayFire 在现有 BLAS 实现(例如 cuBLAS、clBLAS、CLBlast、FFTW3、Intel MKL 等)之上实现矩阵乘法,具体取决于后端。据我所知,BLAS API 不支持整数类型,因此不支持任何下游项目的整数类型。到目前为止,我们的项目页面上还没有任何对 matmul 整数支持的请求。欢迎您提出要求。
作为一种变通方法,您可以在传递给 array::as(f32)
函数之前在 arrayfire 数组上调用 matmul
方法。