Closed littletomatodonkey closed 6 years ago
您好,我在使用mpiexec -np 4 ex01.py的时候(windows上是mpiexec),发现速度比单个进程运行的速度慢了很多,我以为是进程数据广播和回收的耗时较长,就在fitness函数里面又手动添加了大量无效计算,增加单个个体的计算时间,但是还是出现并行计算时间明显大于单进程计算的时间,我想问一下这可能是什么原因哦?我的openmpi多进程编程测试没有出现问题,安装应该是没有问题的。我修改ex01.py中的fitness代码如下(只是添加了耗时计算):
mpiexec -np 4 ex01.py
# Define fitness function. @engine.fitness_register def fitness(indv): x, = indv.solution for ii in range(10000): x + 10*sin(5*x) + 7*cos(4*x) return x + 10*sin(5*x) + 7*cos(4*x)
希望得到您的回复,谢谢!
你的种群大小是多少?你可以增加一下大小来测试一下并行效果
size我设置的是100,感觉应该挺大了,可是还是没有单个进程的运行速度快2333。。
您好,我在使用
mpiexec -np 4 ex01.py
的时候(windows上是mpiexec),发现速度比单个进程运行的速度慢了很多,我以为是进程数据广播和回收的耗时较长,就在fitness函数里面又手动添加了大量无效计算,增加单个个体的计算时间,但是还是出现并行计算时间明显大于单进程计算的时间,我想问一下这可能是什么原因哦?我的openmpi多进程编程测试没有出现问题,安装应该是没有问题的。我修改ex01.py中的fitness代码如下(只是添加了耗时计算):希望得到您的回复,谢谢!