HPC/Applications/lammps: Difference between revisions

From CNM Wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 25: Line 25:
|}
|}


=== Sample job file ===
=== Sample job file gen1 ===
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
#!/bin/bash
#!/bin/bash
#PBS -l nodes=20:ppn=8
#PBS -l nodes=20:ppn=8:gen1
#PBS -l walltime=3:00:00
#PBS -N <jobname>
#PBS -A <account>
#
#PBS -o job.out
#PBS -e job.err
#PBS -m ea
 
# change into the directory where qsub will be executed
cd $PBS_O_WORKDIR
 
mpirun  -machinefile  $PBS_NODEFILE \
        -np $(wc -l < $PBS_NODEFILE) \
        -mca btl self,tcp \
        lmp_openmpi < lammps.in > lammps.out 2> lammps.err
</syntaxhighlight>
 
=== Sample job file gen2 ===
<syntaxhighlight lang="bash">
#!/bin/bash
#PBS -l nodes=20:ppn=8:gen2
#PBS -l walltime=3:00:00
#PBS -l walltime=3:00:00
#PBS -N <jobname>
#PBS -N <jobname>
Line 42: Line 63:
mpirun  -machinefile  $PBS_NODEFILE \
mpirun  -machinefile  $PBS_NODEFILE \
         -np $(wc -l < $PBS_NODEFILE) \
         -np $(wc -l < $PBS_NODEFILE) \
        -mca btl_openib_use_srq 1 \
         lmp_openmpi < lammps.in > lammps.out 2> lammps.err
         lmp_openmpi < lammps.in > lammps.out 2> lammps.err
</syntaxhighlight>
</syntaxhighlight>

Revision as of 21:38, January 23, 2012

Benchmark

Using a sample workload from Sanket ("run9"), I tested various OpenMPI options on both node types.

LAMMPS performs best on gen2 nodes without extra opiotns, and pretty well on gen1 nodes over ethernet(!).

Job Type Interconnect Additional OpenMPI options Relative speed
(1000 steps/3 hours)
Notes
gen1 gen1 IB (none) 36
gen1srq gen1 IB (none) 39 (to be confirmed) not useful (IB and eth. options)
gen1srqpin gen1 IB -mca btl_openib_use_srq 1
-mca mpi_paffinity_alone 1
39
gen1srqeth gen1 Ethernet -mca btl_openib_use_srq 1
-mca btl self,tcp
42 not useful (IB and eth. options)
gen1eth gen1 Ethernet -mca btl self,tcp 44 fastest for gen1
gen2eth gen2 Ethernet -mca btl self,tcp 49
gen2srq gen2 IB -mca btl_openib_use_srq 1 59
gen2 gen2 IB (none) 59 fastest for gen2

Sample job file gen1

#!/bin/bash
#PBS -l nodes=20:ppn=8:gen1
#PBS -l walltime=3:00:00
#PBS -N <jobname>
#PBS -A <account>
#
#PBS -o job.out
#PBS -e job.err
#PBS -m ea

# change into the directory where qsub will be executed
cd $PBS_O_WORKDIR

mpirun  -machinefile  $PBS_NODEFILE \
        -np $(wc -l < $PBS_NODEFILE) \
        -mca btl self,tcp \
        lmp_openmpi < lammps.in > lammps.out 2> lammps.err

Sample job file gen2

#!/bin/bash
#PBS -l nodes=20:ppn=8:gen2
#PBS -l walltime=3:00:00
#PBS -N <jobname>
#PBS -A <account>
#
#PBS -o job.out
#PBS -e job.err
#PBS -m ea

# change into the directory where qsub will be executed
cd $PBS_O_WORKDIR

mpirun  -machinefile  $PBS_NODEFILE \
        -np $(wc -l < $PBS_NODEFILE) \
        lmp_openmpi < lammps.in > lammps.out 2> lammps.err