[phenixbb] The performance of phenix.refine

Ralf W. Grosse-Kunstleve rwgk at cci.lbl.gov
Thu Mar 22 11:02:20 PDT 2007

> Did anybody actually compare the performance among phenix.refine, CNS  
> and refmac5?  I am trying the phenix.refine from the latest CCI  
> bundle for my refinement.  I have a relative large structure (800 kD  
> unique) and unit cell (140, 160, 550, 90, 90, 90).  The data is at  
> low resolution ( 3.8 A) with experimental phases.  My impression is  
> that phenix.refine takes a much longer time to finish the jobs, say  
> rigid body refinement or SA refinement, and it also takes a lot more  
> memories ( in my case, phenix.refine uses more than 700 MB, but other  
> programs use less than 200 MB).

We have been concentrating on features and a high level of automation
much more than raw speed and memory efficiency. Given that memory
is so cheap these days (ca. $80/GB) there isn't much incentive for
us to trade developer time for a smaller memory footprint. Speed
optimizations are a bit higher up on the list.

> Is this because the python code in  
> phenix.refine? CNS and refmac5 are written in FROTRAN, I think.  Just  
> curious.

phenix.refine doesn't spend much time in the Python code. It is a long
while ago I did careful timings, but I'd guess it is significantly less
than 10% of the time. C++ is intrinsically almost as fast as FORTRAN if
the same development time is invested in the code. I.e. what you see
is not a language issue, just a tradeoff features vs. optimization.

We'll work on making phenix.refine a bit faster in the future, but at
the minute more features are still our focus.


More information about the phenixbb mailing list