I'm currently using PyMol 1.4.1 on Ubuntu Linux 11.10. My hardware is fairly up-to-date, an AMD 6-core, 3.2 GHz CPU ,and 4 GB of DDR1200 RAM. My only old hardware is my NVidia 8800 GTS graphics card. I have started to assemble rather large visualizations. I am noticing CPU performance lags, and unexpectedly high memory usage. In my hands, PyMol is behaving like the infamous Flash Player browser plug-in -- hogging memory and CPU cycles (as well as disk space) for no obvious reason.
Here's an example. I have superimposed 15 PDB files which are snapshots from GROMACS molecular dynamics simulations.
These contain protein molecules in a water box. I admit, the PDB files are pretty large, around 3.5 MB each. Still, 15 x 3.5 MB = 52.5 MB. That should be manageable, I think. Ambitious, but still within reasonable limits.
But what is the size of the PyMol session (.pse) file that I built from this stack of PDB files? 234 MB! Why did this bloat up to fully five times the size of the source data (which is already in plain text, and full of white space)?
What's more, when I load this 234-MB file into PyMol, the Python interpreter which PyMol invokes grabs a full 1.0 GB of memory. The CPU usage of that Python interpreter (single-core, of course) immediately jumps to around 40% even when I'm not asking PyMol to do anything. After I've worked with PyMol a bit with this
file loaded, CPU usage will jump to 100%, and it stays there. Once that happens, the cursor will lag, jitter or freeze, and I can end up selecting unintended menu items. Keep in mind, this is with a completely stationary image in the PyMol Viewer window.
I'm looking to reduce all of this overhead. Excluding some water molecules from the source PDB files comes to mind. Perhaps I can find a way to clip my simulation box (I would like to retain the option to visualize any water molecules which actually contact the protein). However, I seem to have more fundamental problems than excess water molecules. Alternately, if there are settings in PyMol that I can adjust to get it to behave, that would be great.
Thanks for any advice you may have!