我想知道是否有可能在parfor级别指定最大的工人#?
我知道如何在matlab并行池中更改#的工作人员,但我想快速和动态地更改分配给parfor循环的工作人员。
Rational:我有一些长时间运行的parfor循环,有时会有一些奇数的作业(比如5 ),在最后一个任务开始之前,会留下一个等待其他4个作业完成,这比只并行运行所有5个任务要慢得多。我想要的是一些代码,可以确定是否有5个作业,并行运行所有5个作业,但是如果有6个,也许运行2组3个作业是一个更好的设置,因此我们在这种情况下使用3个工作的限制,而对于前者则使用6个。
关闭并重新启动并行池以实现这一点是相当缓慢和烦人的。如果有一种方法只需要10名员工启动,并动态地决定在运行时使用多少名员工最有效,那么这将解决问题。
https://stackoverflow.com/questions/36249230
复制相似问题