什么是matlab多线程编程
2个回答
展开全部
一直到 MATLAB 7.4 (R2007a)之前,MATLAB都是不支持多线程、多处理器的。并且到现在为止,MATLAB本身还是一个单线程的应用程序。随着多处理器的普及,从MATLAB 7.4 (R2007a)以后,MathWorks公司发布了Parallel Computing Toolbox ,用来发挥多处理器的功能(注意:多处理器与多线程有着明显的区别,单处理器上也可以实现多线程,比如说JAVA, C++等语言)。
可能的原因(有些是我个人的观点、非MathWorks公司的文献):使用MATLAB的用户,一般用作处理大量的数据、画图、模拟等。我们知道,对于这些应用,数据之间的依赖性(dependency)特别高,学过computer science的用户可能知道,当数据之间的依赖性特别高时,多线程的优点几乎体现不出来,因为一个线程的执行,必须等另外一个线程结束才可以。
随着Parallel Computing Toolbox工具箱的发布,很多大学开始建立Parallel Computing Toolbox实验室(比如说新加坡南洋理工大学,该实验室里使用100多台电脑来做Parallel Computing Toolbox,帮助研究人员处理海量数据),MATLAB通过Parallel Computing Toolbox,可以把任务分配给多个worker(可以理解为一个处理器,但不等同)。根据我个人的使用经验,使用Parallel Computing Toolbox处理海量数据,有着非常明显的优势。
可能的原因(有些是我个人的观点、非MathWorks公司的文献):使用MATLAB的用户,一般用作处理大量的数据、画图、模拟等。我们知道,对于这些应用,数据之间的依赖性(dependency)特别高,学过computer science的用户可能知道,当数据之间的依赖性特别高时,多线程的优点几乎体现不出来,因为一个线程的执行,必须等另外一个线程结束才可以。
随着Parallel Computing Toolbox工具箱的发布,很多大学开始建立Parallel Computing Toolbox实验室(比如说新加坡南洋理工大学,该实验室里使用100多台电脑来做Parallel Computing Toolbox,帮助研究人员处理海量数据),MATLAB通过Parallel Computing Toolbox,可以把任务分配给多个worker(可以理解为一个处理器,但不等同)。根据我个人的使用经验,使用Parallel Computing Toolbox处理海量数据,有着非常明显的优势。
展开全部
这本书是本典型的“函数手册”,什么意思呢,对于我来说,这本书有点用的地方,也就是可以比较方便的查一下c和matlab编程里数据互通时候的一些函数接口。(但是注意,它背后根本没索引,所以你要查函数必须按着字母顺序查!!!搞笑么!!) 其实我真正想了解的,是底层matlab一些运行时的细节,特别编译和链接一些外部复杂的库,比如和并发和多线程相关的库时,编译和链接应该注意的要点,以及在与这些库协作时,matlab脚本编写的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询