-
Ben Boeckel authored
Array dispatching significantly increases compile time. Using `clang`, the prior `vtkDataArray.cxx` took almost 5 minutes to compile. By splitting out the implementations into separate files, overall compilation time is now 77 seconds on the same hardware (with 14 workers). Sample timings (sample size of 1): Time to complete CommonCore: Before: 08:06.120 After: 05:03.382 Individual objects: Before: 04:51.551 vtkDataArray.cxx.o After: 00:01.746 vtkDataArray.cxx.o 00:02.764 vtkDataArray_ScalarRange.cxx.o 00:02.931 vtkDataArray_VectorRange.cxx.o 00:02.955 vtkDataArray_FiniteScalarRange.cxx.o 00:03.026 vtkDataArray_FiniteVectorRange.cxx.o 00:08.553 vtkDataArray_InterpolateTuple_weights.cxx.o 00:10.235 vtkDataArray_InsertTuples_array_idlist_range.cxx.o 00:10.800 vtkDataArray_InterpolateTuple_time.cxx.o 00:34.192 vtkDataArray_CopyComponent.cxx.o 00:39.109 vtkDataArray_DeepCopy.cxx.o 01:04:424 vtkDataArray_SetTuple_array.cxx.o 01:05.916 vtkDataArray_GetTuples_ids.cxx.o 01:07.637 vtkDataArray_InsertTuples_array_idlist.cxx.o 01:11.574 vtkDataArray_InsertTuples_array_range.cxx.o 01:17.122 vtkDataArray_GetTuples_range.cxx.o
4030949c