Internal:GPU Usage: Difference between revisions

From crtc.cs.odu.edu
Jump to navigation Jump to search
Spyridon97 (talk | contribs)
No edit summary
Spyridon97 (talk | contribs)
No edit summary
Line 11: Line 11:
## Remove setImage* functions and create setInputImage(ImageType::Pointer, string)✔
## Remove setImage* functions and create setInputImage(ImageType::Pointer, string)✔
## Remove GetShortFileName✔
## Remove GetShortFileName✔
## Find a solution for Linear Interpolation issue on the 4D case
## Template the common code of each PODM for 3-4 dimensions (or even more or less)
## Template the common code of each PODM for 3-4 dimensions (or even more or less)
## Keep only useful Defines
## Keep only useful Defines

Revision as of 18:58, 27 October 2019

PODM Refactoring

  1. Find a Predicates library to replace CGAL library. A possible solution is Predicate Construction Kit and its code.
  2. Update Boost, ITK, VTK libraries
  3. Choose a specific C++ coding style✔
  4. Use C++17 standard✔
  5. Create a general Mesh Format which supports both 3D and 4D (and higher dimensions). This will be helpful for Linear interpolation.
  6. Combine 3D and 4D PODM versions into one abstract program, in which the user will choose what he wants to use.
    1. Create namespaces for each PODM which will help creating a templated PODM wrapper✔
    2. Decouple Args from PODM✔
    3. Create setArguments function✔
    4. Remove setImage* functions and create setInputImage(ImageType::Pointer, string)✔
    5. Remove GetShortFileName✔
    6. Find a solution for Linear Interpolation issue on the 4D case
    7. Template the common code of each PODM for 3-4 dimensions (or even more or less)
    8. Keep only useful Defines
  7. Use GPUs:
    1. For “itkSignedMaurerParallelDistanceMapImageFilter” code:
      1. Understand the code by reading the Parallel N-Dimensional Exact Signed Euclidean Distance Transform paper
      2. Study if it’s beneficial to convert it in order to use GPUs. See the papers:
        1. A Multigrain Delaunay Mesh Generation Method for Multicore SMT-based Architectures,
        2. Algorithm, Software, and Hardware Optimizations for Delaunay Mesh Generation on Simultaneous Multithreaded Architectures
    2. For Predicates:
      1. Based on ACCELERATING THE EXACT EVALUATION OF GEOMETRIC PREDICATES WITH GPUS
      2. Based on GPredicates - GPU Implementation of Robust and Adaptive Floating-Point Predicates for Computational Geometry
  8. Decouple Contentions managers and Load Balancing from the Meshing Procedure.
  9. Add PDR
  10. Add Smoothing