[gmx-users] mdrun -nc

2011-06-14 Thread Hsin-Lin Chiang

Hi,

I tried gromacs 4.5.4 in these days and last version I used is 4.0.5.
I found when I add --enable-threads in installation.
I can use mdrun -nc 12 to run 12 CPUs together within one machine.
It also amazing me when I type top to check the job, only one process 
in computer and the CPU utility is 1200%!!
But I tried to execute it on two machines, then the second machines 
didn't work.


I don't need mdrun_mpi any more because mdrun -nc is faster the mdrun_mpi.
That make me confused.
Am I right to use mdrun -nc to run parallel job in this way?
Does the result is the same as which is employed by mdrun_mpi?
(Exactly I never use mdrun_mpi more than one machine since the ethernet 
between machines is very slow here.)


If mdrun -nc is available.
Do we have another commend support CPUs more than one in the same machine.

Sincerely yours,
Hsin-Lin
--
gmx-users mailing listgmx-users@gromacs.org
http://lists.gromacs.org/mailman/listinfo/gmx-users
Please search the archive at 
http://www.gromacs.org/Support/Mailing_Lists/Search before posting!
Please don't post (un)subscribe requests to the list. Use the 
www interface or send it to gmx-users-requ...@gromacs.org.

Can't post? Read http://www.gromacs.org/Support/Mailing_Lists


Re: [gmx-users] mdrun -nc

2011-06-14 Thread Justin A. Lemkul



Hsin-Lin Chiang wrote:

Hi,

I tried gromacs 4.5.4 in these days and last version I used is 4.0.5.
I found when I add --enable-threads in installation.
I can use mdrun -nc 12 to run 12 CPUs together within one machine.


I assume you mean -nt?

It also amazing me when I type top to check the job, only one process 
in computer and the CPU utility is 1200%!!


Sounds about right.  I see the same on my dual-core workstation.  One process, 2 
threads, and just less than 200% CPU usage.


But I tried to execute it on two machines, then the second machines 
didn't work.




You can't execute threads over multiple machines.  For that you need MPI, not 
threading (they are mutually exclusive).  You haven't provided much detail on 
what you actually did in this case and didn't work doesn't exactly provide any 
relevant diagnostic information.



I don't need mdrun_mpi any more because mdrun -nc is faster the mdrun_mpi.
That make me confused.
Am I right to use mdrun -nc to run parallel job in this way?


For a single, multi-core workstation, mdrun -nt is correct.


Does the result is the same as which is employed by mdrun_mpi?


A variety of factors influence whether or not the results are the same.

http://www.gromacs.org/Documentation/Terminology/Reproducibility

(Exactly I never use mdrun_mpi more than one machine since the ethernet 
between machines is very slow here.)


If mdrun -nc is available.
Do we have another commend support CPUs more than one in the same machine.



That's what threading is doing, assuming you're invoking the command correctly. 
 As stated above, the option is -nt, not -nc.  mdrun doesn't check for whether 
or not command line arguments are actually valid, so if you're using -nc you're 
not actually doing threading, but the 1200% usage suggests you probably are.


-Justin

--


Justin A. Lemkul
Ph.D. Candidate
ICTAS Doctoral Scholar
MILES-IGERT Trainee
Department of Biochemistry
Virginia Tech
Blacksburg, VA
jalemkul[at]vt.edu | (540) 231-9080
http://www.bevanlab.biochem.vt.edu/Pages/Personal/justin


--
gmx-users mailing listgmx-users@gromacs.org
http://lists.gromacs.org/mailman/listinfo/gmx-users
Please search the archive at 
http://www.gromacs.org/Support/Mailing_Lists/Search before posting!
Please don't post (un)subscribe requests to the list. Use the 
www interface or send it to gmx-users-requ...@gromacs.org.

Can't post? Read http://www.gromacs.org/Support/Mailing_Lists


Re: [gmx-users] mdrun -nc

