Ab initio molecular dynamics: Theory and Implementation
Ab initio molecular dynamics: Theory and Implementation
Ab initio molecular dynamics: Theory and Implementation
- No tags were found...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Table 4. Distribution of plane waves <strong>and</strong> ”pencils” in parallel runs on different numbers of processors.Example for a cubic box with a volume of 6479.0979 bohr 3 <strong>and</strong> a 70 Rydberg cutoff forthe wavefunctions. This is the simulation box needed for 32 water molecules at normal pressure.wavefunction cutoffPE plane waves pencilsmax min max min1 32043 32043 1933 19332 16030 16013 967 9664 8016 8006 484 4828 4011 4000 242 24016 2013 1996 122 11932 1009 994 62 5964 507 495 32 29128 256 245 16 14density cutoffPE plane waves pencilsmax min max min1 256034 256034 7721 77212 128043 127991 3859 38624 64022 63972 1932 19298 32013 31976 966 96416 16011 15971 484 48232 8011 7966 242 24064 4011 3992 122 119128 2006 1996 62 59where it is assumed that the amount of data N is constant. The time neededin Broadcast <strong>and</strong> GlobalSum will increase with the logarithm of the number ofprocessors involved. The time for the matrix transposition scales for one partlinearly with the number of processors. Once this part is small, then the latencypart will be dominant <strong>and</strong> increase linearly. Besides load balancing problems, thecommunication routines will limit the maximum speedup that can be achieved ona parallel computer for a given problem size. Examples will be shown in the lastpart of this section.With the distribution of the data structures given, the parallelization of the computationalkernels is in most cases easy. In the StructureFactor <strong>and</strong> Rotationroutines the loop over the plane waves N D has to be replaced by N p D. The routinesperforming inner products have to be adapted for the G = 0 term <strong>and</strong> the globalsummation of the final result.MODULE DotProductIF (p == P0) THENab = A(1) * B(1) + 2 * sdot(2 * (N p D − 1),A(2),1,B(2),1)ELSE86