Trying to fit the new Fast Marching implementation into the framework maintained by GIP probably means coping with improvements made in TAU, some of which leading to compatibility issues that get resolved one by one ad infinitum. It might in fact be simpler to take the existing GIP implementation (which works properly) and then backport everything that is of value in the TAU files, then add the cache to marching. This is not a small task, but it can at least ensure a slow and gradual deviation from what works rather then coping with many hundreds of program crashes. Nothing can mitigate the effects of future divergence unfortunately. Figure helps illustrate GMDS and highlight areas of conflicts.