Merge pull request #6054 from ctiller/perflang

Only build specified languages when running tests for those languages
pull/6066/head
Jan Tattermusch 9 years ago
commit 4fe4b02a79
  1. 23
      tools/run_tests/performance/build_performance.sh
  2. 2
      tools/run_tests/performance/remote_host_build.sh
  3. 8
      tools/run_tests/run_performance_tests.py

@ -36,14 +36,17 @@ cd $(dirname $0)/../../..
CONFIG=${CONFIG:-opt}
# build C++ qps worker & driver
# TODO(jtattermusch): not embedding OpenSSL breaks the C# build because
# grpc_csharp_ext needs OpenSSL embedded and some intermediate files from
# this build will be reused.
make CONFIG=${CONFIG} EMBED_OPENSSL=true EMBED_ZLIB=true qps_worker qps_driver -j8
for language in $@
do
if [ "$language" == "c++" ]
then
# build C++ qps worker & driver
# TODO(jtattermusch): not embedding OpenSSL breaks the C# build because
# grpc_csharp_ext needs OpenSSL embedded and some intermediate files from
# this build will be reused.
make CONFIG=${CONFIG} EMBED_OPENSSL=true EMBED_ZLIB=true qps_worker qps_driver -j8
else
tools/run_tests/run_tests.py -l $language -c $CONFIG --build_only -j 8
fi
done
# build C# qps worker
tools/run_tests/run_tests.py -l csharp -c $CONFIG --build_only -j 8
# build Node qps worker
tools/run_tests/run_tests.py -l node -c $CONFIG --build_only -j 8

@ -33,4 +33,4 @@ set -ex
cd $(dirname $0)/../../..
# execute the build script remotely
ssh "${USER_AT_HOST}" "CONFIG=${CONFIG} ~/performance_workspace/grpc/tools/run_tests/performance/build_performance.sh"
ssh "${USER_AT_HOST}" "CONFIG=${CONFIG} ~/performance_workspace/grpc/tools/run_tests/performance/build_performance.sh $*"

@ -272,7 +272,7 @@ def prepare_remote_hosts(hosts):
sys.exit(1)
def build_on_remote_hosts(hosts, build_local=False):
def build_on_remote_hosts(hosts, languages=_LANGUAGES.keys(), build_local=False):
"""Builds performance worker on remote hosts (and maybe also locally)."""
build_timeout = 15*60
build_jobs = []
@ -280,7 +280,7 @@ def build_on_remote_hosts(hosts, build_local=False):
user_at_host = '%s@%s' % (_REMOTE_HOST_USERNAME, host)
build_jobs.append(
jobset.JobSpec(
cmdline=['tools/run_tests/performance/remote_host_build.sh'],
cmdline=['tools/run_tests/performance/remote_host_build.sh'] + languages,
shortname='remote_host_build.%s' % host,
environ = {'USER_AT_HOST': user_at_host, 'CONFIG': 'opt'},
timeout_seconds=build_timeout))
@ -288,7 +288,7 @@ def build_on_remote_hosts(hosts, build_local=False):
# Build locally as well
build_jobs.append(
jobset.JobSpec(
cmdline=['tools/run_tests/performance/build_performance.sh'],
cmdline=['tools/run_tests/performance/build_performance.sh'] + languages,
shortname='local_build',
environ = {'CONFIG': 'opt'},
timeout_seconds=build_timeout))
@ -400,7 +400,7 @@ if remote_hosts:
build_local = False
if not args.remote_driver_host:
build_local = True
build_on_remote_hosts(remote_hosts, build_local=build_local)
build_on_remote_hosts(remote_hosts, languages=[str(l) for l in languages], build_local=build_local)
qpsworker_jobs = start_qpsworkers(languages, args.remote_worker_host)

Loading…
Cancel
Save