Merge github.com:grpc/grpc into error

pull/6897/head
Craig Tiller 9 years ago
commit 73cb476b0b
  1. 9
      templates/tools/dockerfile/test/sanity/Dockerfile.template
  2. 20
      test/cpp/qps/gen_build_yaml.py
  3. 8
      tools/dockerfile/test/sanity/Dockerfile
  4. 33
      tools/run_tests/performance/scenario_config.py
  5. 136
      tools/run_tests/tests.json

@ -29,7 +29,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
FROM debian:jessie
FROM ubuntu:15.10
<%include file="../../apt_get_basic.include"/>
#========================
@ -46,10 +46,8 @@
#======================================
# More sanity test dependencies (bazel)
RUN echo "deb http://httpredir.debian.org/debian jessie-backports main" > \
/etc/apt/sources.list.d/backports.list
RUN apt-get update
RUN apt-get -t jessie-backports install -y openjdk-8-jdk
RUN apt-get install -y openjdk-8-jdk
# TOOD(jtattermusch): pin the bazel version
RUN git clone https://github.com/bazelbuild/bazel.git /bazel
RUN cd /bazel && ./compile.sh
RUN ln -s /bazel/output/bazel /bin/
@ -58,7 +56,6 @@
# Docker "inception"
# Note this is quite the ugly hack.
# This makes sure that the docker binary we inject has its dependencies.
RUN apt-get install libsystemd-journal0
RUN curl https://get.docker.com/ | sh
RUN apt-get remove --purge -y docker-engine

