找回密码
 注册
查看: 3701|回复: 5

对比MatLab与Fortran90的计算速度

[复制链接]
发表于 2003-9-3 11:07:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

x
小弟在自己的机子上对比了一下MatLab与Fortran90的计算速度,有以下发现:
1、Matlab在矩阵的运算上速度是Fortran90的2-3倍
2、Matlab再循环运算中速度是Fortran90的1/n,(贼慢)
分析:
Matlab的程序是逐行解释的,命令调用越多,效率越低。不过它基于矩阵的运算速度很快;
Fortran90的程序是编译后运行的,运行效率高
发表于 2003-9-3 18:03:41 | 显示全部楼层

对比MatLab与Fortran90的计算速度

这个很奇怪啊,FORTRAN90应该对矩阵计算有优化啊,怎么这么慢呢?
现在MATLAB在CFD中应用越来越广泛了,老板说其有2,3年没有用FORTRAN了,全是MATLAB,
不过用熟了Fortran,也懒得改MATLAB了
 楼主| 发表于 2003-9-4 12:21:54 | 显示全部楼层

对比MatLab与Fortran90的计算速度

    这是我实际计算的对比艾,不信你可以试一试。矩阵的运算Fortran使用IMSL的库函数。
    Matlab的循环运算的速度也是众所周知的。可以做一个简单的比较,比如循环做加法10000*10000次,Fortran只是几秒完成,Matlab则好长时间出不了结果。
    做CFD肯定有好多循环,我觉得Matlab不适合
发表于 2003-9-5 09:27:23 | 显示全部楼层

对比MatLab与Fortran90的计算速度

是的,fortran要比matlab快,但国外的博士生一般还是用fortran编程.
发表于 2003-9-5 12:51:59 | 显示全部楼层

对比MatLab与Fortran90的计算速度

做什么问题用什么工具了,MATLAB实用性很强,有自己独特的特点。
但是做CFD实际编程计算的,可能FORTRAN还是更实用一些,很难想象使用MATLAB求解具有几百万网格点的全机绕流。
发表于 2003-9-5 23:52:32 | 显示全部楼层

对比MatLab与Fortran90的计算速度

我觉得看领域吧,比如考虑 Phys.of Fluids 和 J. Fluid Mech 中的比较
偏理论性的工作(比如稳定性分析),MATLAB还是很适合的,比如算法研究等.
干实际的活还是用商业软件了.
100x100x100以上的湍流等复杂流动恐怕就要自己编程了,自己试了一下Fluent好像内存需要狂大,时间狂长,自己的FORTRAN程序短,内存小,而且速度快多了.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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