FYI vtkStreamTracer had been threaded (one thread per streamline). This is a complex change and there may be residual issues - please let me know if you come across anything.
One issue I am seeing on a few Rogue Research testing machines (e.g., wrt TestEvenlySpacedStreamlines2D). It appears that these machines do not build a “Sequential” backend which I think is a problem. It means that code like that below does not work properly. There are some situations where serial execution is required (note the SerialExecution flag) and without a sequential backend the system uses std::thread which results in a sigabrt
if (numSeeds < VTK_ST_THREADING_THRESHOLD || this->SerialExecution)
{ // Serial
vtkSMPTools::LocalScope(vtkSMPTools::Config{ static_cast<std::string>("Sequential") },
[&]() { vtkSMPTools::For(0, numSeeds, ti); });
}
else
{
vtkSMPTools::For(0, numSeeds, ti);
}