Question about instancing efficiency between vtk8.2 and vtk9.0

Hey guys, i took a test about variable instancing efficiency between vtk8.2 and vtk9.0 on different class.
Here was what i got:

testing times: 10000
Statistical method: average instancing time
the method instancing: vtkSmartPointer《class》 variable = vtkSmartPointer《class》::New();

VTK 9.0.3:
vtkGenericCell: 1.5002 us
vtkSphere: 0.0703 us
vtkSTLReader: 4.3552 us


VTK 8.2:
vtkGenericCell: 8.6075 us
vtkSphere: 0.2852 us
vtkSTLReader: 34.239 us

There are two questions for me.
FIRST, on the different version vtk, the same classes have significant instancing time that approximately is 10 times, and is there any optimizations?
SECOND, on the same version vtk, the different classes also have significant instancing time. what causes the difference?

Thanks for your reading!

FYI, This would be a better topic for the vtk discourse. In general though I think it’s good that the times are going down. To know exactly why you would need to look at the constructors for the various classes and if you are really interested you could use a code profiler to see where the time is being spent.