找回密码
 注册
关于网站域名变更的通知
查看: 400|回复: 2
打印 上一主题 下一主题

求教一个用parfor还是spmd的并行问题

[复制链接]
  • TA的每日心情
    开心
    2022-1-29 15:07
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2022-10-31 14:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    各位好,刚接触MATLAB并行一天,现在有个问题,不知道应该怎么做并行优化。2 P2 _+ `  N7 q* k

    : c5 T* }' B4 [, Z/ f, ?) |4 Z' L. ?1.  有Num_C 个数据集,每个数据集都是行数相同但列数不同的矩阵。8 ?: H9 @6 n0 ~* Z- A) I' p( D! L+ O
    2,分别对每个数据集做处理,调用同一个函数。: b; Y3 z3 \3 l! d+ C& d  `6 ^
    . [( |2 G* {, ^' p
    问题:但是用paRFor的时间还不如直接用用for。(for耗时105s,parfor耗时118s)。感觉跟spmd模式比较像 但不太会用,不知道哪位大侠能发现问题,小女子先谢过。: H% p6 a+ _( w. N! e5 P. J
    代码如下:4 _4 P7 W  I9 }4 ?1 f! Z
    (YT 是个cell结构,已知。
    - R, q. \$ t; U# D. O& A   A 为矩阵,已知。functionimage为图像处理操作,并非简单的运算)
    % T; p: R% H0 f. D) Hmatlabpool open 4; }4 N" c1 v7 J. _; ~: m: n
    Num_C = 8;
    3 N  m& L! J7 d) y# qX_hat = cell(Num_C,1);$ l1 I# g8 r4 _7 {( \
    tic;. D- ?( d+ ~. }0 f
    for m=1:Num_C" ^/ {! E7 z0 T, t
       [X_hat{m}] = functionimage(A,YT{m},0.05,1e-2,200);
    0 N  q; ?* V5 Y  d- O# V2 @end
    4 b1 ?" J; R1 s%end
      L9 _0 q4 P' e- |0 s8 _0 rtoc;
    , S: R0 ]6 x1 ?
    " F$ w# C. G1 ]; E' xtic;$ q& q+ G7 P7 y4 y2 R: ~/ X
    parfor m=1:Num_C) W' s1 c0 R5 ?) O
    [X_hat{m}] = functionimage(A,YT{m},0.05,1e-2,200);' |5 Z) ]: Z* l- i# O6 _6 I
    end
    # `  S4 ~0 P7 f/ ~( Y( e2 Qtoc;
      _  [  z* o5 L6 O9 z7 p7 i" jmatlabpool close
    + h  H( M3 G) }5 Y9 j5 m$ P+ I8 ?8 J# F
    CPU是AMD的四核。
    & [6 w/ o" {' X
  • TA的每日心情
    开心
    2022-1-29 15:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2022-10-31 15:10 | 只看该作者
    Num_c在比较大的时候parfor的威力才能显现出来。 parfor是这样的,分别分几个m取不同值,在不同核里运行,当然核与核之间有信息交互的时间。 所以当循环次数较小时,信息交互的时间占了大头
    - h* m/ o6 k) m; ~
  • TA的每日心情
    开心
    2022-1-29 15:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
    发表于 2022-10-31 15:17 | 只看该作者
    看你不开并行105S开了118S,应该是开启worker花了较多时间,如果正常应用也只有100S左右的话真的不必非要用并行。
    ' J, `" h4 X- B9 c我自己试过,光开启多个work那个matlabpool open就花费大概40S的时间,你可以试试先开worker,然后使用parfor命令单独测试仅仅并行计算而不带有开关worker命令所用时间,应该是挺短的。
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-6-6 01:55 , Processed in 0.062500 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表