VTK/ARB/Meetings/October 2010

From KitwarePublic
< VTK‎ | ARB‎ | Meetings
Jump to navigationJump to search


Meeting Notes

  • We want to address potential incompatibilities with different implementations of multi-threading in VTK.
  • Pieper: ITK pipeline work with Intel, put pieces into separate processing units. Worked well, but with fairly shallow pipelines.
  • DeMarle: Streaming work does not do multithreading but could easily take advantage of it.
  • Schroeder: Older medical image streaming/multithreading in VTK where it is easy to break up the data. Intrafilter functionality along with streaming among filters to have smaller memory footprint.
  • Need more separation between process objects and execution model. Need to preserve simple path for programmers for writing new algorithms.
  • Stephane: Task stealing can work intra-algorithm and inter-algorithm. First step is to have it work intra-algorithm. Task stealing should be complementary to HyperFlow. One use case is improving contouring algorithm or other non-parallel algorithm.
  • Want to support unstructured and structured data structures.
  • Want to build a library that makes it easy to iterate over VTK data structures in ways that would be useful to several algorithms.
  • Need to test speed, memory consumption of new filters.
  • Need to clean up API for VTK data objects to be thread-safe.
  • Suggest that we start with simple example of parallelizing the filter, perhaps streamlines, contours.
  • HyperFlow and task stealing may have to communicate in order to not overallocate resources?
    • Task stealing only uses threads that are not busy so this may not be an issue.
    • Has no central resource allocation.
    • It is LGPL with potential to change it.
    • No Windows support yet.
    • 22K lines of code.
    • Has GPU support.
  • Need a set of pipeline use cases that can be tested.
  • First integration next year, on a branch of VTK.
  • Bill - Way for external people to access submitted features. Talk to Steve about how ITK does extensions.
    • "Modules" for Insight Journal. Code automatically goes into Git repository.
    • Boolean operations for VTK is a good example of code that will likely not go into VTK but is useful.
    • Need to be able to scale the community.

Action Items

  • Send any additional multi-threading use cases to Stephane.
  • Coordinate on setting up "modules" for VTK Journal (Bill and Will).

Next Time

  • More on sharing code contributions.
  • VTK library reorganization.