============================================ Gazebo Hotspot Analysis: 3k_shapes_static ============================================ Total samples: 29985957064 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1. Optimization targets (inclusive time) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Gazebo functions ranked by total CPU spent under them (including all children). If you optimize or remove one of these functions, you'd save up to this % of CPU. These are the primary optimization candidates. 99.9% gz::sim::v11::SimulationRunner::Run 99.9% gz::sim::v11::ServerPrivate::Run 99.8% gz::sim::v11::SimulationRunner::Step 99.7% gz::sim::v11::SimulationRunner::UpdateSystems 99.7% gz::sim::v11::systems::Physics::Update 97.6% gz::sim::v11::systems::PhysicsPrivate::Step 1.7% gz::sim::v11::systems::PhysicsPrivate::UpdatePhysics 1.7% Each<...> 0.1% gz::transport::v16::Node::Publisher::HasConnections 0.1% gz::sim::v11::SimulationRunner::PublishStats 0.0% gz::sim::v11::systems::PhysicsPrivate::UpdateSim 0.0% Each<...> 0.0% gz::sim::v11::systems::SceneBroadcaster::PostUpdate 0.0% gz::sim::v11::LevelManager::UpdateLevelsState 0.0% gz::transport::v16::Publisher::Topic[abi:cxx11] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2. What Gazebo functions call (attribution) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ For each sample, finds the nearest Gazebo function in the stack and shows what external function it called. Format: GazeboFunc -> ExternalFunc. Shows where optimizing the Gazebo caller would reduce external library cost. 93.8% gz::sim::v11::systems::PhysicsPrivate::Step -> gz::physics::ForwardStep::World<...> 3.7% gz::sim::v11::systems::PhysicsPrivate::Step -> gz::physics::SpecifyData<...> 0.3% gz::sim::v11::systems::Physics::Update -> gz::physics::SpecifyData<...> 0.0% gz::sim::v11::systems::PhysicsPrivate::Step -> gz::physics::ExpectData<...> 0.0% gz::transport::v16::MessagePublisher::MsgTypeName[abi:cxx11] -> std::__cxx11::basic_string<...> 0.0% gz::sim::v11::systems::Physics::Update -> std::_Rb_tree<...> 0.0% gz::sim::v11::EntityComponentManager::SetAllComponentsUnchanged -> clear<...> 0.0% gz::physics::dartsim::BitmaskContactFilter::ignoresCollision -> dart::collision::BodyNodeCollisionFilter::ignoresCollision 0.0% gz::sim::v11::systems::PhysicsPrivate::Step -> std::_Rb_tree<...> 0.0% gz::sim::v11::LevelManager::UpdateLevelsState -> ___pthread_mutex_lock 0.0% gz::transport::v16::Publisher::Topic[abi:cxx11] -> std::__cxx11::basic_string<...> 0.0% gz::sim::v11::systems::PhysicsPrivate::Step -> std::chrono::duration<...> 0.0% gz::sim::v11::SimulationRunner::UpdateSystems -> non-virtual 0.0% gz::transport::v16::TopicStorage<...> 0.0% gz::transport::v16::Node::PublisherPrivate::Valid -> std::__cxx11::basic_string<...> ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3. External costs (context) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Top CPU consumers in external libraries (DART, ODE, Ogre, glibc, etc.). Not directly actionable, but shows where the CPU actually executes. See section 2 for which Gazebo function is responsible for each. 93.8% gz::physics::ForwardStep::World