infra: Add perf configs.

Adds Win/Linux/Android configs.

Bug: angleproject:6090
Change-Id: Ie80a12a16997aab08e9dbba0cc0a9b14414fc8f2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2988793
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
This commit is contained in:
Jamie Madill
2021-06-23 09:06:59 -04:00
parent da17d56184
commit 8b4f6e6db0
4 changed files with 174 additions and 64 deletions

View File

@@ -82,6 +82,23 @@ buckets {
value: 100
}
}
builders {
name: "android-perf"
swarming_host: "chromium-swarm.appspot.com"
dimensions: "os:Ubuntu"
exe {
cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
cipd_version: "refs/heads/master"
cmd: "recipes"
}
properties: "{\"$build/goma\":{\"rpc_extra_params\":\"?prod\",\"server_host\":\"goma.chromium.org\"},\"$recipe_engine/isolated\":{\"server\":\"https://isolateserver.appspot.com\"},\"builder_group\":\"angle\",\"platform\":\"android\",\"recipe\":\"angle\",\"test_mode\":\"compile_and_test\",\"toolchain\":\"clang\"}"
build_numbers: YES
service_account: "angle-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
experiments {
key: "luci.use_realms"
value: 100
}
}
builders {
name: "linux-clang-dbg"
swarming_host: "chromium-swarm.appspot.com"
@@ -154,6 +171,24 @@ buckets {
value: 100
}
}
builders {
name: "linux-perf"
swarming_host: "chromium-swarm.appspot.com"
dimensions: "builderless:1"
dimensions: "os:Ubuntu"
exe {
cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
cipd_version: "refs/heads/master"
cmd: "recipes"
}
properties: "{\"$build/goma\":{\"enable_ats\":true,\"rpc_extra_params\":\"?prod\",\"server_host\":\"goma.chromium.org\"},\"$recipe_engine/isolated\":{\"server\":\"https://isolateserver.appspot.com\"},\"builder_group\":\"angle\",\"platform\":\"linux\",\"recipe\":\"angle\",\"test_mode\":\"compile_and_test\",\"toolchain\":\"clang\"}"
build_numbers: YES
service_account: "angle-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
experiments {
key: "luci.use_realms"
value: 100
}
}
builders {
name: "linux-trace-rel"
swarming_host: "chromium-swarm.appspot.com"
@@ -350,6 +385,24 @@ buckets {
value: 100
}
}
builders {
name: "win-perf"
swarming_host: "chromium-swarm.appspot.com"
dimensions: "builderless:1"
dimensions: "os:Windows"
exe {
cipd_package: "infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build"
cipd_version: "refs/heads/master"
cmd: "recipes"
}
properties: "{\"$build/goma\":{\"enable_ats\":true,\"rpc_extra_params\":\"?prod\",\"server_host\":\"goma.chromium.org\"},\"$recipe_engine/isolated\":{\"server\":\"https://isolateserver.appspot.com\"},\"builder_group\":\"angle\",\"platform\":\"win\",\"recipe\":\"angle\",\"test_mode\":\"compile_and_test\",\"toolchain\":\"clang\"}"
build_numbers: YES
service_account: "angle-ci-builder@chops-service-accounts.iam.gserviceaccount.com"
experiments {
key: "luci.use_realms"
value: 100
}
}
builders {
name: "win-trace-rel"
swarming_host: "chromium-swarm.appspot.com"

View File

@@ -50,11 +50,6 @@ consoles {
category: "angle|linux|gcc|x64"
short_name: "rel"
}
builders {
name: "buildbucket/luci.angle.ci/linux-trace-rel"
category: "trace|linux|clang|x64"
short_name: "rel"
}
builders {
name: "buildbucket/luci.angle.ci/mac-dbg"
category: "angle|mac|clang|x64"
@@ -105,11 +100,6 @@ consoles {
category: "angle|win|msvc|x64"
short_name: "rel"
}
builders {
name: "buildbucket/luci.angle.ci/win-trace-rel"
category: "trace|win|clang|x64"
short_name: "rel"
}
builders {
name: "buildbucket/luci.angle.ci/winuwp-x64-dbg"
category: "angle|winuwp|msvc|x64"
@@ -120,6 +110,31 @@ consoles {
category: "angle|winuwp|msvc|x64"
short_name: "rel"
}
builders {
name: "buildbucket/luci.angle.ci/linux-trace-rel"
category: "trace|linux|clang|x64"
short_name: "rel"
}
builders {
name: "buildbucket/luci.angle.ci/win-trace-rel"
category: "trace|win|clang|x64"
short_name: "rel"
}
builders {
name: "buildbucket/luci.angle.ci/android-perf"
category: "perf|android|clang|arm64"
short_name: "rel"
}
builders {
name: "buildbucket/luci.angle.ci/linux-perf"
category: "perf|linux|clang|x64"
short_name: "rel"
}
builders {
name: "buildbucket/luci.angle.ci/win-perf"
category: "perf|win|clang|x64"
short_name: "rel"
}
}
consoles {
id: "try"
@@ -148,9 +163,6 @@ consoles {
builders {
name: "buildbucket/luci.angle.try/linux-gcc-rel"
}
builders {
name: "buildbucket/luci.angle.try/linux-trace-rel"
}
builders {
name: "buildbucket/luci.angle.try/mac-dbg"
}
@@ -181,15 +193,18 @@ consoles {
builders {
name: "buildbucket/luci.angle.try/win-msvc-x64-rel"
}
builders {
name: "buildbucket/luci.angle.try/win-trace-rel"
}
builders {
name: "buildbucket/luci.angle.try/winuwp-x64-dbg"
}
builders {
name: "buildbucket/luci.angle.try/winuwp-x64-rel"
}
builders {
name: "buildbucket/luci.angle.try/linux-trace-rel"
}
builders {
name: "buildbucket/luci.angle.try/win-trace-rel"
}
builders {
name: "buildbucket/luci.angle.try/presubmit"
}

View File

@@ -44,6 +44,16 @@ job {
builder: "android-arm64-rel"
}
}
job {
id: "android-perf"
realm: "ci"
acl_sets: "ci"
buildbucket {
server: "cr-buildbucket.appspot.com"
bucket: "luci.angle.ci"
builder: "android-perf"
}
}
job {
id: "linux-clang-dbg"
realm: "ci"
@@ -84,6 +94,16 @@ job {
builder: "linux-gcc-rel"
}
}
job {
id: "linux-perf"
realm: "ci"
acl_sets: "ci"
buildbucket {
server: "cr-buildbucket.appspot.com"
bucket: "luci.angle.ci"
builder: "linux-perf"
}
}
job {
id: "linux-trace-rel"
realm: "ci"
@@ -194,6 +214,16 @@ job {
builder: "win-msvc-x86-rel"
}
}
job {
id: "win-perf"
realm: "ci"
acl_sets: "ci"
buildbucket {
server: "cr-buildbucket.appspot.com"
bucket: "luci.angle.ci"
builder: "win-perf"
}
}
job {
id: "win-trace-rel"
realm: "ci"
@@ -233,10 +263,12 @@ trigger {
triggers: "android-arm-rel"
triggers: "android-arm64-dbg"
triggers: "android-arm64-rel"
triggers: "android-perf"
triggers: "linux-clang-dbg"
triggers: "linux-clang-rel"
triggers: "linux-gcc-dbg"
triggers: "linux-gcc-rel"
triggers: "linux-perf"
triggers: "linux-trace-rel"
triggers: "mac-dbg"
triggers: "mac-rel"
@@ -248,6 +280,7 @@ trigger {
triggers: "win-msvc-x64-rel"
triggers: "win-msvc-x86-dbg"
triggers: "win-msvc-x86-rel"
triggers: "win-perf"
triggers: "win-trace-rel"
triggers: "winuwp-x64-dbg"
triggers: "winuwp-x64-rel"

View File

@@ -188,7 +188,7 @@ def get_os_from_name(name):
return os.MAC
# Adds both the CI and Try standalone builders.
def angle_standalone_builder(name, debug, cpu, toolchain = "clang", uwp = False, trace_tests = False):
def angle_builder(name, debug, cpu, toolchain = "clang", uwp = False, test_mode = "compile_and_test"):
properties = {
"builder_group": "angle",
}
@@ -210,14 +210,12 @@ def angle_standalone_builder(name, debug, cpu, toolchain = "clang", uwp = False,
properties["platform"] = config_os.console_name
properties["toolchain"] = toolchain
if trace_tests:
properties["test_mode"] = "trace_tests"
elif toolchain == "gcc":
if toolchain == "gcc":
properties["test_mode"] = "checkout_only"
elif debug or toolchain == "msvc" or (config_os.category == os_category.ANDROID and cpu == "arm"):
properties["test_mode"] = "compile_only"
else:
properties["test_mode"] = "compile_and_test"
properties["test_mode"] = test_mode
luci.builder(
name = name,
@@ -230,23 +228,17 @@ def angle_standalone_builder(name, debug, cpu, toolchain = "clang", uwp = False,
build_numbers = True,
)
luci.builder(
name = name,
bucket = "try",
executable = "recipe:angle",
service_account = "angle-try-builder@chops-service-accounts.iam.gserviceaccount.com",
properties = properties,
dimensions = dimensions,
build_numbers = True,
)
is_perf = "-perf" in name
# Trace tests are only included automatically if files in the capture folder change.
if trace_tests:
if test_mode == "trace_tests":
config = "trace"
location_regexp = [
".+/[+]/src/libANGLE/capture/.+",
".+/[+]/src/tests/capture.+",
]
elif is_perf:
config = "perf"
else:
config = "angle"
location_regexp = None
@@ -265,19 +257,31 @@ def angle_standalone_builder(name, debug, cpu, toolchain = "clang", uwp = False,
short_name = short_name,
)
luci.list_view_entry(
list_view = "try",
builder = "try/" + name,
)
# Include all bots in the CQ by default except GCC and Android configs.
if toolchain != "gcc":
luci.cq_tryjob_verifier(
cq_group = "master",
builder = "angle:try/" + name,
location_regexp = location_regexp,
# Do not include perf tests in "try".
if not is_perf:
luci.list_view_entry(
list_view = "try",
builder = "try/" + name,
)
luci.builder(
name = name,
bucket = "try",
executable = "recipe:angle",
service_account = "angle-try-builder@chops-service-accounts.iam.gserviceaccount.com",
properties = properties,
dimensions = dimensions,
build_numbers = True,
)
# Include all other bots in the CQ by default except the placeholder GCC configs.
if toolchain != "gcc":
luci.cq_tryjob_verifier(
cq_group = "master",
builder = "angle:try/" + name,
location_regexp = location_regexp,
)
luci.bucket(
name = "ci",
acls = [
@@ -329,28 +333,33 @@ luci.gitiles_poller(
)
# name, clang, debug, cpu, uwp, trace_tests
angle_standalone_builder("android-arm-dbg", debug = True, cpu = "arm")
angle_standalone_builder("android-arm-rel", debug = False, cpu = "arm")
angle_standalone_builder("android-arm64-dbg", debug = True, cpu = "arm64")
angle_standalone_builder("android-arm64-rel", debug = False, cpu = "arm64")
angle_standalone_builder("linux-clang-dbg", debug = True, cpu = "x64")
angle_standalone_builder("linux-clang-rel", debug = False, cpu = "x64")
angle_standalone_builder("linux-gcc-dbg", debug = True, cpu = "x64", toolchain = "gcc")
angle_standalone_builder("linux-gcc-rel", debug = False, cpu = "x64", toolchain = "gcc")
angle_standalone_builder("linux-trace-rel", debug = False, cpu = "x64", trace_tests = True)
angle_standalone_builder("mac-dbg", debug = True, cpu = "x64")
angle_standalone_builder("mac-rel", debug = False, cpu = "x64")
angle_standalone_builder("win-clang-x86-dbg", debug = True, cpu = "x86")
angle_standalone_builder("win-clang-x86-rel", debug = False, cpu = "x86")
angle_standalone_builder("win-clang-x64-dbg", debug = True, cpu = "x64")
angle_standalone_builder("win-clang-x64-rel", debug = False, cpu = "x64")
angle_standalone_builder("win-msvc-x86-dbg", debug = True, cpu = "x86", toolchain = "msvc")
angle_standalone_builder("win-msvc-x86-rel", debug = False, cpu = "x86", toolchain = "msvc")
angle_standalone_builder("win-msvc-x64-dbg", debug = True, cpu = "x64", toolchain = "msvc")
angle_standalone_builder("win-msvc-x64-rel", debug = False, cpu = "x64", toolchain = "msvc")
angle_standalone_builder("win-trace-rel", debug = False, cpu = "x64", trace_tests = True)
angle_standalone_builder("winuwp-x64-dbg", debug = True, cpu = "x64", toolchain = "msvc", uwp = True)
angle_standalone_builder("winuwp-x64-rel", debug = False, cpu = "x64", toolchain = "msvc", uwp = True)
angle_builder("android-arm-dbg", debug = True, cpu = "arm")
angle_builder("android-arm-rel", debug = False, cpu = "arm")
angle_builder("android-arm64-dbg", debug = True, cpu = "arm64")
angle_builder("android-arm64-rel", debug = False, cpu = "arm64")
angle_builder("linux-clang-dbg", debug = True, cpu = "x64")
angle_builder("linux-clang-rel", debug = False, cpu = "x64")
angle_builder("linux-gcc-dbg", debug = True, cpu = "x64", toolchain = "gcc")
angle_builder("linux-gcc-rel", debug = False, cpu = "x64", toolchain = "gcc")
angle_builder("mac-dbg", debug = True, cpu = "x64")
angle_builder("mac-rel", debug = False, cpu = "x64")
angle_builder("win-clang-x86-dbg", debug = True, cpu = "x86")
angle_builder("win-clang-x86-rel", debug = False, cpu = "x86")
angle_builder("win-clang-x64-dbg", debug = True, cpu = "x64")
angle_builder("win-clang-x64-rel", debug = False, cpu = "x64")
angle_builder("win-msvc-x86-dbg", debug = True, cpu = "x86", toolchain = "msvc")
angle_builder("win-msvc-x86-rel", debug = False, cpu = "x86", toolchain = "msvc")
angle_builder("win-msvc-x64-dbg", debug = True, cpu = "x64", toolchain = "msvc")
angle_builder("win-msvc-x64-rel", debug = False, cpu = "x64", toolchain = "msvc")
angle_builder("winuwp-x64-dbg", debug = True, cpu = "x64", toolchain = "msvc", uwp = True)
angle_builder("winuwp-x64-rel", debug = False, cpu = "x64", toolchain = "msvc", uwp = True)
angle_builder("linux-trace-rel", debug = False, cpu = "x64", test_mode = "trace_tests")
angle_builder("win-trace-rel", debug = False, cpu = "x64", test_mode = "trace_tests")
angle_builder("android-perf", debug = False, cpu = "arm64")
angle_builder("linux-perf", debug = False, cpu = "x64")
angle_builder("win-perf", debug = False, cpu = "x64")
# Views