24小时热门版块排行榜    

查看: 455  |  回复: 0

lisajelly

新虫 (初入文坛)

[求助] 【求助】在MATLAB中通过MEX调用BLAS

本人正在学习在MATLAB中调用BLAS,好不容易把MATLAB中的一个dgemm的例子编译通了,但是在MATLAB中使用这个函数时,不论输入是什么,输出都是0,很郁闷。请各位大牛多多指点!
以下是我的MEX文件,文件名是“test_MKL.for”, 用FORTRAN写的:
    subroutine mexFunction(nlhs, plhs, nrhs, prhs)
      integer*8 plhs(*), prhs(*)
      integer nlhs, nrhs
      integer*8 mxcreatedoublematrix, mxgetpr
      integer mxgetm, mxgetn
      integer m, n, p
      integer*8 A, B, C
      real*8 one, zero, ar, br
      character ch1, ch2

      ch1 = 'N'
      ch2 = 'N'
      one = 1.0
      zero = 0.0

      A = mxgetpr(prhs(1))
      B = mxgetpr(prhs(2))
      m = mxgetm(prhs(1))
      p = mxgetn(prhs(1))
      n = mxgetn(prhs(2))

      plhs(1) = mxcreatedoublematrix(m, n, 0.0)
      C = mxgetpr(plhs(1))
      call mxcopyptrtoreal8(A, ar, 1)
      call mxcopyptrtoreal8(B, br, 1)

      call dgemm (ch1, ch2, m, n, p, one, %val(A), m,
     +            %val(B), p, zero, %val(C), m)

      return
      end
我在mexopts.bat中添加了MKL相应的库函数路径之后,对上面的例子进行了编译,最终生成了“test_MKL.mexw64”的MEX文件(我用的是win7 64)。但是当我用下面的例子对上述函数进行测试时,就出问题了。没有报错,但不管输入是什么,输出一直是0。
以下是我在MATLAB中进行测试时的代码:
M=2;
N=3;
K=4;
a=1.0;
b=0.0;
X=ones(N,K)*10.0;
Y=ones(K,M)*20.0;
Z=zeros(N,M);
test_MKL('N','N',N,M,K,a,X,N,Y,K,b,Z,N)

输出结果是:
ans =

     0
谁能告诉我是为什么啊?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

找到一些相关的精华帖子,希望有用哦~

科研从小木虫开始,人人为我,我为人人
相关版块跳转 我要订阅楼主 lisajelly 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 基金中了 +12 laoda193707 2026-08-06 12/600 2026-08-07 19:16 by zhendaodan
[基金申请] 关于代码变化问题,想知道的进来 +6 且听虎啸 2026-08-07 9/450 2026-08-07 18:40 by naalan7001
[基金申请] 关于filecode +3 布布和一二 2026-08-07 6/300 2026-08-07 17:51 by 医学老男孩
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] 听说今天filecode变了 +24 布布和一二 2026-08-06 47/2350 2026-08-07 16:02 by zhiyanjiang
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[论文投稿] 十年后又回来了,论文投稿求助 +4 哈哈114477 2026-08-01 4/200 2026-08-07 14:39 by jgy194592
[基金申请] 关于豆爷回答的JTJC与%2F数量 +4 yang182083 2026-08-06 6/300 2026-08-07 12:43 by 虫友是什么虫
[基金申请] 面上再次挂了,太难了,躺也躺不了,倦也卷不过,小学校之殇! +23 低垂的野花 2026-07-31 31/1550 2026-08-07 12:22 by speculiar
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 求各位大神看下 100+6 hpkpkpkp 2026-08-05 33/1650 2026-08-06 14:49 by zhiyanjiang
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +9 archvillain 2026-08-04 11/550 2026-08-05 20:06 by wlwhappy
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
[考博] 【2027博士申请】纳米药物递送方向 20+3 13586093586 2026-08-03 4/200 2026-08-05 09:59 by lfy8008
[基金申请] 有没有H口的?有收到消息的吗? +3 超级海虾 2026-08-04 3/150 2026-08-04 17:26 by 学教育滴
[基金申请] 纯娱乐,不喜欢勿喷 +7 Tide man 2026-08-04 10/500 2026-08-04 15:10 by loufangrui
[基金申请] 面上提前没消息,有中的吗 +14 archvillain 2026-08-02 18/900 2026-08-04 14:42 by archvillain
[基金申请] 娱乐 +4 Tide man 2026-08-03 4/200 2026-08-04 11:51 by wgch518
[基金申请] 什么时候能放榜呀? +3 Jacob678 2026-08-03 3/150 2026-08-03 16:14 by gltch
信息提示
请填处理意见