[Chimera-users] Poor performance with 30 molecules
bzuber at mrc-lmb.cam.ac.uk
Fri Oct 3 01:31:52 PDT 2008
Thank you Tom and Elaine for your detailed explanations! Since the main
point is to fit a high resolution model in a low resolution map, and
considering the fact that the multiscale tool does not interoperate
easily with fittings in maps, I will rather use C-alpha coordinates only
as you suggest Tom. I have just tried it and it made a great
improvement! Also I tested fitting before and after removing the non CA
atoms and it did not make a significant difference.
I was wondering, if after fitting say 50 Calpha chains I wanted to
replace them by the full molecular model (for showing in a talk for
example), would there be an easy way to do that?
Thomas Goddard wrote:
> Hi Ben,
> The main trick to improve efficiency in Chimera with many copies of
> a molecule is to use only the C-alpha coordinates. This is usually
> acceptable with working with EM data resolutions. You create a PDB
> file with only the CA atoms (can use "select @CA" command and Chimera
> File / Save PDB...) reducing the total number of atoms by 10x or more.
> Chimera is a very memory inefficient with molecules taking about 2
> Kbytes per atom. This is about 10x worse than PyMol and VMD. You
> start feeling this at about 100,000 atoms and up and run into real
> trouble around 500,000 atoms if you are using 32-bit Chimera (no
> 64-bit available on Windows or Mac) because you run out of address space.
> The ability to rotate the models depends on rendering speed. Above
> 100,000 atoms only "wire" style will be fast and you must have a
> graphics driver installed (not Mesa on Linux). With a 4 year old
> graphics card (Radeon 9800 Pro) I get 10 frames per second with
> 200,000 atoms. With a newer card you should handle 500,000 atoms in
> wire at reasonable frame rates.
> Chimera session files include all the PDB atom coordinates. Chimera
> has no way to show 30 copies of a PDB file at different positions
> without having 30 independent copies of the data, except using
> surfaces with the multiscale tool. The multiscale tool does not
> interoperate easily with fitting in maps.
> Elaine Meng wrote:
>> Begin forwarded message:
>>> From: Benoit Zuber <bzuber at mrc-lmb.cam.ac.uk>
>>> Date: October 2, 2008 10:24:34 AM PDT
>>> To: Elaine Meng <meng at cgl.ucsf.edu>
>>> Subject: Re: [Chimera-users] volume viewer window
>>> Hi Elaine,
>>> I just aligned a tiny subtomogram to a model with a lot of different
>>> parameter, which generated many volumes. Then I wanted to visualize
>>> all the results at once. Since each volume was tiny, chimera was not
>>> struggling, it was fine :-)
>>> However that reminds me another issue about memory I had sometime ago.
>>> I have a tomogram into which I have fitted many copies (more than
>>> 30) of the same pdb file. There are two problems: 1) compiling the
>>> session file takes ages (around 10 minutes I would say). Opening the
>>> compiled session file takes more than 1 minute.
>>> 2) if I display all the copies of the pdb, everything is very slow
>>> (I mean if I want to move anything in space, it takes very long). If
>>> I display only a few copies (plus 1 or two slices through the
>>> tomogram), then it works fast.
>>> For the 2nd problem, there is maybe no easy solution to speed up the
>>> calcultations, but for the first one, since we are dealing with
>>> copies of a single pdb, wouldn't it be possible to make the process
>>> faster? I reckon that the coordinates of each atom of each copy of
>>> the pdb are saved. Would there be a way to save only one copy and
>>> transformation matrix for every copy? Would it speed up file
>>> saving-compiling-opening operations?
>> Hi Ben,
>> I know Tom Goddard has made many recent improvements in Volume Viewer
>> memory usage and speed, but it sounds like your main issue is many
>> atomic structures rather than lots of volume data.
>> If the PDB copies are identical except in transformation, there is
>> some capability in Multiscale Models to only store one copy of the
>> coordinates and show the others as low-res surfaces. However, as
>> soon as you try to show any more detailed display such as ribbons or
>> atoms and bonds, the full coordinates for that copy are loaded. If
>> you actually want to view ribbons/atoms/bonds for each copy, I don't
>> know of any mechanism to save memory. Also, to use Multiscale Models
>> in this way, you would have to generate an input PDB file with
>> matrices describing all of the transformations, which sounds
>> difficult. Yet another way to handle multiple coordinate sets for
>> the same atoms is as a trajectory. However, then you can only view
>> one member of ensemble (one "time step" from the trajectory) at a
>> time, so that also would not solve your problem.
>> I CC'd Tom and Eric in case they have any ideas.
MRC Laboratory of Molecular Biology
+44 1223 402209
bzuber at mrc-lmb.cam.ac.uk
More information about the Chimera-users