[3dem] Alignparts_lmbfgs and Alignframes_lmbfgs update

John Rubinstein john.rubinstein at utoronto.ca
Wed Feb 24 08:40:37 PST 2016


Dear alignparts_lmbfgs and alignframes_lmbfgs users,

I recently realized a way to dramatically speed up the calculation of derivatives (gradients) of the alignment function that are at the heart of the alignframes_lmbfgs algorithm for whole frame alignment and alignparts_lmbfgs for individual particle motion correction (fast particle ‘polishing’). I’ve also adjusted the compiler optimization settings in the Makefile to improve the program speed. On a single processor of a few-year-old desktop computer it now takes ~10 seconds to ‘polish’ 25 particles (30 frames, 320 pixel box) - the previous version took ~25 seconds for the same conditions on my desktop.

However, in testing the new version of alignparts_lmbfgs, I realized that to get particle trajectories that were usually within 1 pixel of the old version I had to make the convergence criterion for the optimizer more stringent, which reduces the speedup somewhat. Therefore, if you were happy with your alignparts_lmbfgs performance previously, download the new version, keep the convergence criterion the same (factr=1d7; i.e. 1 x 10^7 in double precision) and enjoy a significant speed up. If you want to try to get even better performance out of the program (I’m not sure if it will matter) you can try making the convergence criterion more stringent (factr=1d1). In any case, I recommend that users download the new versions of alignparts_lmbfgs, alignframes_lmbfgs, and the Makefile and recompile their programs (https://sites.google.com/site/rubinsteingroup/direct-detector-align_lmbfgs). I have replaced the .csh files for the two programs with versions where factr=1d1.

I have also received a few requests for a program that allows users to try applying pre-computed particle trajectories without needing to recalculate those trajectories (to allow users to try using different ranges of frames in the average in addition to the exposure weighting/damage compensation that alignparts_lmbfgs already applies). I will get to work on that program soon.

Best wishes,
John 





-- 
John Rubinstein
Molecular Structure and Function Program
The Hospital for Sick Children Research Institute
686 Bay Street, Rm. 20-9705
Toronto, ON
Canada
M5G 0A4
Tel: (+001) 416-813-7255
Fax: (+001) 416-813-5022
www.sickkids.ca/research/rubinstein



More information about the 3dem mailing list