matlab并行计算中worker与cpu core的关系

来源:互联网 发布:上海市行知小学照片 编辑:程序博客网 时间:2024/05/19 02:43

    在进行并行计算时matlab中对worker的数量有这样一个限制,“在同一台机器上最多运行有4个worker”,做出这样一个限制是因为目前还没有超过4个core的cpu。那么我们是否可以在一台单核机器上运行4个worker呢?完全可以。因为matlab本身提供了一种“虚拟机“,这样即使你的机器是单核的也同样可以运行最多达4个worker(matlab中在并行计算时将worker称为lab),最明显的例子就是pmode,当你打开pmode时,就弹出有4个lab,每个lab对应一台虚拟的电脑。但是在你进行并行计算时,在一台机器上运行4个worker是没有必要的,因为还是一个核在工作,这样并不会提高你的运算速度,相反还有可能使运算速度变慢。只有你的电脑有与worker数量相同的core时,才能提高你的运算速度。

    那么是不是只能最多运行4个worker呢?不是的。你可以组成一个机群,也就是说使几台机器连起来一起工作。为了使几台机器上的资源像是在一台机器上一样,matlab提供了MATLAB  Distributed Computing Server,通过它你就可以很方便地将几台机器连起来一同工作了。

原创粉丝点击