Proteus 发表于 2023-4-5 19:54:28

求助!求问用oneMKL的BLAS库求矩阵乘法

本帖最后由 Proteus 于 2023-4-5 20:00 编辑

program main
    implicit none
    integer :: n, m, k, lda, ldb, ldc, info
    real(kind=8), dimension(:,:), allocatable :: A, B, C
    real(kind=8) :: alpha, beta
    external dgemm
    ! 设置矩阵的大小
    m = 3
    n = 3
    k = 3
    ! 设置矩阵 A、B、C 的值
    allocate(A(m,k))
    allocate(B(k,n))
    allocate(C(m,n))
    A = reshape(, )
    B = reshape(, )
    C = 0.0
    ! 设置矩阵乘法的参数
    alpha = 1.0
    beta = 0.0
    lda = m
    ldb = k
    ldc = m
    ! 调用 BLAS 库的 DGEMM 子程序进行矩阵乘法
    call dgemm('N', 'N', m, n, k, alpha, A, lda, B, ldb, beta, C, ldc)
    ! 输出结果
    write(*, *) 'Result:'
    write(*, *) C
end program main
问题:提示“Intel MKL ERROR: Parameter 3 was incorrect on entry to DGEMM”,计算出C的结果全是0.0

编译器:Win10 + Visual Studio 2019 + oneAPI
已在项目属性中配置好oneMKL库了,之前运行过调用oneMKL库中的pardiso函数,是可以运行的,且计算结果是没问题的

不知道这个为什么出来的结果不对
求问大佬,求大佬相助!!!

Proteus 发表于 2023-4-5 20:17:02

是我配置函数库的时候出了问题,已解决。呜呜呜呜呜。
页: [1]
查看完整版本: 求助!求问用oneMKL的BLAS库求矩阵乘法