Two walls in films

GROMACS version:
GROMACS modification: Yes/No
Here post your question

I am running atomistic thin films with 2 walls in z direction.
Below is the gro.mdp.
The job crashes giving below error:
Fatal error:

1 particles communicated to PME rank 15 are more than 2/3 times the cut-off

out of the domain decomposition cell of their charge group in dimension y.

This usually means that your system is not well equilibrated.

Also the run is really slow and getting only 1 ns perday in GROMACS (total atoms-around 500000).

please advice me how to overcome this issue and increase efficiency.

; Write to the log and energy file every 5000 steps
nstlog = 500000
nstenergy = 500000

; Calculate energies every 100 steps
nstcalcenergy = 100

; Write positions to three decimal places to xtc file every 5000 steps
nstxout-compressed = 500000
compressed-x-precision = 1000

; Use the Verlet cutoff scheme with grid neighbor searching; you should basically always use this when you can (the only time you wouldn’t would be if you were using tabulated potentials, buckingham interactions, or energy group exclusions; see manual for more detail)
cutoff-scheme = Verlet
ns_type = grid

; Periodic in all three dimensions
pbc = xy
nwall = 2 ; wall at z=0 and z=z-box
wall-type = 10-4 ; direct 12-6 LJ as fn of distance from wall
wall-density = 50 50
wall-atomtype = lmp_004 lmp_004
wall-r-linpot = 3
ewald-geometry = 3dc ; Only Ewald sum compatible with slab geometry, requires box_height >= slab_height * 3
wall-ewald-zfac = 3 ; Extra empty space for slab geometry calculation (reducing coulomb interaction)

; Minimum cutoffs in nm for neighbor list, electrostatics, and LJ interactions. mdrun will tune rcoulomb for improved performance.
rlist = 1.2
rcoulomb = 1.2
rvdw = 1.2

; Use the PME algorithm (an alternative to PPPM) (this is very likely the electrostatics algorithm you want to use)
coulombtype = PME

; Smoothly shift vdw interactions to zero at the cutoff
vdw-type = Cut-off
vdw-modifier = Potential-shift-Verlet

; GENERATE VELOCITIES FOR STARTUP RUN =
gen-vel = yes
gen-temp = 500
gen-seed = 173529

; Use the v-rescale thermostat with a time constant of 0.1 ps and temperature of 600. V-rescale correctly samples the canonical distribution. Nose-hoover would be another good choice.
tcoupl = V-rescale
tc-grps = System
tau_t = 0.1
ref_t = 500

; Don’t use pressure coupling. For NPT this should be set. For equilibration, Berendsen is best since it is more stable. For production runs, Parrinello-Rahman is best since it samples the correct ensemble.
pcoupl = no
pcoupltype = Isotropic
tau-p = 1
refcoord-scaling = No

; Use the LINCS algorithm to turn all bonds with hydrogen atoms into constraints. This allows a larger timestep. (can also use shake if needed, but lincs is faster)
constraint_algorithm = lincs
constraints = H-bonds

; Do not generate initial velocities; rather this run is a continuation from a previous run. Alternately, set gen_vel to yes and give it a temperature to sample the maxwell distribution at, and set continuation to no.
;gen_vel = no
;continuation = yes

Hi! Following the error message: have you energy-minimized and equilibrated the system before running the simulation?
My best guess is that one (or more) atom(s) are too close to the walls at the beginning of the simulation, causing a blowup.