Exemple #1
0
def _get_spikes_from_file_mpi(file_names):
    with Barrier():
        if comm.rank() == 0:
            data = _get_spikes_from_file(file_names)
        else:
            data = None

    with Barrier():
        data = comm.bcast(data, root=0)
    return data
Exemple #2
0
def _text_load_mpi(f):
    with Barrier():
        if comm.rank() == 0:
            data = _text_load(f)
        else:
            data = None

    with Barrier():
        data = comm.bcast(data, root=0)

    return data
Exemple #3
0
 def save_fig(self, *args):
     if comm.is_mpi_used():
         with Barrier():
             if comm.rank() == 0:
                 self._save_fig(*args)
     else:
         self._save_fig(*args)
Exemple #4
0
def collect_spikes_mpi(*args):
    args = list(args)

    for i in range(len(args)):
        with Barrier():
            if comm.rank() == 0:
                for i_proc in xrange(1, comm.size()):
                    args[i] = numpy.r_[args[i], comm.recv(source=i_proc)]

            else:
                comm.send(args[i], dest=0)
        args[i] = comm.bcast(args[i], root=0)

    return args
Exemple #5
0
def _Connect_DC_mpi(*args, **kwargs):
    with Barrier():
        _Connect_DC(*args, **kwargs)
Exemple #6
0
def _Simulate_mpi(*args, **kwargs):
    with Barrier():
        print 'Simulating rank %i' % (
            Rank())  #seems like it it neccesary to avoid hangup for mpi??!!
        _Simulate(*args, **kwargs)
Exemple #7
0
def _Create_mpi(*args, **kwargs):
    with Barrier():
        return nest.Create(*args, **kwargs)
Exemple #8
0
def _delete_data_mpi(path, **kwargs):
    with Barrier():
        if comm.rank() == 0:
            _delete_data(path, **kwargs)
Exemple #9
0
def _Connect_speed_mpi(*args, **kwargs):
    with Barrier():
        print 'Connecting rank %i' % (
            Rank())  #To avoid hangup similar as in Simulation
        _Connect_speed(*args, **kwargs)
Exemple #10
0
 def _save_mpi(self):
     with Barrier():
         if comm.rank() == 0:
             self._save()
Exemple #11
0
def _text_save_mpi(*args):
    with Barrier():
        if comm.rank() == 0:
            _text_save(*args)
Exemple #12
0
def _pickle_save_mpi(*args):
    with Barrier():
        if comm.rank() == 0:
            # OBS!!! watch out for having barriers inside here.
            # Will stall program
            _pickle_save(*args)
Exemple #13
0
def _mkdir_mpi(*args):
    with Barrier():
        if comm.rank() == 0:
            _mkdir(*args)
Exemple #14
0
 def _garbage_collect_mpi(self):
     with Barrier():
         if comm.rank() == 0:
             self._garbage_collect()