CCL:G: use of four processors in one computer for Gaussian program



 Sent to CCL by: Hugo Alejandro Jimenez Vazquez [hjimenez=woodward.encb.ipn.mx]
 On Mon, 30 Apr 2012, Daniele Dondi kaliumster_+_gmail.com wrote:
 > You need a parallel version of Gaussian to do that.
 >
 > DD
 >
 > 2012/4/30 alireza zeinali ar.zeinali,+,yahoo.com
 <owner-chemistry*ccl.net>
 >
 > > Dear ccl-netters,
 > >
 > >
 > > I have a quad-core computer on which I have submitted Gaussian program
 > > under windows.
 > >
 > > I tried to use the four processors in the computer by putting
 %nproc=4.
 > > However, when I
 > > checked the task manager, I see only one processor is running.
 > >
 > > Anyone has idea how to make use of the four processors?
 > >
 > > Thank you
 > > Alireza
 >
 You do not mention which operating system you are using. I am only
 familiar with the 32-bit Windows and 32-bit and 64-bit Linux versions of
 Gaussian. I know out of experience that even the 32-bit Windows version
 is capable of using at least two processor cores, although I have never
 tried on a computer with more than two cores.
 Concerning the 64-bit Linux version, I can use 1, 2, 3 or 4 cores in a
 four-core processor withouth any problems by using the %nproc=x
 (%nprocshared=x for Gaussian 09) gaussian instruction. One of my students
 is currently carrying out calculations in a dual-core computer and the
 output of the "top" command looks like this:
 top - 18:03:55 up  6:26,  1 user,  load average: 2.00, 2.05, 2.45
 Tasks:  93 total,   2 running,  91 sleeping,   0 stopped,   0 zombie
 Cpu(s):  0.0%us,  0.0%sy,100.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
 Mem:   3923792k total,   927020k used,  2996772k free,    41256k buffers
 Swap:  2104472k total,        0k used,  2104472k free,   475616k cached
   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
  7272 crisosto  30  10 2438m 346m 3040 R  200  9.1  44:34.38 l1002.exe
     1 root      20   0  8072  740  624 S    0  0.0   0:00.41 init
     2 root      15  -5     0    0    0 S    0  0.0   0:00.00 kthreadd
     3 root      RT  -5     0    0    0 S    0  0.0   0:00.00 migration/0
     4 root      15  -5     0    0    0 S    0  0.0   0:00.05 ksoftirqd/0
 In this case I can see that both cores are being used from the 200% CPU
 usage data (and the temperatur increase of the processor, but that's
 another story). For four cores this number goes up to 400. In Windows you
 simply see that in the Task Manager the usage of all the processors goes
 to the top of the charts. One more thing that you should be aware of is
 that when you are using more than one processor you need to provide
 Gaussian with more memory. In principle, for a dual-core processor, twice
 as much as the minimun required for a single processor. This requirement
 would escalate with the number of processors employed. This is
 particularly important for calculations such as vibrational frequencies
 where there is a minimum for the calculation to run in a "single
 pass".
 As an example, there is a calculation that I use a simple benchmark in my
 computers. It is just a frequency calculation that runs without any
 trouble with 8MW (64 megabytes) in single-core computers (it also runs
 without any problem with this amount of memory in dual-core computers). I
 just assembled my first 4-core computer and tried to carry out this
 calculation with the same 8MW of memory and i get messages such as these
 in the output file:
 .
 .
 .
  %nprocshared=4
  Will use up to    4 processors via shared memory.
  %mem=8MW
  %chk=test2
 .
 .
 .
  One-electron integrals computed using PRISM.
  PrsmSu:  requested number of processors reduced to:   2 ShMem   1 Linda.
 .
 .
 .
  IMax=3 JMax=2 DiffMx= 0.00D+00
  G2DrvN: will do     6 centers at a time, making    3 passes doing MaxLOS=2.
  Estimated number of processors is:    3
 .
 .
 .
      48 vectors produced by pass  3 Test12= 1.25D-14 1.96D-09 XBig12= 2.90D-03
 5.87D-03.
  PrRfSu:  requested number of processors reduced to:   3 ShMem   1 Linda.
  PrRfSu:  requested number of processors reduced to:   3 ShMem   1 Linda.
 .
 .
 .
  N-N= 5.619054064369D+02 E-N=-3.731378376894D+03  KE= 1.098176122268D+03
   Exact polarizability: 179.392   0.103 106.578   0.804   0.935  90.311
  Approx polarizability: 202.415   2.353 159.605   6.396   2.430 123.455
  PrsmSu:  requested number of processors reduced to:   2 ShMem   1 Linda.
  PrsmSu:  requested number of processors reduced to:   2 ShMem   1 Linda.
 .
 .
 .
 These messages concerning the number of processors used went away as soon
 as I set %mem=32MW, with the full run employing four cores.
 I hope this information is useful.
 Regards,
 --
 ---
 Hugo A. Jimenez Vazquez
 hjimenez],[woodward.encb.ipn.mx
 Departamento de Quimica Organica
 ENCB-IPN
 Mexico