Details
-
Task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.2.0, 1.2.1, 1.3.0
-
None
-
Mesosphere Sprint 60, Mesosphere Sprint 61
-
3
Description
Profiling agents reregistration for a large cluster shows, that many CPU cycles are spent on copying protobuf objects. This is partially due to copies made by a code like this:
future.then(defer(self(), &Process::method, param);
param could be copied 8-10 times before it reaches method. Specifically, reregisterSlave accepts vectors of rather complex objects, which are passed to defer.
Currently there are some places in defer, dispatch and Future code, which could use std::move and std::forward to evade some of the copies.
Attachments
Issue Links
- relates to
-
MESOS-7688 Improve master failover performance by reducing unnecessary agent retries.
- Open