2011-06-14 Thread Joshua L. Phillips
On most of my multi-core machines, an attempt is made to detect the
number of threads to start at run-time (there may be a check for the
MAXIMUM number of threads at compile-time, but a developer would need to
chime in to determine if this is the case). For instance, I have a dual
quadcore machine (eight cores total). When I just run a command like so
on 4.5.4:

mdrun -v -deffnm trp-cage

I get:

Starting 8 threads
Loaded with Money

Making 2D domain decomposition 4 x 2 x 1
starting mdrun 'Good ROcking Metal Altar for Chronical Sinners in water'
10 steps,200.0 ps.
step 200, will finish Tue Jun 14 12:01:01 2011imb F  8% 
...

So, by default the threaded version will start the maximum number of
threads that it can (if it can find a good decomposition for all cores,
otherwise fewer threads are used). So, -nt is used to explicitly control
the number of threads used (not -nc).

As Justin said, for running across multiple machines, MPI is necessary
and precludes using threads.

-- Josh

On Tue, 2011-06-14 at 11:15 -0400, Justin A. Lemkul wrote:
 
 Hsin-Lin Chiang wrote:
  Hi,
  
  I tried gromacs 4.5.4 in these days and last version I used is 4.0.5.
  I found when I add --enable-threads in installation.
  I can use mdrun -nc 12 to run 12 CPUs together within one machine.
 
 I assume you mean -nt?
 
  It also amazing me when I type top to check the job, only one process 
  in computer and the CPU utility is 1200%!!
 
 Sounds about right.  I see the same on my dual-core workstation.  One 
 process, 2 
 threads, and just less than 200% CPU usage.
 
  But I tried to execute it on two machines, then the second machines 
  didn't work.
  
 
 You can't execute threads over multiple machines.  For that you need MPI, not 
 threading (they are mutually exclusive).  You haven't provided much detail on 
 what you actually did in this case and didn't work doesn't exactly provide 
 any 
 relevant diagnostic information.
 
  I don't need mdrun_mpi any more because mdrun -nc is faster the mdrun_mpi.
  That make me confused.
  Am I right to use mdrun -nc to run parallel job in this way?
 
 For a single, multi-core workstation, mdrun -nt is correct.
 
  Does the result is the same as which is employed by mdrun_mpi?
 
 A variety of factors influence whether or not the results are the same.
 
 http://www.gromacs.org/Documentation/Terminology/Reproducibility
 
  (Exactly I never use mdrun_mpi more than one machine since the ethernet 
  between machines is very slow here.)
  
  If mdrun -nc is available.
  Do we have another commend support CPUs more than one in the same machine.
  
 
 That's what threading is doing, assuming you're invoking the command 
 correctly. 
   As stated above, the option is -nt, not -nc.  mdrun doesn't check for 
 whether 
 or not command line arguments are actually valid, so if you're using -nc 
 you're 
 not actually doing threading, but the 1200% usage suggests you probably are.
 
 -Justin
 
 -- 
 
 
 Justin A. Lemkul
 Ph.D. Candidate
 ICTAS Doctoral Scholar
 MILES-IGERT Trainee
 Department of Biochemistry
 Virginia Tech
 Blacksburg, VA
 jalemkul[at]vt.edu | (540) 231-9080
 http://www.bevanlab.biochem.vt.edu/Pages/Personal/justin
 
 

-- 
Joshua L. Phillips
Ph.D. Candidate - School of Engineering
University of California, Merced
jphilli...@ucmerced.edu


-- 
gmx-users mailing listgmx-users@gromacs.org
http://lists.gromacs.org/mailman/listinfo/gmx-users
Please search the archive at 
http://www.gromacs.org/Support/Mailing_Lists/Search before posting!
Please don't post (un)subscribe requests to the list. Use the 
www interface or send it to gmx-users-requ...@gromacs.org.
Can't post? Read http://www.gromacs.org/Support/Mailing_Lists