A game I work on is using Havok Physics to step its world simulation. There are several object types used, such as vehicles and characters. When an AI condition is triggered, the Havok world step suddenly performs very badly in terms of computation cost. The number of constraints and actions in the world stays the same (+/- 2 or 3), but the number of simulation islands doubles (from 35 to 70), with a total number of 80 active bodies. The total number of rigid bodies (asleep or awake) totals about 700 and tends to vary between 650 and 750.
Is there any way to perform a performance measure object-wise (i.e. find out what objects take most time to simulate or why) or, at least, find out what types of collision queries cost the most? I do have profiling tags that help produce a preliminary statistic, but since the closed-source nature of Havok, I end up with a mystical view of the world step routine.