[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
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