From: John Stone (
Date: Wed Jul 25 2007 - 13:02:32 CDT

  As Axel has already pointed out, the current versions of VMD are
multithreaded in a few places, but unless you're performing operations
which benefit substantially from it, you're better off running a
single-threaded job in the case of running on a batch machine like
the IBM. The main cases where you get a speed boost from the multithreading
in the current version is during rendering with Tachyon or TachyonInternal,
when loading/analyzing structures (e.g. mol new, mol reanalyze), and for
calculating electrostatic potentials with the volmap "coulomb" map type.
As VMD's use of multithreading becomes a more pervasive, the number of
cases that benefit will also increase. In order to facilitate this, we'll
be implementing various new "measure" commands that do many of the things
people presently do with single-threaded scripts, but allowing them to be
done on multicore CPUs and to use GPU acceleration e.g. NVIDIA CUDA,
where possible.

  John Stone

On Wed, Jul 25, 2007 at 12:04:02PM -0400, Axel Kohlmeyer wrote:
> On Wed, 25 Jul 2007, Rachel wrote:
> R> Dear all,
> dear rachel,
> R> I have VMD installed on IBM cluster, and I need to run some scripts with VMD
> R> which takes long time to finish when ran interactively, therefore I am
> R> wondering if I submit to queueing system it may be much faster, here is the
> R> script I used to submit the job:
> that would make rather little sense, because VMD is not 'proper'
> parallel program. it has some multi-threading in some commands,
> but that is it.
> [...]
> R> #@ job_name = model_VMD
> R>
> R> #
> R> #@ job_type = parallel
> R> #@ cpus = 16
> R> #@ node_usage = not_shared
> 16 cpus is probably not giving you much of a speedup, if any,
> for most of the regular script code there is no gain at all
> (the tcl interpreter is single-threaded).
> [...]
> R> vmd mol new model.prmtop
> R>
> R> vmd mol addfile model_md1to5.mdcrd type crdbox waitfor all
> R>
> R> vmd source myscript.tcl
> R>
> R> vmd myscript
> this cannot work either. please check the documentation. to
> run VMD in batch script mode you best put _all_ VMD commands into
> a single script batch_exe.tcl and then run:
> vmd -dispdev text -eofexit -e batch_exe.tcl
> however, the best chance to see some speedup would be to
> profile your script and optimize the tcl code in it.
> _most_ of the commonly used tcl scripts have a significant
> potential for speedup (either through a smarter algorithm
> or better tcl coding). check out, e.g.:
> R> I haven't used VMD in this way before, therefore not sure whether it is the
> R> right way to do so. What I really need is a way to use VMD for analysis that
> R> takes long time that I can logoff without killing the process.
> the 'vmd -eofexit -dispdev text -e script.tcl' thing also works on
> a local/interactive machine. just put a 'nohup' in front of it and
> add an '&' at the end of the command, so that it is sent into the
> background and not terminated when you log off.
> R> Thank you in advance for any advice.
> R>
> R> Kind regards,
> R> Rachel
> R>
> cheers,
> axel.
> --
> =======================================================================
> Axel Kohlmeyer
> Center for Molecular Modeling -- University of Pennsylvania
> Department of Chemistry, 231 S.34th Street, Philadelphia, PA 19104-6323
> tel: 1-215-898-1582, fax: 1-215-573-6233, office-tel: 1-215-898-5425
> =======================================================================
> If you make something idiot-proof, the universe creates a better idiot.

NIH Resource for Macromolecular Modeling and Bioinformatics
Beckman Institute for Advanced Science and Technology
University of Illinois, 405 N. Mathews Ave, Urbana, IL 61801
Email:                 Phone: 217-244-3349
  WWW:      Fax: 217-244-6078