You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Guangya Liu (JIRA)" <ji...@apache.org> on 2016/07/25 10:12:20 UTC
[jira] [Updated] (MESOS-5898) Make resources benchmark test for
ports -=/- more accurate
[ https://issues.apache.org/jira/browse/MESOS-5898?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Guangya Liu updated MESOS-5898:
-------------------------------
Description:
When I run benchmark test for port resources, I can get the following result, the `-=` and `-` only consumed 10ms, this cannot reflect the real time of operating 1000 ports with `-=` and `-`.
The root cause is that the current calculation is always using same port range, with port, the formula for `+` is {{a+a+a+a+...+a==a}}; for `-`, it will be {{a-a=0}} and {{0-a=0}}.
With {{0-a=0}}, the code here https://github.com/apache/mesos/blob/master/src/common/values.cpp#L544 will cause there is no validation as the {{left}} is empty.
{code}
./bin/mesos-tests.sh --benchmark --gtest_filter="*Resources_BENCHMARK_Test.Arithmetic/2"
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from ResourcesOperators/Resources_BENCHMARK_Test
[ RUN ] ResourcesOperators/Resources_BENCHMARK_Test.Arithmetic/2
Took 3.219217secs to perform 1000 'total += r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
Took 10207us to perform 1000 'total -= r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
Took 3.515383secs to perform 1000 'total = total + r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
Took 10208us to perform 1000 'total = total - r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
[ OK ] ResourcesOperators/Resources_BENCHMARK_Test.Arithmetic/2 (6759 ms)
[----------] 1 test from ResourcesOperators/Resources_BENCHMARK_Test (6759 ms total)
[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (6801 ms total)
[ PASSED ] 1 test.
{code}
was:
When I run benchmark test for port resources, I can get the following result, the `-=` and `-` only consumed 10ms, this cannot reflect the real time of operating 1000 ports with `-=` and `-`.
The root cause is that the current calculation is always using same port range, with port, the formula for `+` is {a+a+a+a+...+a==a}; for `-`, it will be {a-a=0} and {0-a=0}.
With {0-a=0}, the code here https://github.com/apache/mesos/blob/master/src/common/values.cpp#L544 will cause there is no validation as the {{left}} is empty.
{code}
./bin/mesos-tests.sh --benchmark --gtest_filter="*Resources_BENCHMARK_Test.Arithmetic/2"
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from ResourcesOperators/Resources_BENCHMARK_Test
[ RUN ] ResourcesOperators/Resources_BENCHMARK_Test.Arithmetic/2
Took 3.219217secs to perform 1000 'total += r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
Took 10207us to perform 1000 'total -= r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
Took 3.515383secs to perform 1000 'total = total + r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
Took 10208us to perform 1000 'total = total - r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
[ OK ] ResourcesOperators/Resources_BENCHMARK_Test.Arithmetic/2 (6759 ms)
[----------] 1 test from ResourcesOperators/Resources_BENCHMARK_Test (6759 ms total)
[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (6801 ms total)
[ PASSED ] 1 test.
{code}
> Make resources benchmark test for ports -=/- more accurate
> ----------------------------------------------------------
>
> Key: MESOS-5898
> URL: https://issues.apache.org/jira/browse/MESOS-5898
> Project: Mesos
> Issue Type: Bug
> Reporter: Guangya Liu
> Assignee: Guangya Liu
>
> When I run benchmark test for port resources, I can get the following result, the `-=` and `-` only consumed 10ms, this cannot reflect the real time of operating 1000 ports with `-=` and `-`.
> The root cause is that the current calculation is always using same port range, with port, the formula for `+` is {{a+a+a+a+...+a==a}}; for `-`, it will be {{a-a=0}} and {{0-a=0}}.
> With {{0-a=0}}, the code here https://github.com/apache/mesos/blob/master/src/common/values.cpp#L544 will cause there is no validation as the {{left}} is empty.
> {code}
> ./bin/mesos-tests.sh --benchmark --gtest_filter="*Resources_BENCHMARK_Test.Arithmetic/2"
> [==========] Running 1 test from 1 test case.
> [----------] Global test environment set-up.
> [----------] 1 test from ResourcesOperators/Resources_BENCHMARK_Test
> [ RUN ] ResourcesOperators/Resources_BENCHMARK_Test.Arithmetic/2
> Took 3.219217secs to perform 1000 'total += r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
> Took 10207us to perform 1000 'total -= r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
> Took 3.515383secs to perform 1000 'total = total + r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
> Took 10208us to perform 1000 'total = total - r' operations on ports(*):[1-2, 4-5, 7-8, 10-11, 13-14, 16-17, 1...
> [ OK ] ResourcesOperators/Resources_BENCHMARK_Test.Arithmetic/2 (6759 ms)
> [----------] 1 test from ResourcesOperators/Resources_BENCHMARK_Test (6759 ms total)
> [----------] Global test environment tear-down
> [==========] 1 test from 1 test case ran. (6801 ms total)
> [ PASSED ] 1 test.
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)