Reserve opt for external builds, use lto for profiling

pull/9932/head
Craig Tiller 8 years ago
parent 1747ed5255
commit f9abb2921b
  1. 118
      Makefile
  2. 7
      build.yaml
  3. 51
      tools/run_tests/generated/configs.json
  4. 34
      tools/run_tests/generated/tests.json
  5. 2
      tools/run_tests/run_microbenchmark.py
  6. 4
      tools/run_tests/run_performance_tests.py

@ -92,10 +92,45 @@ CC_opt = $(DEFAULT_CC)
CXX_opt = $(DEFAULT_CXX)
LD_opt = $(DEFAULT_CC)
LDXX_opt = $(DEFAULT_CXX)
CPPFLAGS_opt = -O3 -flto
LDFLAGS_opt = -O3 -flto
CPPFLAGS_opt = -O2
DEFINES_opt = NDEBUG
VALID_CONFIG_asan-trace-cmp = 1
REQUIRE_CUSTOM_LIBRARIES_asan-trace-cmp = 1
CC_asan-trace-cmp = clang
CXX_asan-trace-cmp = clang++
LD_asan-trace-cmp = clang
LDXX_asan-trace-cmp = clang++
CPPFLAGS_asan-trace-cmp = -O0 -fsanitize-coverage=edge -fsanitize-coverage=trace-cmp -fsanitize=address -fno-omit-frame-pointer -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
LDFLAGS_asan-trace-cmp = -fsanitize=address
VALID_CONFIG_dbg = 1
CC_dbg = $(DEFAULT_CC)
CXX_dbg = $(DEFAULT_CXX)
LD_dbg = $(DEFAULT_CC)
LDXX_dbg = $(DEFAULT_CXX)
CPPFLAGS_dbg = -O0
DEFINES_dbg = _DEBUG DEBUG
VALID_CONFIG_asan = 1
REQUIRE_CUSTOM_LIBRARIES_asan = 1
CC_asan = clang
CXX_asan = clang++
LD_asan = clang
LDXX_asan = clang++
CPPFLAGS_asan = -O0 -fsanitize-coverage=edge -fsanitize=address -fno-omit-frame-pointer -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
LDFLAGS_asan = -fsanitize=address
VALID_CONFIG_msan = 1
REQUIRE_CUSTOM_LIBRARIES_msan = 1
CC_msan = clang
CXX_msan = clang++
LD_msan = clang
LDXX_msan = clang++
CPPFLAGS_msan = -O0 -fsanitize-coverage=edge -fsanitize=memory -fsanitize-memory-track-origins -fno-omit-frame-pointer -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1 -Wno-unused-command-line-argument -fPIE -pie -DGPR_NO_DIRECT_SYSCALLS
LDFLAGS_msan = -fsanitize=memory -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1 -fPIE -pie $(if $(JENKINS_BUILD),-Wl$(comma)-Ttext-segment=0x7e0000000000,)
DEFINES_msan = NDEBUG
VALID_CONFIG_basicprof = 1
CC_basicprof = $(DEFAULT_CC)
CXX_basicprof = $(DEFAULT_CXX)
@ -122,22 +157,25 @@ LDXX_asan-noleaks = clang++
CPPFLAGS_asan-noleaks = -O0 -fsanitize-coverage=edge -fsanitize=address -fno-omit-frame-pointer -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
LDFLAGS_asan-noleaks = -fsanitize=address
VALID_CONFIG_asan-trace-cmp = 1
REQUIRE_CUSTOM_LIBRARIES_asan-trace-cmp = 1
CC_asan-trace-cmp = clang
CXX_asan-trace-cmp = clang++
LD_asan-trace-cmp = clang
LDXX_asan-trace-cmp = clang++
CPPFLAGS_asan-trace-cmp = -O0 -fsanitize-coverage=edge -fsanitize-coverage=trace-cmp -fsanitize=address -fno-omit-frame-pointer -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
LDFLAGS_asan-trace-cmp = -fsanitize=address
VALID_CONFIG_ubsan = 1
REQUIRE_CUSTOM_LIBRARIES_ubsan = 1
CC_ubsan = clang
CXX_ubsan = clang++
LD_ubsan = clang
LDXX_ubsan = clang++
CPPFLAGS_ubsan = -O0 -fsanitize-coverage=edge -fsanitize=undefined,unsigned-integer-overflow -fno-omit-frame-pointer -Wno-unused-command-line-argument -Wvarargs
LDFLAGS_ubsan = -fsanitize=undefined,unsigned-integer-overflow
DEFINES_ubsan = NDEBUG
VALID_CONFIG_dbg = 1
CC_dbg = $(DEFAULT_CC)
CXX_dbg = $(DEFAULT_CXX)
LD_dbg = $(DEFAULT_CC)
LDXX_dbg = $(DEFAULT_CXX)
CPPFLAGS_dbg = -O0
DEFINES_dbg = _DEBUG DEBUG
VALID_CONFIG_tsan = 1
REQUIRE_CUSTOM_LIBRARIES_tsan = 1
CC_tsan = clang
CXX_tsan = clang++
LD_tsan = clang
LDXX_tsan = clang++
CPPFLAGS_tsan = -O0 -fsanitize=thread -fno-omit-frame-pointer -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
LDFLAGS_tsan = -fsanitize=thread
DEFINES_tsan = GRPC_TSAN
VALID_CONFIG_stapprof = 1
CC_stapprof = $(DEFAULT_CC)
@ -165,44 +203,14 @@ CPPFLAGS_memcheck = -O0
LDFLAGS_memcheck = -rdynamic
DEFINES_memcheck = _DEBUG DEBUG
VALID_CONFIG_asan = 1
REQUIRE_CUSTOM_LIBRARIES_asan = 1
CC_asan = clang
CXX_asan = clang++
LD_asan = clang
LDXX_asan = clang++
CPPFLAGS_asan = -O0 -fsanitize-coverage=edge -fsanitize=address -fno-omit-frame-pointer -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
LDFLAGS_asan = -fsanitize=address
VALID_CONFIG_tsan = 1
REQUIRE_CUSTOM_LIBRARIES_tsan = 1
CC_tsan = clang
CXX_tsan = clang++
LD_tsan = clang
LDXX_tsan = clang++
CPPFLAGS_tsan = -O0 -fsanitize=thread -fno-omit-frame-pointer -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS
LDFLAGS_tsan = -fsanitize=thread
DEFINES_tsan = GRPC_TSAN
VALID_CONFIG_ubsan = 1
REQUIRE_CUSTOM_LIBRARIES_ubsan = 1
CC_ubsan = clang
CXX_ubsan = clang++
LD_ubsan = clang
LDXX_ubsan = clang++
CPPFLAGS_ubsan = -O0 -fsanitize-coverage=edge -fsanitize=undefined,unsigned-integer-overflow -fno-omit-frame-pointer -Wno-unused-command-line-argument -Wvarargs
LDFLAGS_ubsan = -fsanitize=undefined,unsigned-integer-overflow
DEFINES_ubsan = NDEBUG
VALID_CONFIG_msan = 1
REQUIRE_CUSTOM_LIBRARIES_msan = 1
CC_msan = clang
CXX_msan = clang++
LD_msan = clang
LDXX_msan = clang++
CPPFLAGS_msan = -O0 -fsanitize-coverage=edge -fsanitize=memory -fsanitize-memory-track-origins -fno-omit-frame-pointer -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1 -Wno-unused-command-line-argument -fPIE -pie -DGPR_NO_DIRECT_SYSCALLS
LDFLAGS_msan = -fsanitize=memory -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1 -fPIE -pie $(if $(JENKINS_BUILD),-Wl$(comma)-Ttext-segment=0x7e0000000000,)
DEFINES_msan = NDEBUG
VALID_CONFIG_lto = 1
CC_lto = $(DEFAULT_CC)
CXX_lto = $(DEFAULT_CXX)
LD_lto = $(DEFAULT_CC)
LDXX_lto = $(DEFAULT_CXX)
CPPFLAGS_lto = -O3 -flto
LDFLAGS_lto = -O3 -flto
DEFINES_lto = NDEBUG
VALID_CONFIG_mutrace = 1
CC_mutrace = $(DEFAULT_CC)

