• Re: 请问用openmp来并行mkl中的lapack

    查一下库手册确认一下吧

    【 在 zdxf (风陵渡雪) 的大作中提到: 】

    : 矩阵的对角化和svd分解在mkl里面应该是用的线程化的并行算法吧(我猜,不确定),我

    : 就把它当一黑箱子,编译时告诉要并行,这样不行吗?

    2010-08-24
  • Re: 请问用openmp来并行mkl中的lapack

    是不是规模不够大?

    【 在 zdxf (风陵渡雪) 的大作中提到: 】

    : 我编译时按照mkl manual上给出的并行化、线程化编译的指令,

    : ifort -O3 -L$MKLPATH $MKLPATH/libmkl_solver_lp64.a -Wl,--start-group -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -Wl,--end-group -openmp -lpthread

    : 在一台四核八线程的i7 860的机器上cpu也确实以400%的效率运行,但是用来做矩阵的对角化,svd分解等操作并没有节省时间;另外在一台双核的E6700上运行也确实200%的效率运行,效率同样没有提高。

    : ...................

    2010-08-24
  • Re: OpenMP问题请教

    谢了~

    【 在 thousand (嫂咱的) 的大作中提到: 】

    : 他当然不会提示你 只会给你错误的结果

    : 不同机器不一样 运行的任务也不一样 你自己分析吧 总之线程工作的时间 要远大于调度的时间

    : 谢谢你!我那个程序的确有问题(不过是能运行的,没提示冲突,汗)。

    : ...................

    2010-08-17
  • Re: OpenMP问题请教

    谢谢你!我那个程序的确有问题(不过是能运行的,没提示冲突,汗)。

    那如果是r(i,j)二维数组该是可以的吧

    这样的:

    do j=0,ny

    do i=0,nx

    r(i,j)=i*j

    enddo

    enddo

    这种loop的并行效果跟规模一般来说都是什么关系啊,最好能量化一点(比如说在规模到达什么程度,加速比能达到某值)。我自己在机器上试也不确定对不对。

    【 在 thousand (嫂咱的) 的大作中提到: 】

    : 首先 你这个程序错了 不同的线程有可能会对相同的r(i)进行写入操作

    : 你要先明白数据竞争的概念

    : 其次 小规模的并行计算确实没有单线程快 任务的分配归并 线程间的通讯都要花额外的时间

    : ...................

    2010-08-16
  • OpenMP问题请教

    因为接触OpenMP时间不长,没什么经验,遇到一些简单问题就特别困惑,请热心同学或老师不吝赐教,在此先谢过了~

    我的目标是对我的程序中能够使用OpenMP的loop进行并行,并且期望得到比较高效的并行效

    率。用下面的测试程序来测试并行效率:

    !$OMP PARALLEL DO private(i,j),shared(r)

    do j=0,ny

    do i=0,nx

    r(i)=i*j

    enddo

    enddo

    当nx*ny规模比较大时,并行效率很好;在nx*ny规模比较小时,并行效率降低甚至会增加运

    行时间。例如用8个线程的话,在nx*ny=25000*25000时并行效率很好(加速比6.6),

    nx*ny=25000*2500就很一般了(加速比3.3),在不同的计算服务器上结果会有不同。

    我的问题是;

    1、 OpenMP的并行效率跟运行环境到底有啥关系?比如同一个程序,在不同版本的Intel编

    译器、不同版本的Intel多核处理器下表现出来的不一样(甚至加速比在一台机器是小于1,

    在另外一台是大于1)如何解释?

    2、上面的例子在nx*ny=25000*2500=6250万的时候加速比就下降了,这是否是一个合理结果

    ?这里的r(i)是一维数组,cache命中率应该不会低吧,感觉这个规模已经挺大了的(单线

    程运行需要0.1s左右)。如果这个结果不合理,请帮忙指出有何需要改进的地方。

    如果这个结果合理,那么我自己真正要并行的程序中的规模大约是100*100*400(三维问题

    三重循环),循环体内的计算量稍大一些,(但cache命中率也会低一些吧),是不是没有

    可能得到好的加速比?

    2010-08-13
  • Re: dfftw_cleanup_threads干了什么?

    不会gdb

    先改大了,看看还有没有错误

    【 在 Azzuro (被五毛) 的大作中提到: 】

    : 如何看线程堆栈是否溢出了?用gdb?

    2010-08-09
  • Re: dfftw_cleanup_threads干了什么?

    不太了解这个子程序

    段错误会不会是线程堆栈溢出造成的?

    【 在 Azzuro (被五毛) 的大作中提到: 】

    : 最近用Fortran做图像处理,其中用fftw做快速傅立叶变换。

    : 伪代码如下:

    : program main

    : ...................

    2010-08-09
  • open_mp里“程式記憶體區段錯誤”

    大家好

    环境是:linux+intel compile 10.0+intel cluster MKL 9.0

    我是远程登录、编译以及提交程序。我的程序很长,其中有一段是调用MKL里的Poisson方程求解器求解Poisson方程。

    之前用单线程运行没有任何问题。

    现在想用OpenMP多线程,发现如果让整个程序多线程(编译时加-openmp选项,程序中相关循环OpenMP制导语句已经写好),但Poisson方程使用单线程(因为Poisson方程的线程是调用MKL函数时一个参数控制的),程序是能运行的。

    而只要我设置了调用MKL时也是用多线程,就会出现“程式記憶體區段錯誤”,具体.e文件如下:

    /var/torque/mom_priv/jobs/14737.mgmt.chess.SC: line 9: 11652 程式記憶體區段錯誤   env OMP_NUM_THREADS=$NPROCS /home01/mypath.../a.out

    其中mypath...是程序的路径。

    还有一点,在另外一个cluster上,并没有出现这个问题。

    请教一下,这个错误是什么原因造成的,有没有解决办法。走过路过的都谢了~

    2010-08-05
  • Re: 请问:从方程曲线得出方程的参数应该用什么方法和知识? (转

    最小二乘

    【 在 sevsun (sevsun) 的大作中提到: 】

    : 【 以下文字转载自 Mathematics 讨论区 】

    : 发信人: sevsun (sevsun), 信区: Mathematics

    : 标  题: 请问:从方程曲线得出方程的参数应该用什么方法和知识?

    : ...................

    2010-07-18
  • Re: 求助:如何看fortran 输出的 unformatted格式的文件内容

    不知道数据类型没法弄

    【 在 gallonetp (加仑猪) 的大作中提到: 】

    : 在不知道文件具体内容而无法写程序读入的情况下,如何转换为10进制的内容?

    2010-07-13
  • Re: Tecplot数据处理问题

    可以先录制,再播放。

    如果会写个loop(可以搜本版精华区,或网上搜索tecplot宏例子),那就更容易了。

    【 在 schoolbye (清夜风扬) 的大作中提到: 】

    : 请问怎么批量输出不同zone中某一点的数据?

    : 谢谢!

    2010-06-30
  • Re: 用tecplot绘制流速场的问题

    老问题了。精华区有讨论。

    可以切片显示截面里的速度矢量。

    【 在 exceedmyself (河塘青蛙) 的大作中提到: 】

    : 为什么我用tecplot绘制流速时,首先出现如下提示:  All active zones are volume

    : zones with Surfaces to Plot set to None and Points to Plot set to Surface Nodes

    : . The Vector layer will not be visible for these zones.Do you want to turn on

    : ...................

    2010-06-08
  • Re: 阶梯轴计算振动时怎么计算刚度?

    材料力学书上有没有?

    【 在 opener21 () 的大作中提到: 】

    : 阶梯轴计算振动时怎么计算刚度?

    : 阶梯轴,就是轴的直径不一样大,截面看上去像有多个台阶一样。

    : 在计算阶梯轴的扭振的时候,怎么计算加粗部分轴段的刚度?也就是怎么等效这种轴段,求出等效刚度直径?

    : ...................

    2010-06-03
  • Re: 中科院计算数学所暑期学校欢迎报名

    这个课程可以旁听吗

    【 在 mutougg (plot) 的大作中提到: 】

    http://lsec.cc.ac.cn/~issmms/

    :   中国科学院科学与工程计算国家重点实验室拟举办数学模型与计算国际暑期学校。

    : 本期暑期学校将在声音信号处理数学模型与流体结构模型和模拟两个专题邀请两位有很

    : ...................

    2010-05-27
  • Re: 请教一下算法:各项同性的取法

    按照你的理解你可以搜一下类似于“球面离散”的文献

    【 在 diffbar (开心) 的大作中提到: 】

    : 方向空间各项同性应该如何取呢

    : 我的理解是球面上分布均匀的若干个点到球心的矢量

    : 比如正20面体可以提供12个顶点,但是太少了,我可能会取1000个左右

    : ...................

    2010-04-19
  • 请教曲线光滑方法

    请教大家,如何对已知(离散点形式的)曲线进行光滑处理?

    最好是利于编程实现的

    更重要的是能有守恒特性,比如保持面积守恒。

    谢谢了~

    2010-04-01
  • Re: 请推荐1w配置(模板发文) (转载)

    帮顶!

    【 在 peaksun (学做一个工程师) 的大作中提到: 】

    : 【 以下文字转载自 CompMarket 讨论区 】

    : 发信人: peaksun (学做一个工程师), 信区: CompMarket

    : 标  题: 请推荐1w配置(模板发文)

    : ...................

    2010-02-04
  • Re: tecplot怎么求某截面总的阻力值

    这个tecplot能干么

    一般都自己积分吧

    【 在 kingof (kingof) 的大作中提到: 】

    : 譬如一个圆柱立放在水里,怎么求水流对于圆柱体纵截面总的阻力值?

    2009-12-29
  • Re: 菜鸟请问一个tecplot的问题

    没处理过多块的……

    能写文件的时候写成一块么,并且保持结构网格

    【 在 hyperLee (冬瓜de征途~~风雨无阻) 的大作中提到: 】

    : 为tecplot写了一个多块的数据,tecplot可以正常显示,但是画流线的时候,流线总是在块边界上断掉,有什么办法可以解决的吗?

    : 我现在的做法是把这个多块数据,转换成一整个非结构网格,然后输出。不过这样以来,网格数一大的时候,tecplot就慢了。

    : 有什么后处理软件可以写入多个数据块,而在块边界上处理比较好的?

    : ...................

    2009-12-18
  • Re: 菜鸟问一个问题

    2月的单独统计?

    【 在 supercar (空军一号) 的大作中提到: 】

    : 现有移动公司从1-12月份的通话数。从总体上是逐月递增的

    : 但是每年过年的那2个月的数值就特别大。

    : 所以不能用二次曲线拟合。

    : ...................

    2009-12-14