def do_concurrent_run(self, output): processes = concurrent.MPIConcurrentProcesses() processes.init() try: self.particles = None processes.on_root(self.create_particles) shared_particles = processes.share(self.particles) shared_particles.distribute() assert len(shared_particles) == 100 , '{0} != 100'.format(len(shared_particles)) output.value = str('success') result = 0 except Exception as ex: output.value = str(ex) result = -1 return self.reduce_result(processes, result)
def do_concurrent_run(self, output): processes = concurrent.MPIConcurrentProcesses() processes.init() test = TestMPIConcurrentProcesses('test1') try: self.particles = None processes.on_root(self.create_particles) shared_particles = processes.share(self.particles) shared_particles.distribute() test.assertEquals(len(shared_particles), 100) test.assertAlmostRelativeEquals(shared_particles.mass.sum() , 1.0 | nbody_system.mass) output.value = str('success') result = 0 except Exception as ex: print ex output.value = str(ex) result = -1 return self.reduce_result(processes, result)
def do_concurrent_run(self, output): processes = concurrent.MPIConcurrentProcesses() processes.init() test = TestMPIConcurrentProcesses('test1') self.particles = None self.potential_energy = 0 try: processes.on_root(self.create_particles) processes.on_root(self.root_potential_energy) self.shared_particles = processes.share(self.particles) self.shared_particles.distribute() processes.call( self.distributed_potential_energy_on_root, self.distributed_potential_energy_not_on_root, ) output.value = str('success') result = 0 except Exception as ex: print ex output.value = str(ex) result = -1 return self.reduce_result(processes, result)