@ -4052,6 +4052,10 @@ configs:
DEFINES: _DEBUG DEBUG
LDFLAGS: -rdynamic
valgrind: --tool=helgrind
lto:
CPPFLAGS: -O3 -flto
DEFINES: NDEBUG
LDFLAGS: -O3 -flto
memcheck:
CPPFLAGS: -O0
DEFINES: _DEBUG DEBUG
@ -4074,9 +4078,8 @@ configs:
DEFINES: NDEBUG
LDFLAGS: -rdynamic -O3 -flto
opt:
CPPFLAGS: -O3 -flto
CPPFLAGS: -O2
DEFINES: NDEBUG
LDFLAGS: -O3 -flto
stapprof:
CPPFLAGS: -O2 -DGRPC_STAP_PROFILER
DEFINES: NDEBUG

@ -2,6 +2,26 @@
{
"config": "opt"
},
{
"config": "asan-trace-cmp",
"environ": {
"ASAN_OPTIONS": "detect_leaks=1:color=always",
"LSAN_OPTIONS": "suppressions=tools/lsan_suppressions.txt:report_objects=1"
}
},
{
"config": "dbg"
},
{
"config": "asan",
"environ": {
"ASAN_OPTIONS": "detect_leaks=1:color=always",
"LSAN_OPTIONS": "suppressions=tools/lsan_suppressions.txt:report_objects=1"
}
},
{
"config": "msan"
},
{
"config": "basicprof"
},
@ -19,14 +39,16 @@
}
},
{
"config": "asan-trace-cmp",
"config": "ubsan",
"environ": {
"ASAN_OPTIONS": "detect_leaks=1:color=always",
"LSAN_OPTIONS": "suppressions=tools/lsan_suppressions.txt:report_objects=1"
"UBSAN_OPTIONS": "halt_on_error=1:print_stacktrace=1"
}
},
{
"config": "dbg"
"config": "tsan",
"environ": {
"TSAN_OPTIONS": "suppressions=tools/tsan_suppressions.txt:halt_on_error=1:second_deadlock_stack=1"
}
},
{
"config": "stapprof"
@ -43,26 +65,7 @@
]
},
{
"config": "asan",
"environ": {
"ASAN_OPTIONS": "detect_leaks=1:color=always",
"LSAN_OPTIONS": "suppressions=tools/lsan_suppressions.txt:report_objects=1"
}
},
{
"config": "tsan",
"environ": {
"TSAN_OPTIONS": "suppressions=tools/tsan_suppressions.txt:halt_on_error=1:second_deadlock_stack=1"
}
},
{
"config": "ubsan",
"environ": {
"UBSAN_OPTIONS": "halt_on_error=1:print_stacktrace=1"
}
},
{
"config": "msan"
"config": "lto"
},
{
"config": "mutrace"

@ -40165,6 +40165,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40201,6 +40202,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40237,6 +40239,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40273,6 +40276,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40311,6 +40315,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40349,6 +40354,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40385,6 +40391,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40421,6 +40428,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40457,6 +40465,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40493,6 +40502,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40529,6 +40539,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40565,6 +40576,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40601,6 +40613,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40637,6 +40650,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40673,6 +40687,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40709,6 +40724,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40745,6 +40761,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40781,6 +40798,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40817,6 +40835,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40853,6 +40872,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40889,6 +40909,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40927,6 +40948,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -40965,6 +40987,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41001,6 +41024,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41037,6 +41061,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41073,6 +41098,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41109,6 +41135,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41145,6 +41172,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41181,6 +41209,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41217,6 +41246,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41253,6 +41283,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41289,6 +41320,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41325,6 +41357,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",
@ -41361,6 +41394,7 @@
"dbg",
"gcov",
"helgrind",
"lto",
"memcheck",
"msan",
"mutrace",

@ -183,7 +183,7 @@ def run_summary(cfg):
def collect_summary(bm_name, args):
heading('Summary: %s [no counters]' % bm_name)
text(run_summary('opt'))
text(run_summary('lto'))
heading('Summary: %s [with counters]' % bm_name)
text(run_summary('counters'))
if args.bigquery_upload:

@ -250,7 +250,7 @@ def build_on_remote_hosts(hosts, languages=scenario_config.LANGUAGES.keys(), bui
jobset.JobSpec(
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'},
environ = {'USER_AT_HOST': user_at_host, 'CONFIG': 'lto'},
timeout_seconds=build_timeout))
if build_local:
# Build locally as well
@ -258,7 +258,7 @@ def build_on_remote_hosts(hosts, languages=scenario_config.LANGUAGES.keys(), bui
jobset.JobSpec(
cmdline=['tools/run_tests/performance/build_performance.sh'] + languages,
shortname='local_build',
environ = {'CONFIG': 'opt'},
environ = {'CONFIG': 'lto'},
timeout_seconds=build_timeout))
jobset.message('START', 'Building.', do_newline=True)
num_failures, _ = jobset.run(

Loading…
Cancel
Save