----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/70370/ -----------------------------------------------------------
Review request for mesos and Meng Zhu. Repository: mesos Description ------- This allows us to use the role sorter to compute total allocation in the allocator, whereas the allocator currently loops over top-level roles to compute the total allocation. A subsequent patch will expose the root allocation and update the allocator accordingly. Benchmark results using min/med/max: */HierarchicalAllocator_BENCHMARK_Test.DeclineOffers/22 Added 3000 frameworks: Before: 152ms/170ms/176ms After: 153ms/171ms/181ms Added 10000 agents: Before: 3.10s/3.26s/3.42s After: 3.07s/3.31s/3.58s Round 0-9: Before: 2.41s/2.47s/2.78s After: 2.46s/2.60s/2.92s CommonSorterTest/0.BENCHMARK_FullSort: Using 50k agents and 1k clients Added allocations for 50k agents in 94ms --> 183ms (2x slower) Removed allocations for 50k agents in 5.4secs -> 12.2secs (2x slower) CommonSorterTest/1.BENCHMARK_FullSort: Using 50k agents and 1000 clients Added allocations for 50k agents in 95ms --> 185ms (2x slower) Removed allocations for 50k agents in 5.5secs --> 12.2secs (2x slower) As expected, this doubles the cost for adding/removing allocations for flat roles, since it has to update the role **and the root** now. However, it appears to have a negligeable effect on the allocator benchmark shown above. Diffs ----- src/master/allocator/sorter/drf/sorter.hpp 9e4d0365c0eb8af43076f3f9a8159280bdda85e9 src/master/allocator/sorter/drf/sorter.cpp a76888d9e8b1c8ac7e0e166e1a367d5e347540fc src/master/allocator/sorter/random/sorter.cpp 8499c69d514b5be881382bb8602da6dc31af22ed Diff: https://reviews.apache.org/r/70370/diff/1/ Testing ------- make check Thanks, Benjamin Mahler
