Parallel and serial

Dear Prof Julian,
I have an input file for a system made of 7440 atoms. When I am trying to run the simulation using GULP in Parallel, the file is not working. There is no error massage or anything happen, it is just don’t give any output file. If I run the simulation using GULP in serial it works well.

If I run the simulation using the following syntax, there is no error and no output. The simulation isn’t working

  1. mpirun -np 4 gulp < input.gin > input.gout

When I am using the following syntax to run the file, I have a massager error :

“!! ERROR : input file is empty
Program terminated by processor 0 in getkeyword”

  1. mpirun -np 4 gulp input.gin
    I attached my input file, please if you could provide me with some suggestions.

One more thing to say, GULP in parallel works well on my machine for a small system like (1280 atoms).

Thank you! (437.5 KB)

The first point here is addressed in the manual:

"If running in parallel, then it is recommended to use a different syntax to run GULP:

mpirun -np 4 gulp inputfile

Here mpirun is the command that launches a parallel job under MPI, 4 represents the number of cores on which to run (for example - other numbers up to the available number of cores are allowed) and inputfile here represents the name of your inputfile BUT without the .gin extension at the end. This will be added automatically and the output written to a file with the same root name, but with .gout at the end. Using this form of running GULP, as opposed to re-directing I/O with < and >, is better in parallel since it avoids a possible MPI error message relating to not being able to read the input fast enough."

For the second point, if you look at the above you’ll see you’ve got the syntax wrong in that if you specify the root name for the input as “input.gin” then the input file should be called “input.gin.gin” with the output being “input.gin.gout”.

Dear Prof Julian,
Thank you very much. Following your comment I was able to solve the problem.