ITK/Release 4/Refactor Numerical Libraries

From KitwarePublic
Jump to navigationJump to search

Background

ITK largely relies on third party libraries to provide support for numerical computations such as linear solvers, eigen analysis and non-linear optimization. These libraries have been integrated over the years of the project, based on content from other libraries, immediate needs and requirements of particular projects.

Goal

  • The purpose of this project is to revise the numerical libraries currently used in ITK, and to determine whether they are the best (or a good enough) option to use, and whether they are being used properly in the toolkit.
    • When appropriate, some of these libraries will be replaced with better options.
    • When possible, the code will be restructured to make possible for users to pick other options of third party libraries that may provide better support for their particular applications.

Inventory

  • First, we proceed to make an inventory of the numerical libraries currently used in ITK. This will serve as basis for the analysis of whether there are better options to use, and/or whether they are being used correctly.

Inventory of Numerical Libraries

Licensing

Alternatives

  • Replace f2c reference BLAS with the CBLAS, the C interface to BLAS linking against an externally supplied BLAS.
  • Replace f2c LAPACK with LAPAACKE, the C interface to LAPACK linking against an externally supplied LAPACK.

Tcons