@ -46,6 +46,24 @@ import performance.scenario_config as scenario_config
def _scenario_json_string(scenario_json):
return json.dumps(scenario_config.remove_nonproto_fields(scenario_json))
def threads_of_type(scenario_json, path):
d = scenario_json
for el in path.split('/'):
if el not in d:
return 0
d = d[el]
return d
def guess_cpu(scenario_json):
client = threads_of_type(scenario_json, 'client_config/async_client_threads')
server = threads_of_type(scenario_json, 'server_config/async_server_threads')
# make an arbitrary guess if set to auto-detect
# about the size of the jenkins instances we have for unit tests
if client == 0: client = 8
if server == 0: server = 8
return (scenario_json['num_clients'] * client +
scenario_json['num_servers'] * server)
print yaml.dump({
'tests': [
{
@ -59,7 +77,7 @@ print yaml.dump({
'language': 'c++',
'boringssl': True,
'defaults': 'boringssl',
'cpu_cost': 1000.0,
'cpu_cost': guess_cpu(scenario_json),
'exclude_configs': []
}
for scenario_json in scenario_config.CXXLanguage().scenarios()

@ -27,7 +27,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
FROM debian:jessie
FROM ubuntu:15.10
# Install Git and basic packages.
RUN apt-get update && apt-get install -y \
@ -77,9 +77,8 @@ RUN pip install simplejson mako
#======================================
# More sanity test dependencies (bazel)
RUN echo "deb http://httpredir.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/backports.list
RUN apt-get update
RUN apt-get -t jessie-backports install -y openjdk-8-jdk
RUN apt-get install -y openjdk-8-jdk
# TOOD(jtattermusch): pin the bazel version
RUN git clone https://github.com/bazelbuild/bazel.git /bazel
RUN cd /bazel && ./compile.sh
RUN ln -s /bazel/output/bazel /bin/
@ -88,7 +87,6 @@ RUN ln -s /bazel/output/bazel /bin/
# Docker "inception"
# Note this is quite the ugly hack.
# This makes sure that the docker binary we inject has its dependencies.
RUN apt-get install libsystemd-journal0
RUN curl https://get.docker.com/ | sh
RUN apt-get remove --purge -y docker-engine

@ -94,7 +94,6 @@ def remove_nonproto_fields(scenario):
def _ping_pong_scenario(name, rpc_type,
client_type, server_type,
secure=True,
use_big_generic_payload=False,
use_generic_payload=False,
unconstrained_client=None,
client_language=None,
@ -129,12 +128,7 @@ def _ping_pong_scenario(name, rpc_type,
'warmup_seconds': warmup_seconds,
'benchmark_seconds': BENCHMARK_SECONDS
}
if use_big_generic_payload:
if server_type != 'ASYNC_GENERIC_SERVER':
raise Exception('Use ASYNC_GENERIC_SERVER for big generic payload.')
scenario['client_config']['payload_config'] = BIG_GENERIC_PAYLOAD
scenario['server_config']['payload_config'] = BIG_GENERIC_PAYLOAD
elif use_generic_payload:
if use_generic_payload:
if server_type != 'ASYNC_GENERIC_SERVER':
raise Exception('Use ASYNC_GENERIC_SERVER for generic payload.')
scenario['client_config']['payload_config'] = EMPTY_GENERIC_PAYLOAD
@ -147,23 +141,13 @@ def _ping_pong_scenario(name, rpc_type,
if unconstrained_client == 'async':
deep = DEEP
wide = WIDE
num_clients = 0 # use as many clients as available
elif unconstrained_client == 'sync':
deep = SYNC_DEEP
wide = SYNC_WIDE
num_clients = 0 # use as many clients as available
elif unconstrained_client == '1chan_bw':
deep = DEEP
wide = 1
num_clients = 1 # limit to 1 for a single channel
elif unconstrained_client == 'Nchan_bw':
deep = DEEP
wide = WIDE
num_clients = 0 # use as many clients as available
else:
raise Exception('Illegal value of unconstrained_client option.')
scenario['num_clients'] = num_clients
scenario['num_clients'] = 0 # use as many client as available.
scenario['client_config']['outstanding_rpcs_per_channel'] = deep
scenario['client_config']['client_channels'] = wide
scenario['client_config']['async_client_threads'] = 0
@ -254,19 +238,6 @@ class CXXLanguage:
server_core_limit=1, async_server_threads=1,
secure=secure)
yield _ping_pong_scenario(
'cpp_generic_async_streaming_single_channel_throughput_%s' % secstr, rpc_type='STREAMING',
client_type='ASYNC_CLIENT', server_type='ASYNC_GENERIC_SERVER',
unconstrained_client='1chan_bw', use_big_generic_payload=True,
secure=secure,
categories=smoketest_categories)
yield _ping_pong_scenario(
'cpp_generic_async_streaming_multi_channel_throughput_%s' % secstr, rpc_type='STREAMING',
client_type='ASYNC_CLIENT', server_type='ASYNC_GENERIC_SERVER',
unconstrained_client='Nchan_bw', use_big_generic_payload=True,
secure=secure)
def __str__(self):
return 'c++'

@ -23031,7 +23031,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 2,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23057,7 +23057,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 2,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23083,7 +23083,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 2,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23109,7 +23109,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 2,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23135,7 +23135,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 8,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23161,7 +23161,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 8,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23187,7 +23187,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 8,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23213,7 +23213,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 1,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23227,58 +23227,6 @@
],
"shortname": "json_run_localhost:cpp_generic_async_streaming_qps_one_server_core_secure"
},
{
"args": [
"--scenario_json",
"'{\"name\": \"cpp_generic_async_streaming_single_channel_throughput_secure\", \"warmup_seconds\": 5, \"benchmark_seconds\": 30, \"num_servers\": 1, \"server_config\": {\"async_server_threads\": 0, \"core_limit\": 0, \"security_params\": {\"use_test_ca\": true, \"server_host_override\": \"foo.test.google.fr\"}, \"payload_config\": {\"bytebuf_params\": {\"resp_size\": 65536, \"req_size\": 65536}}, \"server_type\": \"ASYNC_GENERIC_SERVER\"}, \"client_config\": {\"client_type\": \"ASYNC_CLIENT\", \"security_params\": {\"use_test_ca\": true, \"server_host_override\": \"foo.test.google.fr\"}, \"payload_config\": {\"bytebuf_params\": {\"resp_size\": 65536, \"req_size\": 65536}}, \"client_channels\": 1, \"async_client_threads\": 0, \"outstanding_rpcs_per_channel\": 100, \"rpc_type\": \"STREAMING\", \"load_params\": {\"closed_loop\": {}}, \"histogram_params\": {\"max_possible\": 60000000000.0, \"resolution\": 0.01}}, \"num_clients\": 1}'"
],
"boringssl": true,
"ci_platforms": [
"linux",
"mac",
"posix",
"windows"
],
"cpu_cost": 1000.0,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
"language": "c++",
"name": "json_run_localhost",
"platforms": [
"linux",
"mac",
"posix",
"windows"
],
"shortname": "json_run_localhost:cpp_generic_async_streaming_single_channel_throughput_secure"
},
{
"args": [
"--scenario_json",
"'{\"name\": \"cpp_generic_async_streaming_multi_channel_throughput_secure\", \"warmup_seconds\": 5, \"benchmark_seconds\": 30, \"num_servers\": 1, \"server_config\": {\"async_server_threads\": 0, \"core_limit\": 0, \"security_params\": {\"use_test_ca\": true, \"server_host_override\": \"foo.test.google.fr\"}, \"payload_config\": {\"bytebuf_params\": {\"resp_size\": 65536, \"req_size\": 65536}}, \"server_type\": \"ASYNC_GENERIC_SERVER\"}, \"client_config\": {\"client_type\": \"ASYNC_CLIENT\", \"security_params\": {\"use_test_ca\": true, \"server_host_override\": \"foo.test.google.fr\"}, \"payload_config\": {\"bytebuf_params\": {\"resp_size\": 65536, \"req_size\": 65536}}, \"client_channels\": 64, \"async_client_threads\": 0, \"outstanding_rpcs_per_channel\": 100, \"rpc_type\": \"STREAMING\", \"load_params\": {\"closed_loop\": {}}, \"histogram_params\": {\"max_possible\": 60000000000.0, \"resolution\": 0.01}}, \"num_clients\": 0}'"
],
"boringssl": true,
"ci_platforms": [
"linux",
"mac",
"posix",
"windows"
],
"cpu_cost": 1000.0,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
"language": "c++",
"name": "json_run_localhost",
"platforms": [
"linux",
"mac",
"posix",
"windows"
],
"shortname": "json_run_localhost:cpp_generic_async_streaming_multi_channel_throughput_secure"
},
{
"args": [
"--scenario_json",
@ -23291,7 +23239,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 2,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23317,7 +23265,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 2,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23343,7 +23291,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 2,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23369,7 +23317,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 2,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23395,7 +23343,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 8,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23421,7 +23369,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 8,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23447,7 +23395,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 8,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23473,7 +23421,7 @@
"posix",
"windows"
],
"cpu_cost": 1000.0,
"cpu_cost": 1,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
@ -23487,58 +23435,6 @@
],
"shortname": "json_run_localhost:cpp_generic_async_streaming_qps_one_server_core_insecure"
},
{
"args": [
"--scenario_json",
"'{\"name\": \"cpp_generic_async_streaming_single_channel_throughput_insecure\", \"warmup_seconds\": 5, \"benchmark_seconds\": 30, \"num_servers\": 1, \"server_config\": {\"async_server_threads\": 0, \"core_limit\": 0, \"security_params\": null, \"payload_config\": {\"bytebuf_params\": {\"resp_size\": 65536, \"req_size\": 65536}}, \"server_type\": \"ASYNC_GENERIC_SERVER\"}, \"client_config\": {\"client_type\": \"ASYNC_CLIENT\", \"security_params\": null, \"payload_config\": {\"bytebuf_params\": {\"resp_size\": 65536, \"req_size\": 65536}}, \"client_channels\": 1, \"async_client_threads\": 0, \"outstanding_rpcs_per_channel\": 100, \"rpc_type\": \"STREAMING\", \"load_params\": {\"closed_loop\": {}}, \"histogram_params\": {\"max_possible\": 60000000000.0, \"resolution\": 0.01}}, \"num_clients\": 1}'"
],
"boringssl": true,
"ci_platforms": [
"linux",
"mac",
"posix",
"windows"
],
"cpu_cost": 1000.0,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
"language": "c++",
"name": "json_run_localhost",
"platforms": [
"linux",
"mac",
"posix",
"windows"
],
"shortname": "json_run_localhost:cpp_generic_async_streaming_single_channel_throughput_insecure"
},
{
"args": [
"--scenario_json",
"'{\"name\": \"cpp_generic_async_streaming_multi_channel_throughput_insecure\", \"warmup_seconds\": 5, \"benchmark_seconds\": 30, \"num_servers\": 1, \"server_config\": {\"async_server_threads\": 0, \"core_limit\": 0, \"security_params\": null, \"payload_config\": {\"bytebuf_params\": {\"resp_size\": 65536, \"req_size\": 65536}}, \"server_type\": \"ASYNC_GENERIC_SERVER\"}, \"client_config\": {\"client_type\": \"ASYNC_CLIENT\", \"security_params\": null, \"payload_config\": {\"bytebuf_params\": {\"resp_size\": 65536, \"req_size\": 65536}}, \"client_channels\": 64, \"async_client_threads\": 0, \"outstanding_rpcs_per_channel\": 100, \"rpc_type\": \"STREAMING\", \"load_params\": {\"closed_loop\": {}}, \"histogram_params\": {\"max_possible\": 60000000000.0, \"resolution\": 0.01}}, \"num_clients\": 0}'"
],
"boringssl": true,
"ci_platforms": [
"linux",
"mac",
"posix",
"windows"
],
"cpu_cost": 1000.0,
"defaults": "boringssl",
"exclude_configs": [],
"flaky": false,
"language": "c++",
"name": "json_run_localhost",
"platforms": [
"linux",
"mac",
"posix",
"windows"
],
"shortname": "json_run_localhost:cpp_generic_async_streaming_multi_channel_throughput_insecure"
},
{
"args": [
"test/core/end2end/fuzzers/api_fuzzer_corpus/00.bin"

Loading…
Cancel
Save