[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ESPResSo] ghost_communicator
From: |
Axel Arnold |
Subject: |
Re: [ESPResSo] ghost_communicator |
Date: |
Sun, 26 Sep 2010 21:52:49 +0200 |
User-agent: |
KMail/1.13.2 (Linux/2.6.32-24-generic; KDE/4.4.2; x86_64; ; ) |
On Wednesday 15 September 2010, address@hidden wrote:
> Hi,
>
> I am dealing with a system of N molecules of the type:
>
>
> p ------- v -------- p
>
>
> where p are real particles and v a virtual site.
> The code runs fine with one processor but it takes lot of time. I have
> run the same script but with 2 processors and I got the error
> cited below. I have taken a look into the code and it seems
> that in the subroutine "void integrate_vv(int n_steps)"
> ESPRESSO stops when the function
> ghost_communicator(&cell_structure.update_ghost_pos_comm);
> is called.
>
> Maybe you can help me with the following questions:
>
> 1) What is the task of "ghost_communicator" subroutine and how to
> check if it is doing the task correctly?
ghost_communicator is performing the ghost communication, that is, sending the
data of particles that are mirrored between different processors. The
update_ghost_pos_comm is the operation which sends the positions from the
processor with the real particles to the one with the ghosts. If you get a
segfault in this routine, it basically can mean only two things: either,
another routine is messing up the communication patterns in
cell_structure.update_ghost_pos_comm, or some inconsistent MPI communication
appeared before.
> 2) What is the name of the array which contains the positions
> and the velocities of all the particles in the system?
There is none. Look at e. g. init_forces() in forces.c, there are two loops
over all ghost particles and real particles. The particles are stored in a
struct Particle, which is defined in particle_data.h
> -----------------------------------------------------------------------
> [tamarau:27505] *** Process received signal ***
> [tamarau:27505] Signal: Segmentation fault (11)
> [tamarau:27505] Signal code: Address not mapped (1)
> [tamarau:27505] Failing at address: 0x5110
> [tamarau:27505] [ 0] /lib64/libpthread.so.0 [0x2b683783ba90]
Recompile Espresso with configure --enable-debug, then you should get a more
precise picture where the error occurs. The pthread address is not informative
at all, and ghost_communicator is a fairly complex routine, so a bit more
information won't harm.
Axel
--
JP Dr. Axel Arnold Tel: +49 711 685 67609
ICP, Universität Stuttgart Email: address@hidden
Pfaffenwaldring 27
70569 Stuttgart, Germany