Exemplo n.º 1
0
 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)
Exemplo n.º 2
0
 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)
Exemplo n.º 3
0
    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)