diff options
author | Chris Jones <christopher.jones@linaro.org> | 2022-02-10 12:30:53 +0000 |
---|---|---|
committer | Chris Jones <christopher.jones@linaro.org> | 2022-03-24 19:27:45 +0000 |
commit | 970ecbb3b949a2706e156abf716b61e9ec5daf56 (patch) | |
tree | 9b53566e19a6640992698710183907ef6da5e681 | |
parent | 2395ce41310b96e0bc58071e5c6bcefcbe08b20a (diff) | |
download | art-build-scripts-970ecbb3b949a2706e156abf716b61e9ec5daf56.tar.gz |
Add oriole benchmark config file
Add a new config file for the oriole (Pixel 6) device. As this device
uses the Arm DynamIQ CPU structure it has 3 different CPU clusters
each with a different type of core. As the current benchmarking
framework does not support more than two types of cluster a new
2d associative array has been introduced to accurately describe the
Pixel 6's CPU structure.
Test: ./scripts/benchmarks/benchmarks_run_target.sh --target-device \
oriole --cpu middle --iterations 2 algorithm/DeltaBlue
Change-Id: I91d7a271338968e0e375fcd4c496a5b1b7c771d3
-rw-r--r-- | devices/config/oriole.sh | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/devices/config/oriole.sh b/devices/config/oriole.sh new file mode 100644 index 00000000..32a3bfc5 --- /dev/null +++ b/devices/config/oriole.sh @@ -0,0 +1,47 @@ +#!/bin/bash +# shellcheck disable=SC2034 +# +# Copyright (c) 2022, Linaro Ltd. +# All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Helper script used for setting the Pixel 6 frequency. + +readonly DEVICE_NAME="Pixel 6" + +readonly NUMBER_OF_CPUS=8 + +# Define CPU names. +readonly BIG_CPUS_NAME="x1" +readonly MIDDLE_CPUS_NAME="a76" +readonly LITTLE_CPUS_NAME="a55" + +# Define CPU frequencies. +readonly BIG_CPUS_FREQ=1277000 +readonly MIDDLE_CPUS_FREQ=1197000 +readonly LITTLE_CPUS_FREQ=1197000 + +# Define CPU ID's and embed the name and frequency. +readonly BIG_CPUS=(${BIG_CPUS_NAME} ${BIG_CPUS_FREQ} 6 7) +readonly MIDDLE_CPUS=(${MIDDLE_CPUS_NAME} ${MIDDLE_CPUS_FREQ} 4 5) +readonly LITTLE_CPUS=(${LITTLE_CPUS_NAME} ${LITTLE_CPUS_FREQ} 0 1 2 3) + +# Bash does not support 2d arrays so instead store the name of the array and +# later dereference by using "!" e.g: "arr=(${!CPUS[big]})". +declare -A -g CPUS +CPUS[big]="BIG_CPUS[@]" +CPUS[middle]="MIDDLE_CPUS[@]" +CPUS[little]="LITTLE_CPUS[@]" + +readonly DEFAULT_GOVERNOR=sched_pixel |