您好、欢迎来到现金彩票网!
当前位置:迪士尼彩乐园 > 概率并行算法 >

matlab分布式计算支持多少台电脑

发布时间:2019-07-06 22:39 来源:未知 编辑:admin

  主要经营计算机网络服务,设计、制作、代理、发布国内各类广告,健康信息咨询。

  方法 1、相信很多朋友在利用matlab进行计算时,会遇到循环次数过大,或者是单次计算量过大的问题,比如需要计算的数值阵列数据量过大,利用传统的编程方式,跑一次程序几个小时,都要等的急死了是不是呢?如果遇到这种情况,则可以尝试一下MATLAB并行计算,传统的计算方式都是串行计算。并行计算之所以可行,取决于两方面因素:a)现在大家的计算机是多核的,至少也是双核了吧,有的可能8核都有,这是很重要的硬件基础。b)MATLAB本身提供了很好的并行计算函数,加上你的聪明智慧,设计合理的软件,这样就有了软件基础了。 2、并行计算的优势是什么? 以自己的经验来看,MATLAB并行计算真是很厉害的,通过对原始程序很简单的改动,就能节省很多时间。我给出一个很简单的例子,说明并行计算的优势所在。例如一个遗传算法的MATLAB程序,通常的计算运行方式需要2个小时得到结果,那如果用一台双核的机器并行计算呢?理论上1个小时就可以跑完。那如果是用一台8核的计算机,就只是一刻钟(15分钟)了。而且并行计算可以配合分布式计算服务,同时调动若干台计算机同时工作,把刚才的程序计算时间缩短到分分钟绝对不是难事啊。 3、如何启动MATLAB并行计算? 以单台双核计算机为例。首先打开MATLAB命令窗口,输入matlabpool open就OK了。如图所示: 这样,就相当于将一台计算机的两个核心,当做两台机器用啦。接下来是编程序实现的方法。 4、MATLAB并行计算的模式有几种? 主要是两种:parfor模式和spmd模式。两种模式的应用都很简单。第一个中,parfor其实就是parallel+for简化而来,顾名思义啊,就是把原来程序中的for循环中的关键字forg改为parfor就OK啦。不过这是很初步的介绍,限于篇幅不能详细了,详细的可以用输入命令help parfor查看,如图: 5、同样地,可以适用于spmd模式。 6、程序举例:例如很简单的一个程序: tic %传统方式计算 c1=1; for i = 1:500 c1 = c1+max(eig(rand(i,i))); end t1 = toc; matlabpool open; %parfor并行方式计算 tic c2=1; parfor ii = 1:500 c2 = c2+max(eig(rand(ii,ii))); end t2 = toc; matlabpool close; display(strcat(parfor并行计算时间:,num2str(t2),秒)); display(strcat(客户端串行计算时间:,num2str(t1),秒)); 分别用传统方式算和parfor算,时间区别如下图所示: 这只是用双核计算的效果,如果是4核心8核心,效果要好的多啦,需要用MATLAB的童鞋不妨试试看咯。 7、关闭并行计算模式。 不想用了?送一个命令进去就关了,估计你已经猜到那即是:matlabpool close.如图所示: 早日学会哦!

http://attack11.net/gailvbingxingsuanfa/745.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有