pnlbwh/ukftractography — pull request #12 by hjmjohnson (2013-10-22 01:49:26+00:00)
Title: Perf testing

This pull request converts from VNL to Eigen. The main benefit is that if the compiler supports vectorization Eigen can take advantage of those parallisms.

This was verified in the Intel VTune performance analyzer that great speed increases could be achieved.

This is a recapitulation of the test timing scores for each refactoring step.

UKFTractography = 1.56 sec 4d410da DOC: Add better diagnostic for debugging.
UKFTractography = 1.56 sec c01c926 PERF: Remove conversion of same type.
UKFTractography = 1.56 sec 4d8b45e PERF: Make m_D_iso constant internal variable.
UKFTractography = 1.56 sec df68ed6 STYLE: Make math usage consistent.
UKFTractography = 1.57 sec d2989e5 STYLE: Use typedef to globally select precision.
UKFTractography = 1.57 sec 923d9b8 STYLE: Unify typedef naming usage.
UKFTractography = 1.55 sec 9abb72c ENH: Convert std::vector to EigenVector for State.
UKFTractography = 1.56 sec 4c44ce3 PERF: Constant value matrix are initialized once
UKFTractography = 1.56 sec a610034 PERF: Removed vnl to enforce Eigen consistency.
UKFTractography = 1.57 sec 1ad0c53 ENH: A milestone in refactoring where test pass
UKFTractography = 1.64 sec a270d56 PERF: Provide custom allocation to ensure alignment
UKFTractography = 1.62 sec 8095d54 PERF: Replace vnl with Eigen cholesky decomposition.
UKFTractography = 1.63 sec aa18820 ENH: Update QuadProg to use Eigen classes.
UKFTractography = 1.70 sec 8a0c77e ENH: Conversion to Eigen continuation.
UKFTractography = 2.30 sec 3ff33fc COMP: intermediate changes to get rid of vnl_vector_ref
UKFTractography = 2.41 sec 67a3451 PERF: Ensure that the FilterModel used for initialization never changes.
UKFTractography = 2.27 sec df7780b PERF: Replace LU with Eigen equivalent
UKFTractography = 3.78 sec c110c8a PERF: Refactoring again to minimize memory copies.
UKFTractography = 3.93 sec 582490f COMP: clean up QuadProg++_vnl.cc
UKFTractography = 3.75 sec 6829bd3 COMP: remove output files before running tests
UKFTractography = 3.79 sec 1e4e702 ENH: Provide more robust testing. False positives were reported when zero fibers were found.
UKFTractography = 3.80 sec dd1ffb3 STYLE: Avoid add .orig files from merges.
UKFTractography = 3.74 sec ee49666 PERF: Move initialization of diagonal to class
UKFTractography = 4.00 sec 1055a9e PERF: Avoid unnecessary matrix copies by using const references.
UKFTractography = 3.83 sec 1483e93 ENH: Changes verified to pass all tests.
UKFTractography = 3.80 sec d59a86d ENH: use the Eigen template library for linear algebra operations
UKFTractography = 3.81 sec 83d9cee BUG: A new baseline image is needed.
UKFTractography = 3.83 sec 4d49a10 ENH: Use Better tolerance for different slightly differnt results
UKFTractography = 3.88 sec dfe6fd2 STYLE: Remove outdated documentation.
UKFTractography = 3.83 sec 23e9a92 COMP: Fixed up SuperBuild for UKFTractography standalone
UKFTractography = 3.84 sec 5650478 BUG: Update teem's url for superbuild
UKFTractography = 3.75 sec 016f88c ENH: Add missing test labelmap and update test script
UKFTractography = 3.85 sec 3be2ca5 ENH: Refactor and clean user interface
UKFTractography = 3.80 sec 669378f Merge pull request #10 from BRAINSia/master