什么是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处理海量数据,有着非常明显的优势。

热心网友

这本书是本典型的“函数手册”,什么意思呢,对于我来说,这本书有点用的地方,也就是可以比较方便的查一下c和matlab编程里数据互通时候的一些函数接口。(但是注意,它背后根本没索引,所以你要查函数必须按着字母顺序查!!!搞笑么!!) 其实我真正想了解的,是底层matlab一些运行时的细节,特别编译和链接一些外部复杂的库,比如和并发和多线程相关的库时,编译和链接应该注意的要点,以及在与这些库协作时,matlab脚本编写的

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com