Skip to content

fix/isocontour-performance

Michael Turner requested to merge fix/isocontour-performance into master

This addresses issue #51 (closed).

Each iso object declares a huge number of doubles on creation for storage (which is not great but not sorted here) and then condense them to a minimal memory set before moving onto the next element and next iso. So in theory, while not great coding practice should not cause too many issues. However due to the way 4 or 5 if statements line up if an element (and its iso) does not cut a new contour (which is the vast majority of elements) it doesnt get condensed.

With a small if statement, if the iso object has no new contour, it gets forgotten altogether now.

On a test case of 350k elements peak memory consumption went from 250GB to 21GB, its also a little faster.

Merge request reports