[ https://issues.apache.org/jira/browse/MESOS-7713?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benjamin Hindman updated MESOS-7713: ------------------------------------ Shepherd: Michael Park > Optimize number of copies made in dispatch/defer mechanism > ---------------------------------------------------------- > > Key: MESOS-7713 > URL: https://issues.apache.org/jira/browse/MESOS-7713 > Project: Mesos > Issue Type: Task > Components: libprocess > Affects Versions: 1.2.0, 1.2.1, 1.3.0 > Reporter: Dmitry Zhuk > Assignee: Dmitry Zhuk > > 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: > {code} > future.then(defer(self(), &Process::method, param); > {code} > {{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. -- This message was sent by Atlassian JIRA (v6.4.14#64029)