From 1615e47681f276b2cafcaf02d17a44cf3d5a74a5 Mon Sep 17 00:00:00 2001 From: Szczepaniak-M Date: Wed, 6 Nov 2024 01:30:40 +0100 Subject: [PATCH] Add example benchmarks (cherry picked from commit 4b6680e1046f24bb6f67fa016f7b9263bde92978) --- README.md | 1 + example-benchmarks/README.md | 14 + example-benchmarks/cache_latency/ansible.yml | 28 + .../cache_latency/configuration.yml | 64 ++ .../cache_latency/format_output.py | 34 + example-benchmarks/cache_latency/latency.cpp | 44 ++ .../cache_latency/run_latency.sh | 67 ++ .../memory_bandwidth/ansible.yml | 28 + .../memory_bandwidth/configuration.yml | 101 +++ .../memory_bandwidth/format_output.py | 38 + example-benchmarks/memory_bandwidth/membw.cpp | 78 ++ .../memory_bandwidth/run_membw.sh | 15 + .../network_bandwidth/ansible.yml | 15 + .../network_bandwidth/configuration.yml | 64 ++ .../network_bandwidth/format_output.py | 62 ++ .../network_bandwidth/run_bandwidth.sh | 7 + .../network_latency/ansible.yml | 61 ++ .../network_latency/configuration.yml | 56 ++ .../network_latency/format_output.py | 48 ++ .../network_latency/run_latency_bench.sh | 4 + .../spec_cpu_all_cores/ansible.yml | 80 ++ .../spec_cpu_all_cores/config_graviton.cfg | 698 ++++++++++++++++++ .../spec_cpu_all_cores/config_x86.cfg | 653 ++++++++++++++++ .../spec_cpu_all_cores/configuration.yml | 300 ++++++++ .../spec_cpu_all_cores/format_output.py | 59 ++ .../spec_cpu_all_cores/run_spec.sh | 12 + .../spec_cpu_half_cores/ansible.yml | 80 ++ .../spec_cpu_half_cores/config_graviton.cfg | 698 ++++++++++++++++++ .../spec_cpu_half_cores/config_x86.cfg | 653 ++++++++++++++++ .../spec_cpu_half_cores/configuration.yml | 300 ++++++++ .../spec_cpu_half_cores/format_output.py | 59 ++ .../spec_cpu_half_cores/run_spec.sh | 12 + .../spec_cpu_single_core/ansible.yml | 80 ++ .../spec_cpu_single_core/config_graviton.cfg | 698 ++++++++++++++++++ .../spec_cpu_single_core/config_x86.cfg | 653 ++++++++++++++++ .../spec_cpu_single_core/configuration.yml | 302 ++++++++ .../spec_cpu_single_core/format_output.py | 59 ++ .../spec_cpu_single_core/run_spec.sh | 11 + example-benchmarks/ssd_bandwidth/ansible.yml | 15 + .../ssd_bandwidth/configuration.yml | 47 ++ .../ssd_bandwidth/format_output.py | 27 + example-benchmarks/ssd_bandwidth/run_fio.sh | 41 + 42 files changed, 6366 insertions(+) create mode 100644 example-benchmarks/README.md create mode 100644 example-benchmarks/cache_latency/ansible.yml create mode 100644 example-benchmarks/cache_latency/configuration.yml create mode 100644 example-benchmarks/cache_latency/format_output.py create mode 100755 example-benchmarks/cache_latency/latency.cpp create mode 100755 example-benchmarks/cache_latency/run_latency.sh create mode 100644 example-benchmarks/memory_bandwidth/ansible.yml create mode 100644 example-benchmarks/memory_bandwidth/configuration.yml create mode 100644 example-benchmarks/memory_bandwidth/format_output.py create mode 100755 example-benchmarks/memory_bandwidth/membw.cpp create mode 100755 example-benchmarks/memory_bandwidth/run_membw.sh create mode 100644 example-benchmarks/network_bandwidth/ansible.yml create mode 100644 example-benchmarks/network_bandwidth/configuration.yml create mode 100644 example-benchmarks/network_bandwidth/format_output.py create mode 100644 example-benchmarks/network_bandwidth/run_bandwidth.sh create mode 100644 example-benchmarks/network_latency/ansible.yml create mode 100644 example-benchmarks/network_latency/configuration.yml create mode 100644 example-benchmarks/network_latency/format_output.py create mode 100644 example-benchmarks/network_latency/run_latency_bench.sh create mode 100644 example-benchmarks/spec_cpu_all_cores/ansible.yml create mode 100644 example-benchmarks/spec_cpu_all_cores/config_graviton.cfg create mode 100644 example-benchmarks/spec_cpu_all_cores/config_x86.cfg create mode 100644 example-benchmarks/spec_cpu_all_cores/configuration.yml create mode 100644 example-benchmarks/spec_cpu_all_cores/format_output.py create mode 100644 example-benchmarks/spec_cpu_all_cores/run_spec.sh create mode 100644 example-benchmarks/spec_cpu_half_cores/ansible.yml create mode 100644 example-benchmarks/spec_cpu_half_cores/config_graviton.cfg create mode 100644 example-benchmarks/spec_cpu_half_cores/config_x86.cfg create mode 100644 example-benchmarks/spec_cpu_half_cores/configuration.yml create mode 100644 example-benchmarks/spec_cpu_half_cores/format_output.py create mode 100644 example-benchmarks/spec_cpu_half_cores/run_spec.sh create mode 100644 example-benchmarks/spec_cpu_single_core/ansible.yml create mode 100644 example-benchmarks/spec_cpu_single_core/config_graviton.cfg create mode 100644 example-benchmarks/spec_cpu_single_core/config_x86.cfg create mode 100644 example-benchmarks/spec_cpu_single_core/configuration.yml create mode 100644 example-benchmarks/spec_cpu_single_core/format_output.py create mode 100644 example-benchmarks/spec_cpu_single_core/run_spec.sh create mode 100644 example-benchmarks/ssd_bandwidth/ansible.yml create mode 100644 example-benchmarks/ssd_bandwidth/configuration.yml create mode 100644 example-benchmarks/ssd_bandwidth/format_output.py create mode 100644 example-benchmarks/ssd_bandwidth/run_fio.sh diff --git a/README.md b/README.md index 8eb6ff4..bf317fd 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,7 @@ The repository consists from 4 main parts: - `benchmark-service` - Spring Boot service responsible for excecuting benchmarks - `webpage-backend` - Spring Boot service responsible for exposing data about benchmark results - `webpage-frontend` - Angular application responsible for presenting results to the user +- `example-benchmarks` - example benchmarks with their configuration files that can be executed by the service after moving them to separate repository ## Architecture overview diff --git a/example-benchmarks/README.md b/example-benchmarks/README.md new file mode 100644 index 0000000..e62b57e --- /dev/null +++ b/example-benchmarks/README.md @@ -0,0 +1,14 @@ +# TUManyBenchmarks - Benchmark repository +## About +The repository store benchmarks executed by TUManyBenchmarks service. +Each directory contains separate benchmark, which can be reproduced locally. + +## How to add new benchmark? +1. Fork a repository +2. Add benchmark in a new directory +3. Add Ansible playbook to configure benchmark environment +4. Configure benchmark execution in the `configuration.yml` file +5. Create merge request +6. The GitHub action pipeline validates the `configuration.yml` file +7. The repository maintainer accepts new benchmark +8. Benchmark is automatically and regularly executed \ No newline at end of file diff --git a/example-benchmarks/cache_latency/ansible.yml b/example-benchmarks/cache_latency/ansible.yml new file mode 100644 index 0000000..3759432 --- /dev/null +++ b/example-benchmarks/cache_latency/ansible.yml @@ -0,0 +1,28 @@ +--- +- name: Install benchmark and dependencies + hosts: localhost + tasks: + - name: Update apt cache + become: yes + apt: + update_cache: yes + + - name: Install dependencies + become: yes + apt: + name: + - bc + - g++ + - numactl + state: present + + - name: Install dependencies + command: g++ latency.cpp -o latency -O3 -march=native + args: + chdir: /home/ubuntu/cache_latency + + + - name: Make run_latency.sh executable + file: + path: /home/ubuntu/cache_latency/run_latency.sh + mode: '0755' diff --git a/example-benchmarks/cache_latency/configuration.yml b/example-benchmarks/cache_latency/configuration.yml new file mode 100644 index 0000000..e505136 --- /dev/null +++ b/example-benchmarks/cache_latency/configuration.yml @@ -0,0 +1,64 @@ +configuration: + name: "Cache latency" + description: "Benchmark analyzing the basic properties of the CPU cache" + directory: cache_latency + cron: "0 * * * *" + instance-number: 1 + instance-types: + # Graviton + - c6g.medium + - c6g.2xlarge + - c6g.metal + + - c7g.metal + - c7g.2xlarge + - c7g.medium + + - c8g.medium + - c8g.2xlarge + - c8g.metal-24xl + + # Intel + - c5.metal + - c5.2xlarge + - c5.large + + - c6i.metal + - c6i.2xlarge + - c6i.large + + - c7i.metal-24xl + - c7i.2xlarge + - c7i.large + + # AMD + - m5a.24xlarge + - m5a.2xlarge + - m5a.large + + - c5a.24xlarge + - c5a.2xlarge + - c5a.large + + - c6a.metal + - c6a.2xlarge + - c6a.large + + - c7a.metal-48xl + - c7a.2xlarge + - c7a.large + +nodes: + - node-id: 0 + ansible-configuration: ansible.yml + benchmark-command: ./run_latency.sh + output-command: python3 format_output.py results.csv +plots: + - type: line + title: Cache latency for different input sizes + xaxis: Input size [10^x MB] + yaxis: Latency [ns] + series: + - x: input_size_log10 + y: latency + legend: Latency diff --git a/example-benchmarks/cache_latency/format_output.py b/example-benchmarks/cache_latency/format_output.py new file mode 100644 index 0000000..c729736 --- /dev/null +++ b/example-benchmarks/cache_latency/format_output.py @@ -0,0 +1,34 @@ +import json +import sys +import math +from collections import defaultdict + + +def parse_file_to_json(file_path): + with open(file_path, 'r') as file: + lines = file.readlines() + + results = defaultdict(list) + data = { + "input_size_log10": [], + "latency": [], + } + for i in range(0, len(lines)): + size, time = lines[i].split(",") + results[size].append(float(time)) + for key, values in results.items(): + size = math.log10(int(key) / 1024 / 1024) + time = sum(values) / len(values) + data["input_size_log10"].append(size) + data["latency"].append(time) + + json_output = json.dumps(data, indent=4) + print(json_output) + + +if __name__ == "__main__": + if len(sys.argv) != 2: + print("Usage: python format_output.py ") + else: + file_path = sys.argv[1] + parse_file_to_json(file_path) diff --git a/example-benchmarks/cache_latency/latency.cpp b/example-benchmarks/cache_latency/latency.cpp new file mode 100755 index 0000000..e46e5ad --- /dev/null +++ b/example-benchmarks/cache_latency/latency.cpp @@ -0,0 +1,44 @@ +#include +#include +#include +#include +#include +#include +#include + +using namespace std; + +static inline double gettime(void) { + struct timeval now_tv; + gettimeofday (&now_tv, NULL); + return ((double)now_tv.tv_sec) + ((double)now_tv.tv_usec)/1000000.0; +} + +int main(int argc, char** argv) { + uint64_t n = atol(argv[1]) / 8; + unsigned rep = atoi(argv[2]); + if (!n) + n = 16; + + uint64_t* v2 = new uint64_t[n]; + for (uint64_t i=0; i> results.csv +done diff --git a/example-benchmarks/memory_bandwidth/ansible.yml b/example-benchmarks/memory_bandwidth/ansible.yml new file mode 100644 index 0000000..c224c6a --- /dev/null +++ b/example-benchmarks/memory_bandwidth/ansible.yml @@ -0,0 +1,28 @@ +--- +- name: Install packages and compile programs + hosts: localhost + tasks: + - name: Update APT package list + become: yes + apt: + update_cache: yes + + - name: Install necessary packages + become: yes + apt: + name: + - g++ + - numactl + - libtbb-dev + - bc + state: present + + - name: Compile membw.cpp with optimizations + command: g++ membw.cpp -o membw -O3 -ltbb -march=native + args: + chdir: /home/ubuntu/memory_bandwidth + + - name: Make run_membw.sh executable + file: + path: /home/ubuntu/memory_bandwidth/run_membw.sh + mode: '0755' diff --git a/example-benchmarks/memory_bandwidth/configuration.yml b/example-benchmarks/memory_bandwidth/configuration.yml new file mode 100644 index 0000000..1f3dab2 --- /dev/null +++ b/example-benchmarks/memory_bandwidth/configuration.yml @@ -0,0 +1,101 @@ +--- +configuration: + name: "Memory Bandwidth" + description: "Benchmark testing Memory Bandwidth for different number of threads" + directory: memory_bandwidth + cron: "0 * * * *" + instance-number: 1 + instance-types: + # Graviton + - c6g.metal + - c6g.4xlarge + - c6g.2xlarge + - c6g.xlarge + - c6g.large + + - c7g.metal + - c7g.4xlarge + - c7g.2xlarge + - c7g.xlarge + - c7g.large + + - c8g.metal-24xl + - c8g.8xlarge + - c8g.4xlarge + - c8g.2xlarge + - c8g.xlarge + - c8g.large + + # Intel + - c4.8xlarge + - c4.2xlarge + - c4.xlarge + - c4.large + + - c5.metal + - c5.9xlarge + - c5.4xlarge + - c5.2xlarge + - c5.xlarge + - c5.large + + - c6i.metal + - c6i.8xlarge + - c6i.2xlarge + - c6i.xlarge + - c6i.large + + - c7i.metal-24xl + - c7i.8xlarge + - c7i.2xlarge + - c7i.xlarge + - c7i.large + + # AMD + - m5a.24xlarge + - m5a.2xlarge + - m5a.xlarge + - m5a.large + + - c5a.24xlarge + - c5a.16xlarge + - c5a.12xlarge + - c5a.8xlarge + - c5a.4xlarge + - c5a.2xlarge + - c5a.xlarge + - c5a.large + + - c6a.metal + - c6a.16xlarge + - c6a.12xlarge + - c6a.8xlarge + - c6a.4xlarge + - c6a.2xlarge + - c6a.xlarge + - c6a.large + + - c7a.metal-48xl + - c7a.16xlarge + - c7a.12xlarge + - c7a.8xlarge + - c7a.4xlarge + - c7a.2xlarge + - c7a.xlarge + - c7a.large + +nodes: + - node-id: 0 + ansible-configuration: ansible.yml + benchmark-command: ./run_membw.sh + output-command: python3 format_output.py results.csv + +plots: + - type: line + title: Bandwidth depending on number of threads + xaxis: Threads count + yaxis: Memory Bandwidth [GB/s] + series: + - x: thread_counts + y: memory_bandwidth + legend: Memory bandwidth diff --git a/example-benchmarks/memory_bandwidth/format_output.py b/example-benchmarks/memory_bandwidth/format_output.py new file mode 100644 index 0000000..ae8ad5a --- /dev/null +++ b/example-benchmarks/memory_bandwidth/format_output.py @@ -0,0 +1,38 @@ +import csv +import json +import sys +from collections import defaultdict + +def parse_file_to_json(csv_file): + bw_sum_count = defaultdict(lambda: {'sum': 0, 'count': 0}) + + with open(csv_file, 'r') as file: + reader = csv.DictReader(file) + for row in reader: + threads = int(row['threads']) + bw = float(row['bw']) + + bw_sum_count[threads]['sum'] += bw + bw_sum_count[threads]['count'] += 1 + + threads_list = [] + bw_list = [] + for threads, values in bw_sum_count.items(): + avg_bw = values['sum'] / values['count'] + threads_list.append(threads) + bw_list.append(avg_bw) + + + data = { + "thread_counts": threads_list, + "memory_bandwidth": bw_list, + } + json_output = json.dumps(data, indent=4) + print(json_output) + +if __name__ == "__main__": + if len(sys.argv) != 2: + print("Usage: python format_output.py ") + else: + file_path = sys.argv[1] + parse_file_to_json(file_path) diff --git a/example-benchmarks/memory_bandwidth/membw.cpp b/example-benchmarks/memory_bandwidth/membw.cpp new file mode 100755 index 0000000..9d9f5d4 --- /dev/null +++ b/example-benchmarks/memory_bandwidth/membw.cpp @@ -0,0 +1,78 @@ +///usr/bin/env -S g++ "$0" -ltbb -O3 -o /tmp/membw.out && exec /tmp/membw.out "$@" +#include // malloc, free +#include // memset, memcpy +#include // integer types +//#include // x86 SSE intrinsics +#include +#include +#include // gettime +#include // std::random_shuffle +#include +#include +#include +#include +#include + +#define HUGEPAGE_SIZE (2 * 1024 * 1024) // 2MB per huge page + +using namespace tbb; + +static double gettime(void) { + struct timeval now_tv; + gettimeofday (&now_tv,NULL); + return ((double)now_tv.tv_sec) + ((double)now_tv.tv_usec)/1000000.0; +} + + +int main(int argc,char** argv) { + if (argc < 3) { + printf("Usage: %s \n", argv[0]); + return 1; + } + uint64_t n=atof(argv[1]); + int num_threads = atoi(argv[2]); + int iterations = atoi(argv[3]); + + // Use Huge Pages + size_t size_in_bytes = n * sizeof(uint64_t); + if (size_in_bytes % HUGEPAGE_SIZE != 0) { + size_in_bytes = ((size_in_bytes / HUGEPAGE_SIZE) + 1) * HUGEPAGE_SIZE; + } + + uint64_t* keys = (uint64_t*) mmap(nullptr, size_in_bytes, + PROT_READ | PROT_WRITE, + MAP_PRIVATE | MAP_ANONYMOUS | MAP_HUGETLB, -1, 0); + + if (keys == MAP_FAILED) { + perror("mmap failed"); + return 1; + } + + oneapi::tbb::global_control global_limit(oneapi::tbb::global_control::max_allowed_parallelism, num_threads); + static affinity_partitioner ap; + + { + double start = gettime(); + // Step size 8 to hit cache line only once + tbb::parallel_for(tbb::blocked_range (0, n, 8), [&] (const tbb::blocked_range& range) { + for (uint64_t i=range.begin(); i!=range.end(); i++) { + keys[i] =i; + }}, ap); + } + + for (volatile int cnt=0; cnt < iterations; cnt++) { + std::atomic s(0); + double start = gettime(); + tbb::parallel_for(tbb::blocked_range (0, n), [&] (const tbb::blocked_range& range) { + uint64_t sum = 0; + for (uint64_t i=range.begin(); i!=range.end(); i+=1) { + sum += keys[i]; + } + s += sum; + }, ap); + printf("%i,%f,%ld\n",num_threads,(static_cast(sizeof(uint64_t)*n)/(1024ull*1024*1024))/(gettime()-start), s.load()); + } + + + return 0; +} diff --git a/example-benchmarks/memory_bandwidth/run_membw.sh b/example-benchmarks/memory_bandwidth/run_membw.sh new file mode 100755 index 0000000..385ddfb --- /dev/null +++ b/example-benchmarks/memory_bandwidth/run_membw.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash + +echo "threads,bw,sum" > results.csv +threads=(1 2 4 6 8 12 16 18 20 22 24 28 32 36 40 44 48) +# fill 70% of RAM available per NUMA node with uint64_t +size=$(free -b | grep Mem: | awk '{print $2}') +numa_nodes=$(lscpu | grep "NUMA node(s):" | awk '{print $3}') +input_size=$(echo "$size / $numa_nodes * 0.7 / 8" | bc) +huge_pages=$(echo "$input_size * 8 / 1024 / 1024 / 2 + 1" | bc) +sudo bash -c "echo $huge_pages > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages" + +for t_count in "${threads[@]}"; +do + numactl --cpubind=0 --membind=0 ./membw $input_size $t_count 10 >> results.csv +done diff --git a/example-benchmarks/network_bandwidth/ansible.yml b/example-benchmarks/network_bandwidth/ansible.yml new file mode 100644 index 0000000..b17eb10 --- /dev/null +++ b/example-benchmarks/network_bandwidth/ansible.yml @@ -0,0 +1,15 @@ +--- +- name: Install iperf + hosts: localhost + tasks: + - name: Install dependencies + become: yes + apt: + name: + - iperf + state: present + + - name: Make run_bandwidth.sh executable + file: + path: /home/ubuntu/network_bandwidth/run_bandwidth.sh + mode: '0755' diff --git a/example-benchmarks/network_bandwidth/configuration.yml b/example-benchmarks/network_bandwidth/configuration.yml new file mode 100644 index 0000000..ea1d70d --- /dev/null +++ b/example-benchmarks/network_bandwidth/configuration.yml @@ -0,0 +1,64 @@ +--- +configuration: + name: Network Bandwidth + description: Benchmark testing network bandwidth over a time using iperf + directory: network_bandwidth + cron: "0 * * * *" + instance-number: 2 + instance-types: + - c8g.metal-24xl + - c7gn.metal + - c7g.metal + - c7i.metal-24xl + - c7a.metal-48xl + - c5.metal + - c6g.medium + - t2.micro + + - c7g.medium + - c7g.large + - c7g.xlarge + + - c6i.2xlarge + - c7i.2xlarge + + - c6a.2xlarge + - c7a.2xlarge + + - c6g.2xlarge + - c7g.2xlarge + - c8g.2xlarge + +nodes: + - node-id: 0 + ansible-configuration: ansible.yml + + - node-id: 1 + benchmark-command: ./run_bandwidth.sh + output-command: python3 format_output.py results.txt + + - node-id: 2 + benchmark-command: timeout 620 iperf -s + instance-type: c7gn.metal + +plots: + - type: line + title: Network Bandwidth over Time + xaxis: Time [s] + yaxis: Network Bandwidth [Gbit/s] + series: + - x: increasing_values + y: connection_min + legend: Minimum Connection Bandwidth + + - x: increasing_values + y: connection_avg + legend: Average Connection Bandwidth + + - x: increasing_values + y: connection_max + legend: Maximum Connection Bandwidth + + - x: increasing_values + y: sum_bandwidth + legend: Connections Sum diff --git a/example-benchmarks/network_bandwidth/format_output.py b/example-benchmarks/network_bandwidth/format_output.py new file mode 100644 index 0000000..efa0ee7 --- /dev/null +++ b/example-benchmarks/network_bandwidth/format_output.py @@ -0,0 +1,62 @@ +import re +import sys +import json +from collections import defaultdict + +def parse_iperf(file_path): + connection_bandwidths = defaultdict(lambda: defaultdict(float)) + sum_bandwidth = defaultdict(float) + min_bandwidth = defaultdict(float) + max_bandwidth = defaultdict(float) + avg_bandwidth = defaultdict(float) + intervals = set() + + connection_pattern = re.compile(r'\[\s*(\d+)\]\s+([\d.]+)-([\d.]+)\s+sec\s+([\d.]+)\s+GBytes\s+([\d.]+)\s+Gbits/sec') + sum_pattern = re.compile(r'\[SUM\]\s+([\d.]+)-([\d.]+)\s+sec\s+([\d.]+)\s+GBytes\s+([\d.]+)\s+Gbits/sec') + + with open(file_path, 'r') as f: + for line in f: + connection_match = connection_pattern.search(line) + if connection_match: + connection_id = int(connection_match.group(1)) + start_time = float(connection_match.group(2)) + bandwidth = float(connection_match.group(5)) + + connection_bandwidths[connection_id][start_time] = bandwidth + intervals.add(start_time) + + sum_match = sum_pattern.search(line) + if sum_match: + start_time = float(sum_match.group(1)) + bandwidth_sum = float(sum_match.group(4)) + + sum_bandwidth[start_time] = bandwidth_sum + intervals.add(start_time) + if not sum_bandwidth: + sum_bandwidth = connection_bandwidths[1] + intervals = sorted(intervals)[1:-1] + for i in intervals: + interval = [] + for j in range(1, len(connection_bandwidths) + 1): + interval.append(connection_bandwidths[j][i]) + min_bandwidth[i] = min(interval) + max_bandwidth[i] = max(interval) + avg_bandwidth[i] = sum(interval) / len(interval) + + data = { + 'connection_min': [min_bandwidth.get(i, 0) for i in intervals], + 'connection_max': [max_bandwidth.get(i, 0) for i in intervals], + 'connection_avg': [avg_bandwidth.get(i, 0) for i in intervals], + 'sum_bandwidth': [sum_bandwidth.get(i, 0) for i in intervals] + } + + return data + +if __name__ == "__main__": + if len(sys.argv) != 2: + print("Usage: python3 format_output.py ") + sys.exit(1) + + file_path = sys.argv[1] + data = parse_iperf(file_path) + print(json.dumps(data, indent=4)) diff --git a/example-benchmarks/network_bandwidth/run_bandwidth.sh b/example-benchmarks/network_bandwidth/run_bandwidth.sh new file mode 100644 index 0000000..3a84a67 --- /dev/null +++ b/example-benchmarks/network_bandwidth/run_bandwidth.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +sleep 5 +num_threads=$(lscpu | grep "^CPU(s):" | awk '{print $2}') +num_threads_plus_two=$(("$num_threads" + 2)) +threads=$((num_threads_plus_two < 50 ? num_threads_plus_two : 50)) +iperf -c node-2 -t 602 -P $threads -i 1 -f g >> results.txt diff --git a/example-benchmarks/network_latency/ansible.yml b/example-benchmarks/network_latency/ansible.yml new file mode 100644 index 0000000..87df7fc --- /dev/null +++ b/example-benchmarks/network_latency/ansible.yml @@ -0,0 +1,61 @@ +--- +- name: Install and run sockperf + hosts: localhost + tasks: + - name: Install dependencies + become: yes + apt: + name: + - git + - perl + - make + - automake + - autoconf + - m4 + - libtool-bin + - g++ + state: present + + - name: Ensure entries are present in /etc/hosts to allow GitHub communication via IPv6 + become: yes + lineinfile: + path: /etc/hosts + state: present + line: "{{ item }}" + loop: + - "2a01:4f8:c010:d56::2 github.com" + - "2a01:4f8:c010:d56::3 api.github.com" + - "2a01:4f8:c010:d56::4 codeload.github.com" + - "2a01:4f8:c010:d56::5 objects.githubusercontent.com" + - "2a01:4f8:c010:d56::6 ghcr.io" + - "2a01:4f8:c010:d56::7 pkg.github.com npm.pkg.github.com maven.pkg.github.com nuget.pkg.github.com rubygems.pkg.github.com" + + - name: Clone sockperf repository + git: + repo: "https://github.com/Mellanox/sockperf.git" + dest: /home/ubuntu/network_latency/sockperf + + - name: Run sockperf autogen.sh + command: ./autogen.sh + args: + chdir: /home/ubuntu/network_latency/sockperf + + - name: Configure sockperf + command: ./configure + args: + chdir: /home/ubuntu/network_latency/sockperf + + - name: Compile sockperf + make: + chdir: /home/ubuntu/network_latency/sockperf + + - name: Install sockperf + become: yes + command: make install + args: + chdir: /home/ubuntu/network_latency/sockperf + + - name: Make run_latency_bench.sh executable + file: + path: /home/ubuntu/network_latency/run_latency_bench.sh + mode: '0755' diff --git a/example-benchmarks/network_latency/configuration.yml b/example-benchmarks/network_latency/configuration.yml new file mode 100644 index 0000000..6e6af1e --- /dev/null +++ b/example-benchmarks/network_latency/configuration.yml @@ -0,0 +1,56 @@ +--- +configuration: + name: Network Latency + description: Benchmark using sockperf to test network latency + directory: network_latency + cron: "0 * * * *" + instance-number: 2 + instance-types: + - c8g.metal-24xl + - c7gn.metal + - c7g.metal + - c7i.metal-24xl + - c7a.metal-48xl + - c5.metal +nodes: + - node-id: 0 + ansible-configuration: ansible.yml + + - node-id: 1 + benchmark-command: ./run_latency_bench.sh + output-command: python3 format_output.py results.txt + + - node-id: 2 + benchmark-command: timeout 90 ./sockperf/sockperf server -i node-2 --tcp + +plots: + - type: scatter + title: Round-trip time + yaxis: Time [us] + series: + - y: average + legend: Average + - y: average_plus_std_dev + legend: Average + Std Dev + - y: average_minus_std_dev + legend: Average - Std Dev + - y: minimum + legend: Minimum + - y: maximum + legend: Maximum + - y: percentile_99_999 + legend: Percentile 99.999% + - y: percentile_99_990 + legend: Percentile 99.99% + - y: percentile_99_900 + legend: Percentile 99.9% + - y: percentile_99_000 + legend: Percentile 99% + - y: percentile_90_000 + legend: Percentile 90% + - y: percentile_75_000 + legend: Percentile 75% + - y: percentile_50_000 + legend: Median + - y: percentile_25_000 + legend: Percentile 25% diff --git a/example-benchmarks/network_latency/format_output.py b/example-benchmarks/network_latency/format_output.py new file mode 100644 index 0000000..d1be02d --- /dev/null +++ b/example-benchmarks/network_latency/format_output.py @@ -0,0 +1,48 @@ +import re +import json +import sys + + +def parse_sockperf_output(file_path): + parsed_data = {} + avg_rtt_pattern = r'avg-rtt=(\d+\.\d+)' + std_dev_pattern = r'std-dev=(\d+\.\d+)' + min_pattern = r' observation =\s+(\d+\.\d+)' + max_pattern = r' observation =\s+(\d+\.\d+)' + percentile_pattern = r'percentile (\d+\.\d+) =\s+(\d+\.\d+)' + + with open(file_path, 'r') as file: + content = file.read() + + avg_rtt_match = re.search(avg_rtt_pattern, content) + if avg_rtt_match: + parsed_data['average'] = float(avg_rtt_match.group(1)) + + std_dev_match = re.search(std_dev_pattern, content) + if std_dev_match: + parsed_data['average_plus_std_dev'] = parsed_data['average'] + float(std_dev_match.group(1)) + parsed_data['average_minus_std_dev'] = parsed_data['average'] - float(std_dev_match.group(1)) + + min_match = re.search(min_pattern, content) + if min_match: + parsed_data['minimum'] = float(min_match.group(1)) + + max_match = re.search(max_pattern, content) + if max_match: + parsed_data['maximum'] = float(max_match.group(1)) + + for percentile_match in re.finditer(percentile_pattern, content): + percentile = percentile_match.group(1).replace('.', '_') + value = float(percentile_match.group(2)) + parsed_data[f'percentile_{percentile}'] = value + + print(json.dumps(parsed_data, indent=4)) + + +if __name__ == "__main__": + if len(sys.argv) != 2: + print("Usage: python parse_results.py ") + sys.exit(1) + + file_path = sys.argv[1] + parse_sockperf_output(file_path) diff --git a/example-benchmarks/network_latency/run_latency_bench.sh b/example-benchmarks/network_latency/run_latency_bench.sh new file mode 100644 index 0000000..108fed6 --- /dev/null +++ b/example-benchmarks/network_latency/run_latency_bench.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env sh + +sleep 5 +./sockperf/sockperf ping-pong -i node-2 -t 60 --full-log logs.csv --full-rtt --tcp >> results.txt \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_all_cores/ansible.yml b/example-benchmarks/spec_cpu_all_cores/ansible.yml new file mode 100644 index 0000000..1ee9edf --- /dev/null +++ b/example-benchmarks/spec_cpu_all_cores/ansible.yml @@ -0,0 +1,80 @@ +--- +- name: Install and run sockperf + hosts: localhost + tasks: + - name: Ensure the directory exists + file: + path: /home/ubuntu/specbench + state: directory + mode: '0755' + + - name: Mount image + become: true + command: mount -t iso9660 -o ro,exec,loop cpu2017-1.1.9.iso /mnt + args: + chdir: /home/ubuntu + + - name: Install SPEC CPU + command: ./install.sh -f -d /home/ubuntu/specbench + args: + chdir: /mnt + + - name: Copy x86 config + copy: + src: /home/ubuntu/spec_cpu_all_cores/config_x86.cfg + dest: /home/ubuntu/specbench/config/config_x86.cfg + + - name: Copy ARM config + copy: + src: /home/ubuntu/spec_cpu_all_cores/config_graviton.cfg + dest: /home/ubuntu/specbench/config/config_graviton.cfg + + - name: Add flags tags to gcc.xml + community.general.xml: + path: /home/ubuntu/specbench/config/flags/gcc.xml + xpath: /flagsdescription + add_children: + - flag: + name: std-c-plus-plus-14 + regexp: -std=c\+\+14 + class: portability + - flag: + name: Wno-error-register + regexp: -Wno-error=register + class: portability + state: present + pretty_print: yes + + - name: Add placeholder for C++14 description + community.general.xml: + path: /home/ubuntu/specbench/config/flags/gcc.xml + xpath: /flagsdescription/flag[@name='std-c-plus-plus-14'] + value: DESCRIPTION_STD_C14 + state: present + pretty_print: yes + + - name: Add placeholder for WNo-Error description + community.general.xml: + path: /home/ubuntu/specbench/config/flags/gcc.xml + xpath: /flagsdescription/flag[@name='Wno-error-register'] + value: DESCRIPTION_WNO_ERROR + state: "present" + pretty_print: yes + + - name: Replace DESCRIPTION_STD_C14 + replace: + path: /home/ubuntu/specbench/config/flags/gcc.xml + regexp: DESCRIPTION_STD_C14 + replace: Compile source code with C++14.

]]> + + + - name: Replace DESCRIPTION_WNO_ERROR + replace: + path: /home/ubuntu/specbench/config/flags/gcc.xml + regexp: DESCRIPTION_WNO_ERROR + replace: Disable treating the use of the 'register' keyword as an error.

]]> + + - name: Make run_spec.sh executable + file: + path: /home/ubuntu/spec_cpu_all_cores/run_spec.sh + mode: '0755' \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_all_cores/config_graviton.cfg b/example-benchmarks/spec_cpu_all_cores/config_graviton.cfg new file mode 100644 index 0000000..8d73351 --- /dev/null +++ b/example-benchmarks/spec_cpu_all_cores/config_graviton.cfg @@ -0,0 +1,698 @@ +#------------------------------------------------------------------------------ +# SPEC CPU2017 config file for: gcc / g++ / gfortran on Linux ARM systems +#------------------------------------------------------------------------------ +# +# Usage: (1) Copy this to a new name +# cd $SPEC/config +# cp Example-x.cfg myname.cfg +# (2) Change items that are marked 'EDIT' (search for it) +# +# SPEC tested this config file with: +# Compiler version(s): 5.3, 6.2 +# Operating system(s): Ubuntu 16.04 +# Hardware: Cavium ThunderX, HPE Moonshot +# +# If your system differs, this config file might not work. +# You might find a better config file at http://www.spec.org/cpu2017/results +# +# Known Limitations +# It is possible that you might encounter compile time or run time errors +# with older versions of GCC (for example, 4.x) +# Recommendation: Use a newer version of the compiler. +# If that is not possible, try reducing the optimization. +# +# +# Compiler issues: Contact your compiler vendor, not SPEC. +# For SPEC help: http://www.spec.org/cpu2017/Docs/techsupport.html +#------------------------------------------------------------------------------ + + +#--------- Label -------------------------------------------------------------- +# Arbitrary string to tag binaries +# Two Suggestions: # (1) EDIT this label as you try new ideas. +%define label spec_graviton # (2) Use a label meaningful to *you*. + + +#--------- Preprocessor ------------------------------------------------------- +%ifndef %{bits} # EDIT to control 32 or 64 bit compilation. Or, +% define bits 64 # you can set it on the command line using: +%endif # 'runcpu --define bits=nn' + +%ifndef %{build_ncpus} # EDIT to adjust number of simultaneous compiles. +% define build_ncpus 8 # Or, you can set it on the command line: +%endif # 'runcpu --define build_ncpus=nn' + +# Don't change this part. +%define os LINUX + +%ifndef %{model} +% if %{bits} == 64 +% define model -mabi=lp64 +% elif %{bits} == 32 +% define model -mabi=ilp32 +% else +% error Please define number of bits - see instructions in config file +% endif +%endif + + +#--------- Global Settings ---------------------------------------------------- +# For info, see: +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#tune + +command_add_redirect = 1 +flagsurl = $[top]/config/flags/gcc.xml +ignore_errors = 0 +iterations = 1 +label = %{label}-%{bits} +line_width = 1020 +log_line_width = 1020 +makeflags = --jobs=%{build_ncpus} +mean_anyway = 1 +output_format = txt,html,cfg,pdf,csv +preenv = 1 +reportable = 0 +tune = base,peak + + +#--------- How Many CPUs? ----------------------------------------------------- +# Both SPECrate and SPECspeed can test multiple chips / cores / hw threads +# - For SPECrate, you set the number of copies. +# - For SPECspeed, you set the number of threads. +# See: https://www.spec.org/cpu2017/Docs/system-requirements.html#MultipleCPUs +# +# q. How many should I set? +# a. Unknown, you will have to try it and see! +# +# To get you started, some suggestions: +# +# copies - This config file defaults to testing only 1 copy. You might +# try changing it to match the number of cores on your system, +# or perhaps the number of virtual CPUs as reported by: +# grep -c processor /proc/cpuinfo +# Be sure you have enough memory. See: +# https://www.spec.org/cpu2017/Docs/system-requirements.html#memory +# +# threads - This config file sets a starting point. You could try raising +# it. A higher thread count is much more likely to be useful for +# fpspeed than for intspeed. +# +intrate,fprate: + copies = 1 # EDIT to change number of copies (see above) +intspeed,fpspeed: + threads = 8 # EDIT to change number of OpenMP threads (see above) + + +#------- Compilers ------------------------------------------------------------ +default: +# EDIT: the directory where your compiler is installed +%ifndef %{gcc_dir} +% define gcc_dir /usr +%endif + +# EDIT if needed: the preENV line adds library directories to the runtime +# path. You can adjust it, or add lines for other environment variables. +# See: https://www.spec.org/cpu2017/Docs/config.html#preenv +# and: https://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html + preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64 + #preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64:%{ENV_LD_LIBRARY_PATH} + SPECLANG = %{gcc_dir}/bin/ + CC = $(SPECLANG)gcc -std=c99 %{model} + CXX = $(SPECLANG)g++ -std=c++03 %{model} + FC = $(SPECLANG)gfortran %{model} + # How to say "Show me your version, please" + CC_VERSION_OPTION = -v + CXX_VERSION_OPTION = -v + FC_VERSION_OPTION = -v + +default: +%if %{bits} == 64 + sw_base_ptrsize = 64-bit + sw_peak_ptrsize = 64-bit +%else + sw_base_ptrsize = 32-bit + sw_peak_ptrsize = 32-bit +%endif + + +#--------- Portability -------------------------------------------------------- +default: # data model applies to all benchmarks +%if %{bits} == 32 + # Strongly recommended because at run-time, operations using modern file + # systems may fail spectacularly and frequently (or, worse, quietly and + # randomly) if a program does not accommodate 64-bit metadata. + EXTRA_PORTABILITY = -D_FILE_OFFSET_BITS=64 +%else + EXTRA_PORTABILITY = -DSPEC_LP64 +%endif + +# Benchmark-specific portability (ordered by last 2 digits of bmark number) + +500.perlbench_r,600.perlbench_s: #lang='C' +%if %{bits} == 32 +% define suffix AARCH32 +%else +% define suffix AARCH64 +%endif + PORTABILITY = -DSPEC_%{os}_%{suffix} + +520.omnetpp_r: + PORTABILITY = -Wno-error=register -std=c++14 + +521.wrf_r,621.wrf_s: #lang='F,C' + CPORTABILITY = -DSPEC_CASE_FLAG + FPORTABILITY = -fconvert=big-endian + +523.xalancbmk_r,623.xalancbmk_s: #lang='CXX' + PORTABILITY = -DSPEC_%{os} + +526.blender_r: #lang='CXX,C' + PORTABILITY = -funsigned-char -DSPEC_LINUX + +527.cam4_r,627.cam4_s: #lang='F,C' + PORTABILITY = -DSPEC_CASE_FLAG + +628.pop2_s: #lang='F,C' + PORTABILITY = -DSPEC_CASE_FLAG -fconvert=big-endian + +#---------------------------------------------------------------------- +# GCC workarounds that do not count as PORTABILITY +#---------------------------------------------------------------------- +# The workarounds in this section would not qualify under the SPEC CPU +# PORTABILITY rule. +# - In peak, they can be set as needed for individual benchmarks. +# - In base, individual settings are not allowed; set for whole suite. +# See: +# https://www.spec.org/cpu2017/Docs/runrules.html#portability +# https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# +# Integer workarounds - peak +# + 500.perlbench_r,600.perlbench_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/500.perlbench_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only + 502.gcc_r,602.gcc_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fgnu89-inline + 505.mcf_r,605.mcf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/505.mcf_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 525.x264_r,625.x264_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/525.x264_r.html + EXTRA_CFLAGS = -fcommon +# +# Integer workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + intrate,intspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only -fgnu89-inline -fcommon +# +# Floating Point workarounds - peak +# + 511.povray_r=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/511.povray_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 521.wrf_r,621.wrf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/521.wrf_r.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + 527.cam4_r,627.cam4_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/527.cam4_r.html + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + # See also topic "628.pop2_s basepeak" below + 628.pop2_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif +# +# FP workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + fprate,fpspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + +#-------- Tuning Flags common to Base and Peak -------------------------------- + +# +# Speed (OpenMP and Autopar allowed) +# +%if %{bits} == 32 + intspeed,fpspeed: + # + # Many of the speed benchmarks (6nn.benchmark_s) do not fit in 32 bits + # If you wish to run SPECint2017_speed or SPECfp2017_speed, please use + # + # runcpu --define bits=64 + # + fail_build = 1 +%else + intspeed,fpspeed: + EXTRA_OPTIMIZE = -fopenmp -DSPEC_OPENMP + fpspeed: + # + # 627.cam4 needs a big stack; the preENV will apply it to all + # benchmarks in the set, as required by the rules. + # + preENV_OMP_STACKSIZE = 120M +%endif + + +#-------- Baseline Tuning Flags ---------------------------------------------- +# +default=base: # flags for all base + OPTIMIZE = -g -O3 -march=native + +intrate,intspeed=base: # flags for integer base +%if %{bits} == 32 + EXTRA_COPTIMIZE = -fgnu89-inline -fno-strict-aliasing +%else + EXTRA_COPTIMIZE = -fgnu89-inline -fno-strict-aliasing + LDCFLAGS = -z muldefs +%endif +# Notes about the above +# - 500.perlbench_r/600.perlbench_s needs -fno-strict-aliasing. +# - 502.gcc_r/602.gcc_s needs -fgnu89-inline or -z muldefs +# - 520.omnetpp_r needs -fno-new-ttp-matching (See https://inbox.sourceware.org/gcc-patches/20200629145741.GG3394@redhat.com/T/) +# - For 'base', all benchmarks in a set must use the same options. +# - Therefore, all base benchmarks get the above. See: +# www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# www.spec.org/cpu2017/Docs/benchmarks/500.perlbench_r.html +# www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html + +#-------- Peak Tuning Flags ---------------------------------------------- +default=peak: + OPTIMIZE = -g -Ofast -march=native -flto + PASS1_FLAGS = -fprofile-generate + PASS2_FLAGS = -fprofile-use + +# 628.pop2_s basepeak: Depending on the interplay of several optimizations, +# 628.pop2_s might not validate with peak tuning. Use the base +# version instead. See: +# https:// www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +628.pop2_s=peak: + basepeak = yes + + # + # ----------------------- + # About the -fno switches + # ----------------------- + # + # For 'base', this config file (conservatively) disables some optimizations. + # You might want to try turning some of them back on, by creating a 'peak' + # section here, with individualized benchmark options: + # + # 500.perlbench_r=peak: + # OPTIMIZE = this + # 502.gcc_r=peak: + # OPTIMIZE = that + # 503.bwaves_r=peak: + # OPTIMIZE = other .....(and so forth) + # + # If you try it: + # - You must remove the 'basepeak' option, above. + # - You will need time and patience, to diagnose and avoid any errors. + # - perlbench is unlikely to work with strict aliasing + # - Some floating point benchmarks may get wrong answers, depending on: + # the particular chip + # the version of GCC + # other optimizations enabled + # -m32 vs. -m64 + # - See: http://www.spec.org/cpu2017/Docs/config.html + # - and: http://www.spec.org/cpu2017/Docs/runrules.html + + +#------------------------------------------------------------------------------ +# Tester and System Descriptions - EDIT all sections below this point +#------------------------------------------------------------------------------ +# For info about any field, see +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#hw_memory +#------------------------------------------------------------------------------- + +#--------- EDIT to match your version ----------------------------------------- +default: + sw_compiler001 = C/C++/Fortran: Version 13.2.0 of GCC, the + sw_compiler002 = GNU Compiler Collection + +#--------- EDIT info about you ------------------------------------------------ +# To understand the difference between hw_vendor/sponsor/tester, see: +# https://www.spec.org/cpu2017/Docs/config.html#test_sponsor +intrate,intspeed,fprate,fpspeed: # Important: keep this line + hw_vendor = Amazon Web Services + tester = TUM I13 + test_sponsor = TUM + license_num = nnn (Your SPEC license number) +# prepared_by = # Ima Pseudonym # Whatever you like: is never output + + +#--------- EDIT system availability dates ------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field + hw_avail = # Nov-2099 # Date of LAST hardware component to ship + sw_avail = # Nov-2099 # Date of LAST software component to ship + +#--------- EDIT system information -------------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field + # hw_cpu_name = # Intel Xeon E9-9999 v9 # chip name + hw_cpu_nominal_mhz = # 9999 # Nominal chip frequency, in MHz + hw_cpu_max_mhz = # 9999 # Max chip frequency, in MHz + # hw_disk = # 9 x 9 TB SATA III 9999 RPM # Size, type, other perf-relevant info + hw_model = # TurboBlaster 3000 # system model name + # hw_nchips = # 99 # number chips enabled + hw_ncores = # 9999 # number cores enabled + hw_ncpuorder = # 1-9 chips # Ordering options + hw_nthreadspercore = # 9 # number threads enabled per core + hw_other = # TurboNUMA Router 10 Gb # Other perf-relevant hw, or "None" + +# hw_memory001 = # 999 GB (99 x 9 GB 2Rx4 PC4-2133P-R, # The 'PCn-etc' is from the JEDEC +# hw_memory002 = # running at 1600 MHz) # label on the DIMM. + + hw_pcache = # 99 KB I + 99 KB D on chip per core # Primary cache size, type, location + hw_scache = # 99 KB I+D on chip per 9 cores # Second cache or "None" + hw_tcache = # 9 MB I+D on chip per chip # Third cache or "None" + hw_ocache = # 9 GB I+D off chip per system board # Other cache or "None" + + fw_bios = # American Megatrends 39030100 02/29/2016 # Firmware information + # sw_file = # ext99 # File system + # sw_os001 = # Linux Sailboat # Operating system + # sw_os002 = # Distribution 7.2 SP1 # and version + sw_other = # TurboHeap Library V8.1 # Other perf-relevant sw, or "None" + # sw_state = # Run level 99 # Software state. + +# Note: Some commented-out fields above are automatically set to preliminary +# values by sysinfo +# https://www.spec.org/cpu2017/Docs/config.html#sysinfo +# Uncomment lines for which you already know a better answer than sysinfo + +__HASH__ +502.gcc_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:04:30 +opthash=f109483d241781652e51b7b88d11d9a21c1a4cb053bc972cd7a7fdcb122a309b +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNq1UtFumzAUfecrLL87SdttWqJSCRyaeCXYClBte7ESByJvYKcYKrVfX5uUNn1qHjZLiCPuMffc\ +c26iFao3f4tSVgXQh1ZqZWaeaRspWt50aicb/lg0snzy4QX0LDSWYvFoMplAz8N0xWYAjjvTjLdS\ +jfdCAHeQaXe+mE4drDdb6VeHb18AEgDpoc1IAzRPWYTtK5lHYb4AiIzcM5ZKVN2u6LE5FII/GN20\ +r3T+dXI5wCDPKE9zxtZRmnLKomTFbI0kfIHdf5fBfcQxTW7Jgi+tFHoFTg4q96r7PkVSVVLZbqXS\ +6Dg62lRyY6TaO9axVczsAODa6K4RxQ308Axg7J85+ZFOwx+UZT78YAP0rIGY5bdxsEht7aMlfTWM\ +ErzkA+G/egQ9OgNWJFmR35FtRq/6L9HPbB1Y0nvhc+t66ceLjK6zICQxyX4NE/Z+Qi8myd35+wPQ\ +M6i7aleUpiedxHlOltd6+6cQrblx/Kp+v/sWBgB9UvH8/GCpo+MhnDd9/9RIK2kVZEsek9A1qepX\ +lTR323SySi8GFRoV +exehash=5104cdfe94db9b351f6890ead073919d3dd7fcbe28495886f98c547b67586ef7 + +500.perlbench_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:20:40 +opthash=947c5d5bb410de4cb52ba0adb24d11823e0351a2d31dca231ec6a4a5b3e13e18 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNrVU12rmzAYvvdXBO9TO84Yazke0DStbmkTjMLZboK1acmmsRgd2/n1S+zHTmGwwi7GAuKbN8/7\ +/bybVsOm/Cr3qpagPfaq1Wbumb5TVS+6Qe9UJ77JTu1/hP4b37OisRArT6bTqe95iK7ZHPjBYLpg\ +q3RwqCrgDjT9LqxmMyc25VaF9fHdWwArANtLmEkL4IIzjOxvs8BxsbICwxkRiGYYwHRiv50yfZBS\ +K1XHUge5aiRMVCbNRZPkawJZ2RnZWZX83gedtII5yqor9c66XNAiJlhwEvEEc+EiphEJp+foIipy\ +KnjBWIY5F5ThzZrZN0GibIXFMiWYX6/uJjgtMoSdbrzS5ZLjXMRpzkNbI4D0AZzPOQJJN8WziKIM\ +JQ5g9fuDHt7PoNK10jbdvW7hqeewrFVplD68smbO6NG0Q1fJJ99Dc4BQeGfLT3Aaf6AsD/2b/vue\ +nRxixZJEK27fbmcxvsZ4gxJxBfz3w/E9Oge2E+k6/YxtRfRhLJPRLI/ilKT5p0sfbmc22uHnPIts\ ++b/M/zzF0f3J8LdBmPNtQ328f4cAfAHNUO/k3oygM9v+hmqP7faLrHrz5PB1A670vXIFgJFIZHE/\ +76iDowt3rjn/gxHYxNdRnlh/sUulbs610MKtxKt9+Anm8HdT +exehash=d05a3a8991d2354440134f80d8ee02b2ba72cbe3e9db2f47c33108e3298f4bae + +505.mcf_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:20:43 +opthash=2b4ee5d95adc68b4be57409edc22f0f0064766b5e23db32adb25cf345a157ec4 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNqtUtFugjAUfecrmr5XXVyWacQEKlM2pI1Asu2lQUTTDVpHYcn29SugDp/Gw/rS295ze885t74U\ +KI/f0z3PUiCPJZdCTQ1VFjwpWVGJHS/YZ1rw/ZcJb6ChQ6UhOh6MRiNoGJis6RTAYaWK4ZaL4SFJ\ +QL2QKndmMpnUYR5vuZkd724BSgCS5zYDCdAioA7Wm79w7Gipsa46pgn7ULIoT1lmRSFhQUTpxgkC\ +RqjjrylAZAw6C+0PorqfIC4yLlJ9FBK1IlCc8VhxcahR7YMe1VTATMmqSNI5NPAUYGz21NDCif1I\ +aGjCK0HQ0FZgGj141jLQuWtxTdZ2fLxi+IzoqRYaZAp0P3ftvjq6jIybG+c53FgMdxJ/u9CwaAsp\ +2YSW7Xpu+HIm21gDDc/1n/oPFaBvkFfZLt2rBtSZTJ+xzOT2LU1KNa/xWf5be/EVgMZ0b9F/RqSG\ +X2y+8PtXIzWltRWumOfadZMsP7EkUf0xOr/iByWg/Ws= +exehash=1f2e6cf9670ff39d468e67fa6a1b9d33d630807ca98a1c1e435b76b6d9272e63 + +520.omnetpp_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:22:49 +opthash=274005286c078201e7a17f3e4b5c63e726b9fe2abd72d9e87de35af6c25702cc +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNq1UctOwzAQvPsrLF+rNEVFHKKmUh6mNaSxlYcoXKw2dZEhjSMnQeLvMSmBFi694MuuvbO7M+NY\ +VdZh8yr2shRQ1a1UVeOAptWyaLnuqp3U/E1ouX930RUCJm0MxOTjyWSCAAjoijkQ2V2j7a2s7OfR\ +CP46Zv5WumV9cw2tAlpqWDNW0ApThgMT4hD7+QJapJGHrty0Stu1CTtRn76Z/KB2ojQNDyRb8hhn\ +fk6iECdfk7iXZ5SnOWMJTlNOGY5XzDCg0x82R2DEDB04a1SnCzFHIHBgsF67FwoZ8NS/oyxz0Zku\ +BIwjActvI2+Rmtq5xr7q4zhY8gHwH6IRoA403MiKPGGzg077xXidJR5nNMk8n0Qkexz49YYgEJH4\ +/vLvPN5PzIUztX0RRdvMzzq+rYGwdy4KLzf6r4x+AM0/bT/x/AP2tsQE +exehash=1cf2aed85696fcfe3a730b6638402f19d208b0c45616569d233848172725a44e + +523.xalancbmk_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:28:06 +opthash=6d3d0e94f77cea8d755bb0658ee676291353bcf5b40fe2e49963fc426b39d5b4 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNrtVEFvmzAUvvMrLK4VIVurHaKmkgNeSmdjC8PEdrEIoZU3giNMqvbf9wVERrodssNuQ0K8773P\ +D/t9nxybxtsVP6tHXVfI7DttGrtwbNfqslPtodnqVj1XrX58XbofXAdCCxSIZ/P53HWcgDOxQK5/\ +sK2/0Y3/dHWF3j3Qf6OX9f7TDfJK5JnxNzODvFAKEsAnDskqWwM3xEKomKv0PiE4lJDIMcWximJG\ +mGJyrSjHIUmQF83gfanasrLlr8jfmt058vVuX09StniZoEOna5/ZJ2qKLZzNjxpW7Uz7+p6StkVj\ +SzNwStM8HwlFXTSlr5uyPmwr2KpI+IPKGRU4kcctnhJZGtERDkU5Qonzm2ACPo5xyNkYfsU0CnHK\ ++1XQTmWSjBMhUuI1GYfSz1PhLOVKZkIkUFVckJgJ5PHrXo2BQqM4y9E0IUAfdGvNAU595zrBAgV5\ +vrxQ2ZHPVw9cpEv3TGjXAYsEIvtM8VpC7Vz0vroicXCvoMGJ898H/8YHrsMXCDSKWPSdwKD5dS+A\ +4EmKVxGN0m+jQoNH+irJ0wSrP3LEUXxgfrn8FhjwYMff/XhrNj+qsrN3Z6tPZkKo9xoNL7fm3x64\ +b8+zo40nHn4DYzCAUg== +exehash=c7afcfbdfebfed96e6db07f3747c9f0d57546e96a0c087fd295607c4331a3ca1 + +525.x264_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:28:47 +opthash=9f8249deba2ee1bc4326c744c0aad9b1c72974092b5a064cd194306c4abc49a8 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNrtU11vmzAUfedXWH53SZssa6JSCYjXshFs8SGte7GIQyJvYFcYpmy/foY0HXlaHip1D/jF177H\ +9r3n+ERKoir/UexEWQD13Agl9dLSTS14w+pWbkXNfha12P1y4DW0TKgNxMRXk8kEWpZP1nQJoN3q\ +2t4Iae85B91Autk6fLHowirfCKd8ns8A4gCp0zNXCqBVQrFvpmiFvewBoKDcFlxtma65LaRBB4eb\ ++axbDkK7ODR1roc7XFWVki/3MTdLCUsySmOcJIxQHK3pWc57SjGJVzh2Jofrm+nsw/zjrSmUTMFg\ +oN1etrcLJGQpZGGWUqEjMSgvRa6F3Heo47UhNe2BO63amhf30PKXwPedC3k5won3mdDUgWckQcvQ\ +69PsU+g+JCZ3Tlif9XDkP7IT4B0ZhBZZAtNCsA6+YVMKmfY7+Gsau8wfJP5NbN/Y8SAlcep6QRik\ +T6f+e7ahFQbRl8v/HkC/QdUadna6Bw3EvkTpO7X5XvBG33f4svp79lUqAHodw9XlspMO7p+ke63v\ +TYk0Ja3d9JGFgdc9UlYvVZKs+2uDjzZ6efTy6OXRy6OXRy+PXv5/vPwHT71lnQ== +exehash=67469200b738606c248c542608d955fae32c6d0d607cb97bf57a70f767d6ff33 + +531.deepsjeng_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:28:52 +opthash=7b83f00e401cd189a6e69735bcb63a0af85e9342734f1788fb82d1e640a9d463 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNqNUMtOwzAQvPsrLF+rtEFFHKKmUh6mBOzYykNKuVgkpMhQ4ioPJP4eN21oA5f44l3t7MzOhKoy\ +Pl8+yp3cl1AdWqmqxgJNW8uiFXVXvcpafJW13H3b6AYBXTYaouu5aZoIAI9RbkG06Jp6kctq8Tab\ +wT9P8+fS3h/ubqFRQEMNMnMFDT/m2NNf6GM33Rx76hAiKKYs2p7HwkkTJuKU8wjHsWAch5RrWra8\ +SJyAhGsNuGpUVxflGgHPgl6W2ROvG/DMfWQ8sdHoWAS0TY+n98TZxHo2Pryfujj0HsQFMNEJAsyC\ +WjCgwTPWi2zZs+EsiRzBWZQ4bkCCZDuI9i4RIEH4ND34U3+VGFyp/L0s2mY92vj1C2EfB/Gnp/ff\ +Rk/A0mOWV0H+ACXCpPw= +exehash=13c9182a8c3b527b60e2e0c4f73d5ce349e281bff507020815536a048b3034d8 + +541.leela_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:06 +opthash=a25eb362e6d382db558c966a388109f406c2dd1d4e0bbe1c8906a0a369648988 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNqNUMtOwzAQvPsrVr5WeaAiDlFTKQ9TAkls5SEFLhYJKTKUuMoDib/HTQm0IKH44rV3dnZmYtlo\ +b4+v9VbsapD7Xsims1DXt6LqeTs0T6Ll73Urth82vsBIlZ2CqFo3TRMj5NGIWYCNoWuNUjTG82IB\ +v47iL4W9219dglaBJqc1ugTNTxnx1BX7xM03oAX61x938ozyNGcsIWnKKSNxxBQXXf7wHoEhU8Sw\ +6uTQVvUaI88CryjsmZImPHVvKctsfKYQI+XNY/l16GxS1TtXO3ZdEns3fAL8Lx8jaoHaEkTBA1Fo\ +uhwpSJElDmc0yRw3CIPsfto0WsMoDOK7+REf3ycxwUqWL3XVd+uziW+TAGMGoT8/sr82RgKaHwI8\ +Se8TH9yeAA== +exehash=59eb1a8fb591abab12921ae4158c3efbaa5cd7788013faed4c2482117473de7b + +548.exchange2_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:26 +opthash=54bed106c6ee37e8de4e41711455fdf3bb1eb9c3be994b3f3fc94ad7a4dc44a1 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2gnAItNMy4wPlI5MZEjLEaY+MLK1tBVly9BFIfn1lYwcn0Is90mpXb/e9\ +J7SYbv7M1w83q7vN6j72v3HwaLjMUOK4sJhLZEqgph9MV8vlfBpvrqfTKHRGhwmXYZYqbTWR79Fl\ +vNr8XU/u7+frwynBE9gDDTNKQ0I0zX+MsODS7XEmXTgYhsIqvNOkLEEHq8ViuZrMNvFkfT2PN3eT\ +2/lDJF9Ku8dSSfgcn80Xk8dlHA2CmOgM7Bid3BBMlUx55jQwtOM2H6N+PzSahrTdR/gFYVzFcLnN\ +XkAbrmT05TFx0jo0GPav+pf4aujq9ehLezZxPllEKRcwDsO6VZMTDSFTdbPYt7aeT2a38/5vlxmf\ +BpIkArAgMnMkAxPRHmGkRy8uepnqsV4zyp5Knmj1wVWkuPKZpYaU7+t5ttdXNxTkSWncIMZKitf6\ +rMo0KbBxaZXjYXQ2m0InU8JHeHUTrAOXyy1oXKmBYV4FGkYZ1x8YbpApV4mGCseAYc+Jhb09VrO5\ +BsJMVCrD94da3TrHg1J0RkaFokRA5JF2gSXGMrrfYwaejHMBywuIXsG0Q2OQEudFfTxBEh5J2J1L\ +Tgjdej4oHIPVpJzkzw6w5wdo1Rjjpk18doQVxObndz0jZekpPpYrhcu8v97XLbySQ4vYvBoLBX77\ +MBu/KHOVKINpDnTrzRppEEDMe5qt7dDNjoiz6lii0pjX0Kfdwt/OK20ct7xcMPWowc/q+xD/HA1H\ +g1+dBnegtdKdwmkqFGENAtMxbxTWGmq8gdnNbra7bFcHm4WeSU5kaIsS14mN4j/VbuZUq7SVHHWM\ +YKa5d0NHN6fjqTGcGsBHcmXs2cChldNQENdiRoViIMaolnTwcCDZY/MvIaKq8JYzlT8REZnSHm1h\ +xqjm880LLfD9o8bBzVuDvv7n6fmGgn+sp/g9 +compile_options=\ +@eNqtkMtOwzAQRff5Csv7pEVFSERNpSR1SyCNrTwkYGO1qYMMJbbsFAFfj5OWUB6LLJiNZzTXM3NP\ +Imr7ef3EKr5jQMiGi1q7lm4ULxuq9vWWK/rCFK/ePHgGLZNqIzG5Mx6PoWUtCHEB1JKVUgJ7nhEU\ +mieZo6BYHmvqFzmmWUFIirKMYoKSFfnsxeTiHEy12KuSzYAt+typpOTvbOtUl6/QMktCUixif5l5\ +8MearhugJLyi3wR/7u3E6DZPfUpwmvtBFEf5Xf+lPQdaIV61rkZ7rUYbXo8eKqEata7BVxhoG+7t\ +pLneLtu7j+wcAWw86V2YWS5YhN7AWQc5Dq4xyc1Np4P/lQF2gdkQraJ7ZJR4MohKHCU3w6kcaoOi\ +j6nYPLKy0TNw+qM3CEDnPp4Ph/XbRjcAFy28E3IfNALPSA== +exehash=2a1a71c7b3cc305af6b28da5a0fa8f2ca7c28c617a74e9adedc544e84097d7db + +557.xz_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:33 +opthash=421bea877b6815c1807781f6a889dfd067c221fb6ed1ccf96d1b44a28a3e9490 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNrtU09vmzAcvfMpLO7On6brmqhUIsRN2ABbgUxtLxYxJvUKdoRJtfXTz5AlBe2wHHacJfDv2c/G\ +fu8RKQnL9JXnouBA7WuhpJ5Zuq4Eq2l1kJmo6BuvRP7Tsce2ZUptKKYejEYj27I8HJIZsIcHXQ23\ +Qg53jIGmQV1nDptOm7JMt8Ip9jfXADIA1ekzAwXgIibIM120QPPN8jem7ibBdP6UILxeoLUz+jG+\ +mlx/uvl8awgr9xuiHo4e/CVdOePTkhCF1Mcn9Pjc2yreELJGcUwxQVFIAPQH5tF7zmjJSypUg15S\ +eGV6pspSSVMUYlu8l+kw3YsOal4d+AebvXD22sFalHuj7MdAxos67W3YAVUqd5ypjFdGNjwBnQbz\ +nTzcTqGQhZBmw1wqeLQJpoVItZC7hnW8dUCM2OBOq0PF+L1teTPgec6FLh3peP4Fk8Sxe5bZljHb\ +I5uHwF3GZq5vXzs7R5G3oj3Cfz95ZVt4Boygfug/IyMMnrQj6DFZu+b6HxN/t7mV+biQ4HXizv3A\ +T57OYjfe21bgR18v/y8BfAfloch4rltSJ3qX5O5Obb9zVuv7XmDPqQGgjVSwuDyBuKF7pxSdD/dP\ +VWyPhDdNxjsB/wWIH4oW +exehash=2abaee9754cf40a947430898c8a92ee6cc105d41eeca5ede0ba581993517a4ca + +999.specrand_ir=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:34 +opthash=defc697dfd9d9f3abf3a128aa625ba453c48adf1498e058efb28e0336037187c +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNqtUdFugjAUfecrmr5XXVyWScREKnNsSIlisu2FYCmmG7SGwpLt61dqMLiX8bC+9Lb33HvPPSeU\ +ApXpB8t5wYA81VwKZVuqrjitk6oRGa+ST1bx/MuBN9DSodIQHY8mkwm0LEw2kQ3guFHV+MDF+Egp\ +aA9SdebQ2awNy/TAneJ0dwsQBUh2Y0YSoNUu8rC+wpXn7tcA+erEaJWKDFFZllLoajIFvYPyo2ju\ +Z4iLggumn0KiM1uUFjxVXBxblOmbBJGeCeZKNhVlC2hhG2DsDCR7hhP3iUSxA6+YQ0vvjKP9Q7Bc\ +73TueguTdb0QPyYd4Pda0CI20H39jf/m6TyZmh/vJd4uE9xL/L2tmXYujMg2Xrp+4MevHSkjAbQC\ +P3we7hJA36BsiozlyoB6DgyRfy4P74zWanHl20U8AIyywWq4EaSF407MC7l/VdFQIvvW6p7PP1rQ\ +6fs= +exehash=a68b2becada00a5b440ba02b35ca0a971d74af8ee11bb26bd2aa0276b3ad744f \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_all_cores/config_x86.cfg b/example-benchmarks/spec_cpu_all_cores/config_x86.cfg new file mode 100644 index 0000000..4b556c0 --- /dev/null +++ b/example-benchmarks/spec_cpu_all_cores/config_x86.cfg @@ -0,0 +1,653 @@ +#------------------------------------------------------------------------------ +# SPEC CPU(R) 2017 config for gcc/g++/gfortran on Linux x86 +#------------------------------------------------------------------------------ +# +# Usage: (1) Copy this to a new name +# cd $SPEC/config +# cp Example-x.cfg myname.cfg +# (2) Change items that are marked 'EDIT' (search for it) +# +# SPEC tested this config file with: +# Compiler version(s): Various. See note "Older GCC" below. +# Operating system(s): Oracle Linux Server 6, 7, 8 / +# Red Hat Enterprise Linux Server 6, 7, 8 +# SUSE Linux Enterprise Server 15 +# Ubuntu 19.04 +# Hardware: Xeon, EPYC +# +# If your system differs, this config file might not work. +# You might find a better config file at https://www.spec.org/cpu2017/results +# +# Note: Older GCC +# +# Please use the newest GCC that you can. The default version packaged with +# your operating system may be very old; look for alternate packages with a +# newer version. +# +# If you have no choice and must use an old version, here is what to expect: +# +# - "peak" tuning: Several benchmarks will fail at peak tuning if you use +# compilers older than GCC 7. +# In that case, please use base only. +# See: https://www.spec.org/cpu2017/Docs/overview.html#Q16 +# https://www.spec.org/cpu2017/Docs/config.html#tune +# Peak tuning is expected to work for all or nearly all +# benchmarks as of GCC 7 or later. +# Exception: +# - See topic "628.pop2_s basepeak", below. +# +# - "base" tuning: This config file is expected to work for base tuning with +# GCC 4.8.5 or later +# Exception: +# - Compilers vintage about 4.9 may need to turn off the +# tree vectorizer, by adding to the base OPTIMIZE flags: +# -fno-tree-loop-vectorize +# +# Unexpected errors? Try reducing the optimization level, or try removing: +# -march=native +# +# Compiler issues: Contact your compiler vendor, not SPEC. +# For SPEC help: https://www.spec.org/cpu2017/Docs/techsupport.html +#------------------------------------------------------------------------------ + + +#--------- Label -------------------------------------------------------------- +# Arbitrary string to tag binaries (no spaces allowed) +# Two Suggestions: # (1) EDIT this label as you try new ideas. +%ifndef %{label} +% define label "c6itest" # (2) Use a label meaningful to *you*. +%endif + + +#--------- Preprocessor ------------------------------------------------------- +%ifndef %{bits} # EDIT to control 32 or 64 bit compilation. Or, +% define bits 64 # you can set it on the command line using: +%endif # 'runcpu --define bits=nn' + +%ifndef %{build_ncpus} # EDIT to adjust number of simultaneous compiles. +% define build_ncpus 8 # Or, you can set it on the command line: +%endif # 'runcpu --define build_ncpus=nn' + +# Don't change this part. +%if %{bits} == 64 +% define model -m64 +%elif %{bits} == 32 +% define model -m32 +%else +% error Please define number of bits - see instructions in config file +%endif +%if %{label} =~ m/ / +% error Your label "%{label}" contains spaces. Please try underscores instead. +%endif +%if %{label} !~ m/^[a-zA-Z0-9._-]+$/ +% error Illegal character in label "%{label}". Please use only alphanumerics, underscore, hyphen, and period. +%endif + + +#--------- Global Settings ---------------------------------------------------- +# For info, see: +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#tune + +command_add_redirect = 1 +flagsurl = $[top]/config/flags/gcc.xml +ignore_errors = 1 +iterations = 1 +label = %{label}-m%{bits} +line_width = 1020 +log_line_width = 1020 +makeflags = --jobs=%{build_ncpus} +mean_anyway = 1 +output_format = txt,html,cfg,pdf,csv +preenv = 1 +reportable = 0 +tune = base,peak + + +#--------- How Many CPUs? ----------------------------------------------------- +# Both SPECrate and SPECspeed can test multiple chips / cores / hw threads +# - For SPECrate, you set the number of copies. +# - For SPECspeed, you set the number of threads. +# See: https://www.spec.org/cpu2017/Docs/system-requirements.html#MultipleCPUs +# +# q. How many should I set? +# a. Unknown, you will have to try it and see! +# +# To get you started, some suggestions: +# +# copies - This config file defaults to testing only 1 copy. You might +# try changing it to match the number of cores on your system, +# or perhaps the number of virtual CPUs as reported by: +# grep -c processor /proc/cpuinfo +# Be sure you have enough memory. See: +# https://www.spec.org/cpu2017/Docs/system-requirements.html#memory +# +# threads - This config file sets a starting point. You could try raising +# it. A higher thread count is much more likely to be useful for +# fpspeed than for intspeed. +# +intrate,fprate: + copies = 1 # EDIT to change number of copies (see above) +intspeed,fpspeed: + threads = 4 # EDIT to change number of OpenMP threads (see above) + + +#------- Compilers ------------------------------------------------------------ +default: +# EDIT: The parent directory for your compiler. +# Do not include the trailing /bin/ +# Do not include a trailing slash +# Examples: +# 1 On a Red Hat system, you said: +# 'dnf install gcc-toolset-11' +# Use: % define gcc_dir "/opt/rh/gcc-toolset-11/root/usr" +# +# 2 You built GCC in: /disk1/mybuild/gcc-11.2.0/bin/gcc +# Use: % define gcc_dir "/disk1/mybuild/gcc-11.2.0" +# +# 3 You want: /usr/bin/gcc +# Use: % define gcc_dir "/usr" +# WARNING: See section "Older GCC" above. +# +%ifndef %{gcc_dir} +% define gcc_dir "/usr" # EDIT (see above) +%endif + +# EDIT: If your compiler version is 10 or greater, you must enable the next +# line to avoid compile errors for several FP benchmarks +# +%define GCCge10 # EDIT: remove the '#' from column 1 if using GCC 10 or later + +# EDIT if needed: the preENV line adds library directories to the runtime +# path. You can adjust it, or add lines for other environment variables. +# See: https://www.spec.org/cpu2017/Docs/config.html#preenv +# and: https://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html + preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64 + #preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64:%{ENV_LD_LIBRARY_PATH} + SPECLANG = %{gcc_dir}/bin/ + CC = $(SPECLANG)gcc -std=c99 %{model} + CXX = $(SPECLANG)g++ -std=c++03 %{model} + FC = $(SPECLANG)gfortran %{model} + # How to say "Show me your version, please" + CC_VERSION_OPTION = --version + CXX_VERSION_OPTION = --version + FC_VERSION_OPTION = --version + +default: +%if %{bits} == 64 + sw_base_ptrsize = 64-bit + sw_peak_ptrsize = 64-bit +%else + sw_base_ptrsize = 32-bit + sw_peak_ptrsize = 32-bit +%endif + + +#--------- Portability -------------------------------------------------------- +default: # data model applies to all benchmarks +%if %{bits} == 32 + # Strongly recommended because at run-time, operations using modern file + # systems may fail spectacularly and frequently (or, worse, quietly and + # randomly) if a program does not accommodate 64-bit metadata. + EXTRA_PORTABILITY = -D_FILE_OFFSET_BITS=64 +%else + EXTRA_PORTABILITY = -DSPEC_LP64 +%endif + +# Benchmark-specific portability (ordered by last 2 digits of bmark number) + +500.perlbench_r,600.perlbench_s: #lang='C' +%if %{bits} == 32 +% define suffix IA32 +%else +% define suffix X64 +%endif + PORTABILITY = -DSPEC_LINUX_%{suffix} + +521.wrf_r,621.wrf_s: #lang='F,C' + CPORTABILITY = -DSPEC_CASE_FLAG + FPORTABILITY = -fconvert=big-endian + +523.xalancbmk_r,623.xalancbmk_s: #lang='CXX' + PORTABILITY = -DSPEC_LINUX + +526.blender_r: #lang='CXX,C' + PORTABILITY = -funsigned-char -DSPEC_LINUX + +527.cam4_r,627.cam4_s: #lang='F,C' + PORTABILITY = -DSPEC_CASE_FLAG + +628.pop2_s: #lang='F,C' + CPORTABILITY = -DSPEC_CASE_FLAG + FPORTABILITY = -fconvert=big-endian + +#---------------------------------------------------------------------- +# GCC workarounds that do not count as PORTABILITY +#---------------------------------------------------------------------- +# The workarounds in this section would not qualify under the SPEC CPU +# PORTABILITY rule. +# - In peak, they can be set as needed for individual benchmarks. +# - In base, individual settings are not allowed; set for whole suite. +# See: +# https://www.spec.org/cpu2017/Docs/runrules.html#portability +# https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# +# Integer workarounds - peak +# + 500.perlbench_r,600.perlbench_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/500.perlbench_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only + 502.gcc_r,602.gcc_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fgnu89-inline + 505.mcf_r,605.mcf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/505.mcf_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 525.x264_r,625.x264_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/525.x264_r.html + EXTRA_CFLAGS = -fcommon +# +# Integer workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + intrate,intspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only -fgnu89-inline -fcommon +# +# Floating Point workarounds - peak +# + 511.povray_r=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/511.povray_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 521.wrf_r,621.wrf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/521.wrf_r.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + 527.cam4_r,627.cam4_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/527.cam4_r.html + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + # See also topic "628.pop2_s basepeak" below + 628.pop2_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif +# +# FP workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + fprate,fpspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + + +#-------- Tuning Flags common to Base and Peak -------------------------------- +# +# Speed (OpenMP and Autopar allowed) +# +%if %{bits} == 32 + intspeed,fpspeed: + # + # Many of the speed benchmarks (6nn.benchmark_s) do not fit in 32 bits + # If you wish to run SPECint2017_speed or SPECfp2017_speed, please use + # + # runcpu --define bits=64 + # + fail_build = 1 +%else + intspeed,fpspeed: + EXTRA_OPTIMIZE = -fopenmp -DSPEC_OPENMP + fpspeed: + # + # 627.cam4 needs a big stack; the preENV will apply it to all + # benchmarks in the set, as required by the rules. + # + preENV_OMP_STACKSIZE = 120M +%endif + +#-------- Base Tuning Flags ---------------------------------------------- +# EDIT if needed -- If you run into errors, you may need to adjust the +# optimization - for example you may need to remove +# the -march=native. See topic "Older GCC" above. +# +default=base: # flags for all base + OPTIMIZE = -g -O3 -march=native + + +#-------- Peak Tuning Flags ---------------------------------------------- +default=peak: + OPTIMIZE = -g -Ofast -march=native -flto + PASS1_FLAGS = -fprofile-generate + PASS2_FLAGS = -fprofile-use + +# 628.pop2_s basepeak: Depending on the interplay of several optimizations, +# 628.pop2_s might not validate with peak tuning. Use the base +# version instead. See: +# https:// www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +628.pop2_s=peak: + basepeak = yes + + +#------------------------------------------------------------------------------ +# Tester and System Descriptions - EDIT all sections below this point +#------------------------------------------------------------------------------ +# For info about any field, see +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#hw_memory +#------------------------------------------------------------------------------- + +#--------- EDIT to match your version ----------------------------------------- +default: + sw_compiler001 = C/C++/Fortran: Version 13.2.0 of GCC, the + sw_compiler002 = GNU Compiler Collection + +#--------- EDIT info about you ------------------------------------------------ +# To understand the difference between hw_vendor/sponsor/tester, see: +# https://www.spec.org/cpu2017/Docs/config.html#test_sponsor +intrate,intspeed,fprate,fpspeed: # Important: keep this line + hw_vendor = Amazon Web Services + tester = TUM I13 + test_sponsor = TUM + license_num = nnn (Your SPEC license number) +# prepared_by = # Ima Pseudonym # Whatever you like: is never output + + +#--------- EDIT system availability dates ------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field + hw_avail = # Nov-2099 # Date of LAST hardware component to ship + sw_avail = # Nov-2099 # Date of LAST software component to ship + fw_bios = # Version Mumble released May-2099 # Firmware information + +#--------- EDIT system information -------------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field +# hw_cpu_name = # Intel Xeon E9-9999 v9 # chip name + hw_cpu_nominal_mhz = # 9999 # Nominal chip frequency, in MHz + hw_cpu_max_mhz = # 9999 # Max chip frequency, in MHz +# hw_disk = # 9 x 9 TB SATA III 9999 RPM # Size, type, other perf-relevant info + hw_model = # TurboBlaster 3000 # system model name +# hw_nchips = # 99 # number chips enabled + hw_ncores = # 9999 # number cores enabled + hw_ncpuorder = # 1-9 chips # Ordering options + hw_nthreadspercore = # 9 # number threads enabled per core + hw_other = # TurboNUMA Router 10 Gb # Other perf-relevant hw, or "None" + +# hw_memory001 = # 999 GB (99 x 9 GB 2Rx4 PC4-2133P-R, # The 'PCn-etc' is from the JEDEC +# hw_memory002 = # running at 1600 MHz) # label on the DIMM. + + hw_pcache = # 99 KB I + 99 KB D on chip per core # Primary cache size, type, location + hw_scache = # 99 KB I+D on chip per 9 cores # Second cache or "None" + hw_tcache = # 9 MB I+D on chip per chip # Third cache or "None" + hw_ocache = # 9 GB I+D off chip per system board # Other cache or "None" + +# sw_file = # ext99 # File system +# sw_os001 = # Linux Sailboat # Operating system +# sw_os002 = # Distribution 7.2 SP1 # and version + sw_other = # TurboHeap Library V8.1 # Other perf-relevant sw, or "None" +# sw_state = # Run level 99 # Software state. + + power_management = # briefly summarize power settings + +# Note: Some commented-out fields above are automatically set to preliminary +# values by sysinfo +# https://www.spec.org/cpu2017/Docs/config.html#sysinfo +# Uncomment lines for which you already know a better answer than sysinfo + +__HASH__ +505.mcf_r=base=c6itest-m64: +# Last updated 2024-06-27 08:47:11 +opthash=5737cf0e0d89c6869a2881cb41c2cd15f2e18ec5db2c750058f995d78d11b73f +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNq1Ul1PgzAUfedXNH2vm9EYt8gSYKgoo82ARH0hWMusQqu0mMxfb4GxucToXuxLb+89vR/n3EgK\ +VOWvrOAlA/JNcynU1FK65lRndSOeeJ19sJoXaxseQ8uYykCMfTQej6FleXhBpgCOGlWPHrkYrSgF\ +7UFKP9l0MmnN6uwUIAqQHAocSYDmMfE9c0Vz302vDCpQb4xm70rWehPNnDTBWZwSsvTjOMPEjxYE\ +oBVA+MRkzWv6bItc8w8GtgcVQqK+fZSXPFdcrHpnI1ReMPNNP6O2j4p/5l03fbjggushLMq18a5E\ +cz5BXJRcMPOksqqk6Kv0/YXETAYulGxqymbQ8qbA8+w/yeiB2L3BJLHhHjPQMmx6JL0MnavYxPZZ\ +6qKuH3nXmTcgDqQNWngKTL1gETz45tsPJHYQ/y5ZOrvs/81mN1Ffk+Bl4rhBGCT3w+AdwdAKg+j2\ +kB3rnb+ux4V8fGFUq1mLLKvd2mwVAKCTJ5wfouMBnJpcCye5zsLAbQktq016nLbafxP+C37ADqE= +exehash=c3ef8d086929e175d8c740f973851247759390233c84140a0f4310f137c36ff5 + +505.mcf_r=peak=c6itest-m64: +# Last updated 2024-06-27 08:48:21 +opthash=6804b57c3c4683509df403791e0b2fdb5e33b25419c71b81edddd2810afe1671 +baggage= +compiler_version=\ +@eNrtUMtqwzAAu/srdGxhC22y03ryTEINXWJsZ9BTyVzncbGL42z07+eUfsZAICQkHSSoUnswdvkq\ +peJNfWmETvROBmOwab8XFxfsiyzPdq95sTz02/bpEOZv9zANY8SGbZHv8gJVsBbK9/G3CxaVX9y1\ +i5N3L+DOZESP04yEfo3Nz9gBc1JxXJ0lGIveB5i0PbkhsbtO68KcAXq0aTX164akZuhcvB/gfIT9\ +se7R+ywlO9Ja0w9+4vqMZFVc16VSqBoJCkGl5qw9UQnRStGoMiNEpB/y/x/+AMbCphg= +compile_options=\ +@eNrFk1FvmzAUhd/5FZbVVzeJNU1qVSoBYS0bASuAtO7Foo5JvQWc2U6r/fuZurSrUmVk0zS/gHTO\ +tX3P9ZfJDrX1N96IDQdya4Ts9LmnjRLMULXrVkLRe65E88OHM+gZVYuOPghz58PHf+hZVdsqK59O\ +p1PoeVG+ILNzACc7rSa3opusGQP9QtqsfHZ21v+2798BxACSw6GnEqB5QeLIfrJ5HFZX1pXoLWf0\ +u5bKPKk0qMqcFhUhy7goaE7ibEEAarZK9i2gNe+4qg23xWuA8qbWtrKtFbvzu9qIe269GyPB80JN\ +J5HrF9UbUWvRrZ3gzkuJvSm40HKnGL+EXmRbiyL/t909OfPwY05KH77qFXp9QBGpPqTBVWHF1407\ +OYyz6JpGg2VkFNDLbS0JimJGh9K9cJzJ3itZJF9i6zgUlTPHn8tl8HKbN0Jzt3Y+ki/LIEzSpLwZ\ +unsMEnppkn0a9TjcbP54rBfy9itnRl/222zal3E/DwEAN6J0PmaYRwXWb7sIymuaJmGf1qYdjsqr\ +/i388hCWVWaFEybbtu5WDh78v+DZ6X/IDR7NDT7ADT7MDf4LbrDjBu9zY3Nx+nhk8Ehk8Dhk8PHI\ +HDPMkbTg0bQck1W/7R4t+E1afgKVOPDc +exehash=662c677d0f4477ff312c9eb7844c9c73439a46ba32eca9e13cdf6de287004be5 + +500.perlbench_r=base=c6itest-m64: +# Last updated 2024-06-27 08:50:47 +opthash=5bd0f9c928046a083e99de11face2bfb8b723401b2fc209a2a9d57c5d6ced82c +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNrVU8GOmzAQvfMVFneHVK2qJlpWAuIktCS2MEhpLxZLTNYtmJVNVt1+fQdI0kbdqntoD7WEGM+M\ +5s3Me962GjfFF1mpWqL2oVOttnPHdkaVnTBHvVdGPEqjqifffeU6YFpIAXsynU5dx4nohs2R6x2t\ +8e6U9g5lifqDbbf3y9msN5u3bxAuEW7PAJMW4QVnJILfdkHCfAUGI2kiIpoShOMJfHtlOy+mYJUP\ +hfYy1Ui8Vqm0Z8862ySYFcZKAy75tfOMBMM+yNIUeg8lFzQPEyJ4EvA14aJHjIPEn57QRZBnVPCc\ +sZRwLigj2w2DmEiCdEXEMk4Iv1z7m+A0TyPS+4YrXS45yUQYZ9yHGRE+IExfw8CFKe99XXTqUaLT\ +OUEm8Tbfid2QXekWj5vGRa0Kq/RhdB61LSoJZbp73K+sUd+KYXFjuFJadeewrp/Ae9DHdzOsdK00\ +7KAq26Zp9RUu6yFvbHs0pbx1nWiOosj/I29jIg3fU5b57hWJrgPERyxfJsGKQ+ya0CEakm20FpeE\ +/55h16FzBJuIN/EnAhM9Q/cwN6NpFoRxEmcfz4v5QfxQhOyyNBDReTX/WglDVyPms72xvi3o8MNL\ +nvLo/J3Uf9U5nJv27rMsO3vbJ9QNujyKi5oQGqSWLF6iyb/CAqBtgmwNrrCnoG5ODdC8V/pPMv8O\ +33uEXg== +exehash=da51419028397adf783795465d5e7d46b7544819a1fdd34a01c495940d38a15e + +502.gcc_r=base=c6itest-m64: +# Last updated 2024-06-27 08:51:32 +opthash=84aa2d950cccb6fb8bcbdd2eabcd22c071c78c26fd529e000c30672e1575b736 +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNq1UtFumzAUfecrLL87Sbd1WqJSCRyaeCPYCjBte7GoY1JvYHcYKrVfXwOlW6Vqy0stIa7uPb73\ ++JybGI3q4pcsVSWBuW2V0Xbl2bZRouVNpw+q4XeyUeW9D8+g50LrIC6eLRYL6HmY7tgKwHlnm/m1\ +0vOjEKA/yLYHXyyXfVh//ACQAMhMA2YGoHXKIux+yToK8w1AZNZ/c6VF1R3kENtbKfhva5r2Cc7P\ +F++mMMgzytOcsX2UppyyKNkxVyMJ3+C+7zb4GnFMkyuy4VtH4ggQfe+4FI248XXRqjsJng8qtUHj\ +o1FRqcIqfRyTnbZFKd219gb17Gv1UAxvGMul0qqdyrq6d9mj7j4tkdKV0u4ZpTB1bfQ4ZWQeM6cH\ +uLCma4S8hB5eAYz9/0o4Amn4mbLMhy/0hJ7zALP8Kg42qau91HaohlGCt3wCvKnY0KMr4EiSHfkR\ +uWGvKD9Aom/ZPuB44vTWFgwyjDMZ3WdBSGKSfZ/UGlyBXkySL6es85j8505dmOufUrT2skdW9Z9d\ +e7YNgMHTeH2K+Sdo6nrtgmzLYxL2glb1U3ua9wvz17Y8AtEfKzw= +exehash=819acba0a47fd12bc3c7da7c85264941d8f89011df65195a6ab53f5e5fbd60d0 + +525.x264_r=base=c6itest-m64: +# Last updated 2024-06-27 08:51:46 +opthash=0afeb5ce7b3395d1b57166aa3e47fd089b6cf4afeb7ab0e5b2a8830cc74f222e +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNrtU99vmzAQfuevsHh3Sdssa6JSCQhr2Qi2+CG1e0HUMalbsCcMVdq/fgZCl0hVm5dp0oRfON8d\ +d+fvuy8QHJbZE81ZQYH4VTPB5UKTdcVInVYNX7MqfaYVy19M/VTXlClVirJPJpOJrmkOWuEF0I1G\ +VsY948aGENAeKOu1Sebz1ixnUwAJgGJocCIAXEbYddQnWLp2cg2gV6wpEetUVsRgXGV727PZtL3u\ +mQbd1lUm9z1ElKXgu3qplcQojRKMQzeKUoTdYIUPYvZd7KJw6YbmZHt6dj79Mvt6oUbcAIjO1aRZ\ +RR5MntXsmYK3A3MuYA8JzAqWScY3vbPhMsup+q1+gO3bSvaadS/swznjrB7CvHhR3g1vLuaQ8YJx\ +qq676bsu/ZQ+VmiBSymaitArXXMWwHHMTwHuE5H9HeHY1A/Q1jXFkIOTb751HanYIfJd1HYD5yYd\ +Ev4hFbqGFkA9wVt5P101yju8dCnubRxaqTNM/LcJ6kDqe2IUxpbt+V58N2DZcaZrvhf8OEYKvfPD\ +jbsU94+U1PKqzSzKP5v4RioAHeP+8pjVOAJTVWtlxTep79ktoEW5K4+Sdp32dmlU/Kj4UfGj4kfF\ +j4ofFf9/Kv43V6SZEg== +exehash=01416fd84991bd7d6baf896abc1c1c5b67a6cbe5009d630c32adf0b3f31d9593 + +557.xz_r=base=c6itest-m64: +# Last updated 2024-06-27 08:51:50 +opthash=db207b5f813628e5cd301cc205d208b033d0bd4d144e6245ed5ac334901d565a +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNrtVN9vmzAQfuevsHh3frRd10SlUkLchC1gRGBq+2I5jkm8gh1hUq3962egtESttrzsbZbA992d\ +7+C7Tw6UhDl95KnIOFD7Uiipx5YuC8FKUhzkRhTkiRcifXbsoW0ZU5sUY/cGg4FtWS72wzGw+wdd\ +9NdC9reMgWpBXW4cNhpVZn55ASADULUNegrA2SpErtmCGZom81dMJkmMyfQ+RjiaocgZ/BqenV98\ +ufx6ZRIWkx+IuDi49eZk4QzbIz7yiYdbdPdwVGqVhGGEViuCQxT4IYBezzx6zxnJeU6EqtCOwjOz\ +M5XnShojE+vsJad9uhcdVL068EM223H22MFa5HvD6btjw7OSHhXsgILKLWdqwwtD2BZAfG54owXb\ +OZKW4omDtwVTqWAzIEgzQbWQ28Z5kJqm3Bwrd7BiOhcvtOa7CadCirINy+zZeLfycDWCQmZCmi9N\ +X/+p7tKQuAzN7MC1VoeC8RvbcsfAdZ2/jrtJxNNvOIwd+2j2tmX04obJ7XIyX5nYsQ7q6BQF7oIc\ +JfwXBi9sC4+BIdTzvQdkiPlEJXUKuoujCXFb/v61XOqRNT1DHMWTqbf04vu3wVUKsq2lF3w/5Zpo\ +nH/U/7Va/+Ss1Degs971BUAtvuXsFJWeQGhdCyeVjDsa/g0wE5s9 +exehash=acb8529a5e3479c88f091ea0f1bef7200dd16b81160a52c3b7c015d2bfe2c122 + +999.specrand_ir=base=c6itest-m64: +# Last updated 2024-06-27 08:51:51 +opthash=931cfbab34441c8f31ca9285c2a67f7e5e211e6824cf85c11aafbbf579d17f25 +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNq1UlFPgzAQfu+vaPrebUZjHJElG8OJMiAbS9QX0nWFVaFdWlgyf70Fgm7G6F68F4777u67+66B\ +FLggbyzlOYNyV3IptAV0qTgtE1WJDVfJnimeHmx0gYBxtUkxfm8wGCAAnHAeWRD1K636ay76GaWw\ +NqzLjU2Hw9otrq8gphDLjqAnIZ4uI9cxn2DqTlYziD29Y1QRscFUFoUUpi6DOLw05UTRrS1IyfcM\ +fhpOhcTtnJjknGgusjZYCU1SZsrKLa4JC/5OGtoWTrngZQeL/GCimahuhpiLnAtmfrsBapZmzMSP\ +zArwVstKUTZCwLGg49h/bt0mhpOHMIptdCIBAkY2J1rd+ePZ0mCncjToxA2c+6RL+K4PAqEFTV9v\ +7r24Bv9BrCbFfYoX48Tp2vy3as3kLWcULuLxxPO9+LlbsBESAd8LHs95NG3w12dwK9evjJZ6BI/s\ +S2YImxv403OOdYagTa9wVV/z6JQfz5n7Ig== +exehash=cec9428ef810cda0cdbbda5c0004d7a8a485862af3c544e720395406a63b22de + +520.omnetpp_r=base=c6itest-m64: +# Last updated 2024-06-27 08:52:52 +opthash=7170896242f47d9d1bbaf67da665ab85d63038e800e0b4c26958ce80f7bad925 +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNq1UUtPg0AQvvMrJnslWzAaD6Q04bG2KGU3PGL1QihsK1rYhoeJ/94tltgmRntxLjOZ5/d9E4ga\ +V9kb35Q7DmLflaJuDaXtmjLv0qavi7JJ33lTbj5MdIUUGbayRcYTXdeRojh0yQxAWt822rqsta2q\ +wsFw2xVmrqr6NeDq9gZwDliMByYCsBsx4kgXuMRO5oC9tqz6XdaJRttLV/D9aU7GlSj4Tg48evEi\ +DUhsJ57vkvC4KbWSmKZRwlhIoiiljARLJmFsAdMDhKzJX8w668p3DqMdJ30m8cG0FX2T8xlSHAOc\ +1cr8k9PYSe17ymITnVFEipTFYcmdb80jWTunO1RtEjiLdGz4D/5IoQZIbN7Seybyxg9iDEjIKg6t\ +lNEwtmzP9+KnEfCgDVJ8L3i45Mlfyd8kh6lYv/K8a2dwYt+yAQyq+u4l8l9AbthFk8N3Tl7zCQlV\ +2HQ= +exehash=b98c3655648414264b6708282e0f735e987abd609b58f4f492951afed00a5da9 + +523.xalancbmk_r=base=c6itest-m64: +# Last updated 2024-06-27 08:53:31 +opthash=33fe2c11095c98ec29f6fc686a6380260f271a7bab6c5a1db6ac89895719188f +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNrtVN1umzAYvecpLG4jQrZVu4hKJQe8lA6whWFiu7GooZk3sCtMovbtZ0C0ZOu0StPuZgnx/ZzP\ +NucckSjptOX3+k40NVD3vVBSby3dd4L3rDvKSnTsVHfi7tGz39iWCbWBmHi92Wxsy/JxTLbAdo+6\ +c2+FdA+rFRiWo/vK46vV5h1w2vcXwOHAUfMBawWcgBLkm1cSoF2+NwMBJIQlmGXXKYIBNYUCRjBh\ +YRKjmMV0zyIMA5QCJ1yb56HueK35c+RWqj3PXNHeN4uSLh8W2bEXjRvrQ6TKynyVG8q4blX3+DMk\ +60qpuZowXMnTACibUnJXSN4cq9pclaT4hhVxRGBKhys+FfIsjOZ0atI5pbC48BfJ2zkOcDyHn2AU\ +BjDD45TZjuUUzYwgSuEezaSMfDKYZ5jRnJDUdBkmKIkJcA7AwYMOZce/erLsxakeNZpmojDJC7As\ +ECMYuNTqaGi4si1/C/yi8P4o8ozEuxtMMs8+09y2jE98kn+I4J6a3rn+Y3eHEv+amQ2eMP8t8W8s\ +YVt4C4xGYRx+QYboFwwyKkJwmsFdGIXZ51myyS5jFxVZCtmLGDK4wSA/vubfMBV/Y9JfXXqpbr/V\ +vNdXYLGejQbA6MMoeI1h/5qG8SScD25fWP0Hz/mUwg== +exehash=183abcc0cc08586789e438463e5711c1db96c362d9ee7865f408410700819d6c + +531.deepsjeng_r=base=c6itest-m64: +# Last updated 2024-06-27 08:53:34 +opthash=07012bbeb02623a9b192a4e2da6bb7b84266044e1ece5ba0911465810254d88d +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNqNUV1vgjAUfe+vuOkrqbJs2QMRE8DOsQFt+Eh0L40ium4TloIm+/crTKImy8Z96W3vuefecxpV\ +Jdmv3out/Cig+mxkVdYWqhsl80aoQ7mRShwLJbdfNr7BSKe1huh8ZJomRshjIbcAjw+1Gq9lOd4Z\ +BrRB6mZj54Zh3gLZ398ByYFU/YBRBWSWcOrpI5pRN5u399AJAhHSkMXLU1k4WcpEknEe0yQRjNMo\ +5Jp7B4S1vCuVv9rlqpHHAvo4dQZcD4VJXR1UXkwx8izwFgv730V7JHOfGE9tfLU3Rlqrx7OHwJkn\ +unatoau6NPIexRkwUBRGzAI90A/9F6obf1HY0dNFGjuCszh1XD/w02W/RScYo8CPnod8x8/jXz7C\ +pFq/FXlTT+Eizl4AdFYFsyGeDhDXcbGstfzC728z2Lls +exehash=98de8bf384c125395fe5156fb9438fe092b94ac97dcbe4e2b23c2ada5f2a6e6f + +541.leela_r=base=c6itest-m64: +# Last updated 2024-06-27 08:53:38 +opthash=2f1f63df0864751b52a7f6e3cfd3684a57c27f1a4cfb14559bd66349a00db30e +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNqNUNFOwjAUfe9X3PR1KcxofFgYyTYqTsfasC1BXxoYA6uymnaQ+PeWwSIkBrkvvbn39Jx7Tqpq\ +spl/VCv5WYH6aqSqjYdMo2XZCL2tl1KLXaXl6tvHNxjZ1liI7Xuu62KEIjbhHuD+1uj+Qtb9tePA\ +vohpln7pOO4tkM39HZASiOoEegrIKOM0sk86omExBhL3jjMRFDkTWcH5lGaZYJymE24J10DYnmyu\ +yze/njdyV0FXx58Jt0owMGqry2qIUeRBNJv5/17XIVn4xHju47NjMbIGI148JME4s7vzw9ttSNPo\ +UXSAy04wYh5YlXgSv1KL/sNWy0ln+TQQnE3zIIyTOH/ppFuXGCVx+nxN8IfhpfBgoBbvVdmYIZzU\ +bwAAbT7J6JogrzDXcrFin/NJyD/OSrJw +exehash=2c0af257071500bf32683ff3c5d93f22651e278dadbe5469d5dc7cbbce6960a2 + +548.exchange2_r=base=c6itest-m64: +# Last updated 2024-06-27 08:55:19 +opthash=22486be71bab3ebdc2399d31e9cc31a24122adedea4fb03610264eb5ac8c6376 +baggage= +compiler_version=\ +@eNotjsFqwzAQRO/6ijkm0JrE7qk5ucJKBallZLnQU3AdOdZFKrLckr/vOgQWhhlmHgvBz5+VbqWq\ +z6oxJK/sWHcQIabYe2y678WnBfsiy7Pdc14sd/+yfSSMh59bdNcpYcO3yHd5ARGtRRvG9NdHS6TF\ +X/rkgn+C9EPGzORm0I1rbX7UDpjJpWlNljhYjCFiILbzV1J/cSthzgAzWaLSvlaMlvRkuh3gQ4L9\ +tf6++6g0fy9rU77JkzRfoEhIU1dtC6E0SjSlNpJ3p1Kj6XSj2ipj/9/qVFs= +compile_options=\ +@eNqtkFFPgzAUhd/5FU3fYTMaE8lYAqybKKPNgER9aRgrs+ooadmi+/UWNnGaJfJgX3qbe3rPuV8k\ +SnOTvbKCvzEgqpqLUtmGqiXPayq35YpLumOSFx8OvICGLpWW6NoaDofQMKaE2ACqiuVVBcxJTJCv\ +r2iCvHR2fFM3TTCNU0IWKI4pJiiak69eSK6vwEiJrczZGJiiq62iqvierazi5h0a2sQn6TR0Z7ED\ +f9m0XQ9F/i39ITjr24rRQ7JwKcGLxPWCMEgeuy9NHGj4eN5sNdgqOVjycrAuhKxlVoLvY250bjNv\ +Eh+pWQKYa2DiS93LZP7slFnNd6xbSI+1wdR3/hx7EGLvDpNEBzv1+FcQ2AbaIZgHT0grz0TvxSoM\ +ovs+rA7VOUDdGYnlC8trNQann7vlAWjJhJM+CHss187CacP4BPAndKLddA== +exehash=94f8ce66afd6ebe33a163a04e457e06501b1cb938789a08a98395f3f6afb6075 + +500.perlbench_r=peak=c6itest-m64: +# Last updated 2024-06-27 08:58:19 +opthash=26746eefd4c701d69be2dd89ab217f8349f05d47b236ed37fbc9e2bcc764ae86 +baggage= +compiler_version=\ +@eNrtUMtqwzAAu/srdGxhC22y03ryTEINXWJsZ9BTyVzncbGL42z07+eUfsZAICQkHSSoUnswdvkq\ +peJNfWmETvROBmOwab8XFxfsiyzPdq95sTz02/bpEOZv9zANY8SGbZHv8gJVsBbK9/G3CxaVX9y1\ +i5N3L+DOZESP04yEfo3Nz9gBc1JxXJ0lGIveB5i0PbkhsbtO68KcAXq0aTX164akZuhcvB/gfIT9\ +se7R+ywlO9Ja0w9+4vqMZFVc16VSqBoJCkGl5qw9UQnRStGoMiNEpB/y/x/+AMbCphg= +compile_options=\ +@eNrtVFFv0zAQfs+viCJevXYRQtpEJqWpuwbS2ooTafBiZanTGRqnst3B+PXYdVuYOm0BhgQIS1XP\ +d5e7831337wToK0+soavmN+tNe+EOveUlrzWVG7Egkt6yyRv7qLgNPC0rLign7i+iYKtHHjGqsxX\ +xnwyHA4Dz0vQDJ+e+8Fgo+TgmovBsq59e4DSi6g+O7Ni++qlD2ofdPukJ50PxgTDxPzNx3BUXhoB\ +wzyjCcqhD9IT81twpQcpMlK9rsSg4C0DU54ztddMi1kGcCUVk0bFPuuBZEZQa1bLSixMyDEqRxmk\ +JIvJFBJqM6ZxFg132WlcFoiSEuMcEkIRhvMZNjaaxfklpJM0g+RwtTdKUJkn0Oq2VzSZEFjQUVqQ\ +yLzRB81adra7YMkEk5VmRrf0AWoqpU0fKlnfRKLS/NYU2qx05+/Orp4snZdX9MqFEh1w0IBqxSvF\ +xdIpN0JVDTPB9A2w/Wz5l2rbVWduuOB6bxaru3vxsQ39WnUbWbOLwEsMdEkSPYnezhON3iBcRME9\ +LAPPDkCCy0kWXxJjvA+sM4/gPJnSg8dfD3XgIfMqHBNyenjVEfbOyXQsnaXvofF4bBJcnzDKi3iU\ +Zmnxbt/Jb0Ph4sGrIo9pcsj6TGPi8rvgD1aBbQGmlre91n2r+6ltOF4Fc1531x9YrdWFdVi1/mFv\ +DmPo+25Is3GfcX5uYGzmWVxMjW5kUVm1+2pQaRfmu23Jy7kxvKi7tjWT6xg0/M+gRwy6UX86eYa9\ +yTN8hDzDx8kz/CfJM3TkGR6Tp4Hd2fuvZ/g0b4a/kzfDfrwZ/jhv9tyBX6HMsDdlPjMmNvMRZYYP\ +UuZXamMstg== +exehash=90f4c9c52de6dda1786d304e36f66611bb9d014dd912dc84023e8306644b6e51 + diff --git a/example-benchmarks/spec_cpu_all_cores/configuration.yml b/example-benchmarks/spec_cpu_all_cores/configuration.yml new file mode 100644 index 0000000..cce6ef1 --- /dev/null +++ b/example-benchmarks/spec_cpu_all_cores/configuration.yml @@ -0,0 +1,300 @@ +configuration: + name: "SPEC CPU2017 Integer Rate - All Cores" + description: "Benchmark analyzing CPU throughput using all cores (include multithreading)" + directory: spec_cpu_all_cores + cron: "0 * * * *" + instance-number: 1 + instance-types: + - c3.2xlarge #Intel + - c4.2xlarge + - c5.2xlarge + - c6i.2xlarge + - c7i.2xlarge + + - m5a.2xlarge #AMD + - c5a.2xlarge + - c6a.2xlarge + - c7a.2xlarge + + - a1.2xlarge #Graviton + - c6g.2xlarge + - c7g.2xlarge + - c8g.2xlarge + +nodes: + - node-id: 1 + ansible-configuration: ansible.yml + image-x86: ami-040ae5b7ceb70e213 + image-arm: ami-0fb858c88e8a6483e + benchmark-command: ./run_spec.sh + output-command: python3 format_output.py /home/ubuntu/specbench/result/CPU2017.001.intrate.csv + +plots: + - type: scatter + title: SPEC CPU 2017 Total Score + yaxis: Score + series: + - y: SPECrate2017_int_base + legend: Int Rate Base + - y: SPECrate2017_int_peak + legend: Int Rate Peak + + - type: scatter + title: 500.perlbench_r - Execution Time + yaxis: Time [s] + series: + - y: 500_perlbench_r_base_selected_time + legend: Selected Base Time + - y: 500_perlbench_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 500_perlbench_r_peak_selected_time + legend: Selected Peak Time + - y: 500_perlbench_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 500.perlbench_r - Ratio + yaxis: Ratio + series: + - y: 500_perlbench_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 500_perlbench_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 500_perlbench_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 500_perlbench_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 502.gcc_r - Execution Time + yaxis: Time [s] + series: + - y: 502_gcc_r_base_selected_time + legend: Selected Base Time + - y: 502_gcc_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 502_gcc_r_peak_selected_time + legend: Selected Peak Time + - y: 502_gcc_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 502.gcc_r - Ratio + yaxis: Ratio + series: + - y: 502_gcc_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 502_gcc_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 502_gcc_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 502_gcc_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 505.mcf_r - Execution Time + yaxis: Time [s] + series: + - y: 505_mcf_r_base_selected_time + legend: Selected Base Time + - y: 505_mcf_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 505_mcf_r_peak_selected_time + legend: Selected Peak Time + - y: 505_mcf_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 505.mcf_r - Ratio + yaxis: Ratio + series: + - y: 505_mcf_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 505_mcf_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 505_mcf_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 505_mcf_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 520.omnetpp_r - Execution Time + yaxis: Time [s] + series: + - y: 520_omnetpp_r_base_selected_time + legend: Selected Base Time + - y: 520_omnetpp_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 520_omnetpp_r_peak_selected_time + legend: Selected Peak Time + - y: 520_omnetpp_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 520.omnetpp_r - Ratio + yaxis: Ratio + series: + - y: 520_omnetpp_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 520_omnetpp_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 520_omnetpp_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 520_omnetpp_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 523.xalancbmk_r - Execution Time + yaxis: Time [s] + series: + - y: 523_xalancbmk_r_base_selected_time + legend: Selected Base Time + - y: 523_xalancbmk_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 523_xalancbmk_r_peak_selected_time + legend: Selected Peak Time + - y: 523_xalancbmk_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 523.xalancbmk_r - Ratio + yaxis: Ratio + series: + - y: 523_xalancbmk_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 523_xalancbmk_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 523_xalancbmk_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 523_xalancbmk_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 525.x264_r - Execution Time + yaxis: Time [s] + series: + - y: 525_x264_r_base_selected_time + legend: Selected Base Time + - y: 525_x264_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 525_x264_r_peak_selected_time + legend: Selected Peak Time + - y: 525_x264_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 525.x264_r - Ratio + yaxis: Ratio + series: + - y: 525_x264_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 525_x264_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 525_x264_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 525_x264_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 531.deepsjeng_r - Execution Time + yaxis: Time [s] + series: + - y: 531_deepsjeng_r_base_selected_time + legend: Selected Base Time + - y: 531_deepsjeng_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 531_deepsjeng_r_peak_selected_time + legend: Selected Peak Time + - y: 531_deepsjeng_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 531.deepsjeng_r - Ratio + yaxis: Ratio + series: + - y: 531_deepsjeng_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 531_deepsjeng_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 531_deepsjeng_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 531_deepsjeng_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 541.leela_r - Execution Time + yaxis: Time [s] + series: + - y: 541_leela_r_base_selected_time + legend: Selected Base Time + - y: 541_leela_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 541_leela_r_peak_selected_time + legend: Selected Peak Time + - y: 541_leela_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 541.leela_r - Ratio + yaxis: Ratio + series: + - y: 541_leela_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 541_leela_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 541_leela_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 541_leela_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 548.exchange2_r - Execution Time + yaxis: Time [s] + series: + - y: 548_exchange2_r_base_selected_time + legend: Selected Base Time + - y: 548_exchange2_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 548_exchange2_r_peak_selected_time + legend: Selected Peak Time + - y: 548_exchange2_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 548.exchange2_r - Ratio + yaxis: Ratio + series: + - y: 548_exchange2_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 548_exchange2_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 548_exchange2_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 548_exchange2_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 557.xz_r - Execution Time + yaxis: Time [s] + series: + - y: 557_xz_r_base_selected_time + legend: Selected Base Time + - y: 557_xz_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 557_xz_r_peak_selected_time + legend: Selected Peak Time + - y: 557_xz_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 557.xz_r - Ratio + yaxis: Ratio + series: + - y: 557_xz_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 557_xz_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 557_xz_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 557_xz_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_all_cores/format_output.py b/example-benchmarks/spec_cpu_all_cores/format_output.py new file mode 100644 index 0000000..8508478 --- /dev/null +++ b/example-benchmarks/spec_cpu_all_cores/format_output.py @@ -0,0 +1,59 @@ +import re +import csv +import sys +import json + +def parse_spec_cpu_output(input_file): + with open(input_file, 'r') as f: + data = f.read() + + lines = data.strip().split("\n") + + parsed_data = {} + parse = False + for line in lines: + if line == "\"Full Results Table\"": + parse = True + elif line == "\"Selected Results Table\"": + parse = False + + if parse and re.match(r'^\d{3}\.[a-z0-9]+.+', line): + fields = next(csv.reader([line])) + name = fields[0].replace(".", "_") + base_run_time = fields[2] + base_rate = fields[3] + base_selected = fields[4] + peak_run_time = fields[7] + peak_rate = fields[8] + peak_selected = fields[9] + if base_selected == '1': + parsed_data[f'{name}_base_selected_time'] = float(base_run_time) + parsed_data[f'{name}_base_selected_ratio'] = float(base_rate) + else: + parsed_data[f'{name}_base_not_selected_time'] = float(base_run_time) + parsed_data[f'{name}_base_not_selected_ratio'] = float(base_rate) + + if peak_selected == '1': + parsed_data[f'{name}_peak_selected_time'] = float(peak_run_time) + parsed_data[f'{name}_peak_selected_ratio'] = float(peak_rate) + else: + parsed_data[f'{name}_peak_not_selected_time'] = float(peak_run_time) + parsed_data[f'{name}_peak_not_selected_ratio'] = float(peak_rate) + + spec_base = re.search(r'SPECrate2017_int_base,([\d.]+)', data) + spec_peak = re.search(r'SPECrate2017_int_peak,([\d.]+)', data) + + if spec_base: + parsed_data['SPECrate2017_int_base'] = float(spec_base.group(1)) + if spec_peak: + parsed_data['SPECrate2017_int_peak'] = float(spec_peak.group(1)) + + print(json.dumps(parsed_data, indent=4)) + +if __name__ == "__main__": + if len(sys.argv) != 2: + print("Usage: python format_output.py ") + sys.exit(1) + + file_path = sys.argv[1] + parse_spec_cpu_output(file_path) diff --git a/example-benchmarks/spec_cpu_all_cores/run_spec.sh b/example-benchmarks/spec_cpu_all_cores/run_spec.sh new file mode 100644 index 0000000..63b93c5 --- /dev/null +++ b/example-benchmarks/spec_cpu_all_cores/run_spec.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +arch=$(lscpu | grep "Architecture" | awk '{print $2}') +cores=$(( $(lscpu | grep "^CPU(s):" | awk '{print $2}') )) + +cd /home/ubuntu/specbench +source shrc +if [[ "$arch" == "x86_64" ]]; then + runcpu --config=config_x86 --iterations=2 --copies=$cores --reportable intrate >> log.txt +elif [[ "$arch" == "aarch64" ]]; then + runcpu --config=config_graviton --iterations=2 --copies=$cores --reportable intrate >> log.txt +fi diff --git a/example-benchmarks/spec_cpu_half_cores/ansible.yml b/example-benchmarks/spec_cpu_half_cores/ansible.yml new file mode 100644 index 0000000..76ec359 --- /dev/null +++ b/example-benchmarks/spec_cpu_half_cores/ansible.yml @@ -0,0 +1,80 @@ +--- +- name: Install and run sockperf + hosts: localhost + tasks: + - name: Ensure the directory exists + file: + path: /home/ubuntu/specbench + state: directory + mode: '0755' + + - name: Mount image + become: true + command: mount -t iso9660 -o ro,exec,loop cpu2017-1.1.9.iso /mnt + args: + chdir: /home/ubuntu + + - name: Install SPEC CPU + command: ./install.sh -f -d /home/ubuntu/specbench + args: + chdir: /mnt + + - name: Copy x86 config + copy: + src: /home/ubuntu/spec_cpu_half_cores/config_x86.cfg + dest: /home/ubuntu/specbench/config/config_x86.cfg + + - name: Copy ARM config + copy: + src: /home/ubuntu/spec_cpu_half_cores/config_graviton.cfg + dest: /home/ubuntu/specbench/config/config_graviton.cfg + + - name: Add flags tags to gcc.xml + community.general.xml: + path: /home/ubuntu/specbench/config/flags/gcc.xml + xpath: /flagsdescription + add_children: + - flag: + name: std-c-plus-plus-14 + regexp: -std=c\+\+14 + class: portability + - flag: + name: Wno-error-register + regexp: -Wno-error=register + class: portability + state: present + pretty_print: yes + + - name: Add placeholder for C++14 description + community.general.xml: + path: /home/ubuntu/specbench/config/flags/gcc.xml + xpath: /flagsdescription/flag[@name='std-c-plus-plus-14'] + value: DESCRIPTION_STD_C14 + state: present + pretty_print: yes + + - name: Add placeholder for WNo-Error description + community.general.xml: + path: /home/ubuntu/specbench/config/flags/gcc.xml + xpath: /flagsdescription/flag[@name='Wno-error-register'] + value: DESCRIPTION_WNO_ERROR + state: "present" + pretty_print: yes + + - name: Replace DESCRIPTION_STD_C14 + replace: + path: /home/ubuntu/specbench/config/flags/gcc.xml + regexp: DESCRIPTION_STD_C14 + replace: Compile source code with C++14.

]]> + + + - name: Replace DESCRIPTION_WNO_ERROR + replace: + path: /home/ubuntu/specbench/config/flags/gcc.xml + regexp: DESCRIPTION_WNO_ERROR + replace: Disable treating the use of the 'register' keyword as an error.

]]> + + - name: Make run_spec.sh executable + file: + path: /home/ubuntu/spec_cpu_half_cores/run_spec.sh + mode: '0755' \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_half_cores/config_graviton.cfg b/example-benchmarks/spec_cpu_half_cores/config_graviton.cfg new file mode 100644 index 0000000..8d73351 --- /dev/null +++ b/example-benchmarks/spec_cpu_half_cores/config_graviton.cfg @@ -0,0 +1,698 @@ +#------------------------------------------------------------------------------ +# SPEC CPU2017 config file for: gcc / g++ / gfortran on Linux ARM systems +#------------------------------------------------------------------------------ +# +# Usage: (1) Copy this to a new name +# cd $SPEC/config +# cp Example-x.cfg myname.cfg +# (2) Change items that are marked 'EDIT' (search for it) +# +# SPEC tested this config file with: +# Compiler version(s): 5.3, 6.2 +# Operating system(s): Ubuntu 16.04 +# Hardware: Cavium ThunderX, HPE Moonshot +# +# If your system differs, this config file might not work. +# You might find a better config file at http://www.spec.org/cpu2017/results +# +# Known Limitations +# It is possible that you might encounter compile time or run time errors +# with older versions of GCC (for example, 4.x) +# Recommendation: Use a newer version of the compiler. +# If that is not possible, try reducing the optimization. +# +# +# Compiler issues: Contact your compiler vendor, not SPEC. +# For SPEC help: http://www.spec.org/cpu2017/Docs/techsupport.html +#------------------------------------------------------------------------------ + + +#--------- Label -------------------------------------------------------------- +# Arbitrary string to tag binaries +# Two Suggestions: # (1) EDIT this label as you try new ideas. +%define label spec_graviton # (2) Use a label meaningful to *you*. + + +#--------- Preprocessor ------------------------------------------------------- +%ifndef %{bits} # EDIT to control 32 or 64 bit compilation. Or, +% define bits 64 # you can set it on the command line using: +%endif # 'runcpu --define bits=nn' + +%ifndef %{build_ncpus} # EDIT to adjust number of simultaneous compiles. +% define build_ncpus 8 # Or, you can set it on the command line: +%endif # 'runcpu --define build_ncpus=nn' + +# Don't change this part. +%define os LINUX + +%ifndef %{model} +% if %{bits} == 64 +% define model -mabi=lp64 +% elif %{bits} == 32 +% define model -mabi=ilp32 +% else +% error Please define number of bits - see instructions in config file +% endif +%endif + + +#--------- Global Settings ---------------------------------------------------- +# For info, see: +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#tune + +command_add_redirect = 1 +flagsurl = $[top]/config/flags/gcc.xml +ignore_errors = 0 +iterations = 1 +label = %{label}-%{bits} +line_width = 1020 +log_line_width = 1020 +makeflags = --jobs=%{build_ncpus} +mean_anyway = 1 +output_format = txt,html,cfg,pdf,csv +preenv = 1 +reportable = 0 +tune = base,peak + + +#--------- How Many CPUs? ----------------------------------------------------- +# Both SPECrate and SPECspeed can test multiple chips / cores / hw threads +# - For SPECrate, you set the number of copies. +# - For SPECspeed, you set the number of threads. +# See: https://www.spec.org/cpu2017/Docs/system-requirements.html#MultipleCPUs +# +# q. How many should I set? +# a. Unknown, you will have to try it and see! +# +# To get you started, some suggestions: +# +# copies - This config file defaults to testing only 1 copy. You might +# try changing it to match the number of cores on your system, +# or perhaps the number of virtual CPUs as reported by: +# grep -c processor /proc/cpuinfo +# Be sure you have enough memory. See: +# https://www.spec.org/cpu2017/Docs/system-requirements.html#memory +# +# threads - This config file sets a starting point. You could try raising +# it. A higher thread count is much more likely to be useful for +# fpspeed than for intspeed. +# +intrate,fprate: + copies = 1 # EDIT to change number of copies (see above) +intspeed,fpspeed: + threads = 8 # EDIT to change number of OpenMP threads (see above) + + +#------- Compilers ------------------------------------------------------------ +default: +# EDIT: the directory where your compiler is installed +%ifndef %{gcc_dir} +% define gcc_dir /usr +%endif + +# EDIT if needed: the preENV line adds library directories to the runtime +# path. You can adjust it, or add lines for other environment variables. +# See: https://www.spec.org/cpu2017/Docs/config.html#preenv +# and: https://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html + preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64 + #preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64:%{ENV_LD_LIBRARY_PATH} + SPECLANG = %{gcc_dir}/bin/ + CC = $(SPECLANG)gcc -std=c99 %{model} + CXX = $(SPECLANG)g++ -std=c++03 %{model} + FC = $(SPECLANG)gfortran %{model} + # How to say "Show me your version, please" + CC_VERSION_OPTION = -v + CXX_VERSION_OPTION = -v + FC_VERSION_OPTION = -v + +default: +%if %{bits} == 64 + sw_base_ptrsize = 64-bit + sw_peak_ptrsize = 64-bit +%else + sw_base_ptrsize = 32-bit + sw_peak_ptrsize = 32-bit +%endif + + +#--------- Portability -------------------------------------------------------- +default: # data model applies to all benchmarks +%if %{bits} == 32 + # Strongly recommended because at run-time, operations using modern file + # systems may fail spectacularly and frequently (or, worse, quietly and + # randomly) if a program does not accommodate 64-bit metadata. + EXTRA_PORTABILITY = -D_FILE_OFFSET_BITS=64 +%else + EXTRA_PORTABILITY = -DSPEC_LP64 +%endif + +# Benchmark-specific portability (ordered by last 2 digits of bmark number) + +500.perlbench_r,600.perlbench_s: #lang='C' +%if %{bits} == 32 +% define suffix AARCH32 +%else +% define suffix AARCH64 +%endif + PORTABILITY = -DSPEC_%{os}_%{suffix} + +520.omnetpp_r: + PORTABILITY = -Wno-error=register -std=c++14 + +521.wrf_r,621.wrf_s: #lang='F,C' + CPORTABILITY = -DSPEC_CASE_FLAG + FPORTABILITY = -fconvert=big-endian + +523.xalancbmk_r,623.xalancbmk_s: #lang='CXX' + PORTABILITY = -DSPEC_%{os} + +526.blender_r: #lang='CXX,C' + PORTABILITY = -funsigned-char -DSPEC_LINUX + +527.cam4_r,627.cam4_s: #lang='F,C' + PORTABILITY = -DSPEC_CASE_FLAG + +628.pop2_s: #lang='F,C' + PORTABILITY = -DSPEC_CASE_FLAG -fconvert=big-endian + +#---------------------------------------------------------------------- +# GCC workarounds that do not count as PORTABILITY +#---------------------------------------------------------------------- +# The workarounds in this section would not qualify under the SPEC CPU +# PORTABILITY rule. +# - In peak, they can be set as needed for individual benchmarks. +# - In base, individual settings are not allowed; set for whole suite. +# See: +# https://www.spec.org/cpu2017/Docs/runrules.html#portability +# https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# +# Integer workarounds - peak +# + 500.perlbench_r,600.perlbench_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/500.perlbench_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only + 502.gcc_r,602.gcc_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fgnu89-inline + 505.mcf_r,605.mcf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/505.mcf_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 525.x264_r,625.x264_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/525.x264_r.html + EXTRA_CFLAGS = -fcommon +# +# Integer workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + intrate,intspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only -fgnu89-inline -fcommon +# +# Floating Point workarounds - peak +# + 511.povray_r=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/511.povray_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 521.wrf_r,621.wrf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/521.wrf_r.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + 527.cam4_r,627.cam4_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/527.cam4_r.html + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + # See also topic "628.pop2_s basepeak" below + 628.pop2_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif +# +# FP workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + fprate,fpspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + +#-------- Tuning Flags common to Base and Peak -------------------------------- + +# +# Speed (OpenMP and Autopar allowed) +# +%if %{bits} == 32 + intspeed,fpspeed: + # + # Many of the speed benchmarks (6nn.benchmark_s) do not fit in 32 bits + # If you wish to run SPECint2017_speed or SPECfp2017_speed, please use + # + # runcpu --define bits=64 + # + fail_build = 1 +%else + intspeed,fpspeed: + EXTRA_OPTIMIZE = -fopenmp -DSPEC_OPENMP + fpspeed: + # + # 627.cam4 needs a big stack; the preENV will apply it to all + # benchmarks in the set, as required by the rules. + # + preENV_OMP_STACKSIZE = 120M +%endif + + +#-------- Baseline Tuning Flags ---------------------------------------------- +# +default=base: # flags for all base + OPTIMIZE = -g -O3 -march=native + +intrate,intspeed=base: # flags for integer base +%if %{bits} == 32 + EXTRA_COPTIMIZE = -fgnu89-inline -fno-strict-aliasing +%else + EXTRA_COPTIMIZE = -fgnu89-inline -fno-strict-aliasing + LDCFLAGS = -z muldefs +%endif +# Notes about the above +# - 500.perlbench_r/600.perlbench_s needs -fno-strict-aliasing. +# - 502.gcc_r/602.gcc_s needs -fgnu89-inline or -z muldefs +# - 520.omnetpp_r needs -fno-new-ttp-matching (See https://inbox.sourceware.org/gcc-patches/20200629145741.GG3394@redhat.com/T/) +# - For 'base', all benchmarks in a set must use the same options. +# - Therefore, all base benchmarks get the above. See: +# www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# www.spec.org/cpu2017/Docs/benchmarks/500.perlbench_r.html +# www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html + +#-------- Peak Tuning Flags ---------------------------------------------- +default=peak: + OPTIMIZE = -g -Ofast -march=native -flto + PASS1_FLAGS = -fprofile-generate + PASS2_FLAGS = -fprofile-use + +# 628.pop2_s basepeak: Depending on the interplay of several optimizations, +# 628.pop2_s might not validate with peak tuning. Use the base +# version instead. See: +# https:// www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +628.pop2_s=peak: + basepeak = yes + + # + # ----------------------- + # About the -fno switches + # ----------------------- + # + # For 'base', this config file (conservatively) disables some optimizations. + # You might want to try turning some of them back on, by creating a 'peak' + # section here, with individualized benchmark options: + # + # 500.perlbench_r=peak: + # OPTIMIZE = this + # 502.gcc_r=peak: + # OPTIMIZE = that + # 503.bwaves_r=peak: + # OPTIMIZE = other .....(and so forth) + # + # If you try it: + # - You must remove the 'basepeak' option, above. + # - You will need time and patience, to diagnose and avoid any errors. + # - perlbench is unlikely to work with strict aliasing + # - Some floating point benchmarks may get wrong answers, depending on: + # the particular chip + # the version of GCC + # other optimizations enabled + # -m32 vs. -m64 + # - See: http://www.spec.org/cpu2017/Docs/config.html + # - and: http://www.spec.org/cpu2017/Docs/runrules.html + + +#------------------------------------------------------------------------------ +# Tester and System Descriptions - EDIT all sections below this point +#------------------------------------------------------------------------------ +# For info about any field, see +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#hw_memory +#------------------------------------------------------------------------------- + +#--------- EDIT to match your version ----------------------------------------- +default: + sw_compiler001 = C/C++/Fortran: Version 13.2.0 of GCC, the + sw_compiler002 = GNU Compiler Collection + +#--------- EDIT info about you ------------------------------------------------ +# To understand the difference between hw_vendor/sponsor/tester, see: +# https://www.spec.org/cpu2017/Docs/config.html#test_sponsor +intrate,intspeed,fprate,fpspeed: # Important: keep this line + hw_vendor = Amazon Web Services + tester = TUM I13 + test_sponsor = TUM + license_num = nnn (Your SPEC license number) +# prepared_by = # Ima Pseudonym # Whatever you like: is never output + + +#--------- EDIT system availability dates ------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field + hw_avail = # Nov-2099 # Date of LAST hardware component to ship + sw_avail = # Nov-2099 # Date of LAST software component to ship + +#--------- EDIT system information -------------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field + # hw_cpu_name = # Intel Xeon E9-9999 v9 # chip name + hw_cpu_nominal_mhz = # 9999 # Nominal chip frequency, in MHz + hw_cpu_max_mhz = # 9999 # Max chip frequency, in MHz + # hw_disk = # 9 x 9 TB SATA III 9999 RPM # Size, type, other perf-relevant info + hw_model = # TurboBlaster 3000 # system model name + # hw_nchips = # 99 # number chips enabled + hw_ncores = # 9999 # number cores enabled + hw_ncpuorder = # 1-9 chips # Ordering options + hw_nthreadspercore = # 9 # number threads enabled per core + hw_other = # TurboNUMA Router 10 Gb # Other perf-relevant hw, or "None" + +# hw_memory001 = # 999 GB (99 x 9 GB 2Rx4 PC4-2133P-R, # The 'PCn-etc' is from the JEDEC +# hw_memory002 = # running at 1600 MHz) # label on the DIMM. + + hw_pcache = # 99 KB I + 99 KB D on chip per core # Primary cache size, type, location + hw_scache = # 99 KB I+D on chip per 9 cores # Second cache or "None" + hw_tcache = # 9 MB I+D on chip per chip # Third cache or "None" + hw_ocache = # 9 GB I+D off chip per system board # Other cache or "None" + + fw_bios = # American Megatrends 39030100 02/29/2016 # Firmware information + # sw_file = # ext99 # File system + # sw_os001 = # Linux Sailboat # Operating system + # sw_os002 = # Distribution 7.2 SP1 # and version + sw_other = # TurboHeap Library V8.1 # Other perf-relevant sw, or "None" + # sw_state = # Run level 99 # Software state. + +# Note: Some commented-out fields above are automatically set to preliminary +# values by sysinfo +# https://www.spec.org/cpu2017/Docs/config.html#sysinfo +# Uncomment lines for which you already know a better answer than sysinfo + +__HASH__ +502.gcc_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:04:30 +opthash=f109483d241781652e51b7b88d11d9a21c1a4cb053bc972cd7a7fdcb122a309b +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNq1UtFumzAUfecrLL87SdttWqJSCRyaeCXYClBte7ESByJvYKcYKrVfX5uUNn1qHjZLiCPuMffc\ +c26iFao3f4tSVgXQh1ZqZWaeaRspWt50aicb/lg0snzy4QX0LDSWYvFoMplAz8N0xWYAjjvTjLdS\ +jfdCAHeQaXe+mE4drDdb6VeHb18AEgDpoc1IAzRPWYTtK5lHYb4AiIzcM5ZKVN2u6LE5FII/GN20\ +r3T+dXI5wCDPKE9zxtZRmnLKomTFbI0kfIHdf5fBfcQxTW7Jgi+tFHoFTg4q96r7PkVSVVLZbqXS\ +6Dg62lRyY6TaO9axVczsAODa6K4RxQ308Axg7J85+ZFOwx+UZT78YAP0rIGY5bdxsEht7aMlfTWM\ +ErzkA+G/egQ9OgNWJFmR35FtRq/6L9HPbB1Y0nvhc+t66ceLjK6zICQxyX4NE/Z+Qi8myd35+wPQ\ +M6i7aleUpiedxHlOltd6+6cQrblx/Kp+v/sWBgB9UvH8/GCpo+MhnDd9/9RIK2kVZEsek9A1qepX\ +lTR323SySi8GFRoV +exehash=5104cdfe94db9b351f6890ead073919d3dd7fcbe28495886f98c547b67586ef7 + +500.perlbench_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:20:40 +opthash=947c5d5bb410de4cb52ba0adb24d11823e0351a2d31dca231ec6a4a5b3e13e18 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNrVU12rmzAYvvdXBO9TO84Yazke0DStbmkTjMLZboK1acmmsRgd2/n1S+zHTmGwwi7GAuKbN8/7\ +/bybVsOm/Cr3qpagPfaq1Wbumb5TVS+6Qe9UJ77JTu1/hP4b37OisRArT6bTqe95iK7ZHPjBYLpg\ +q3RwqCrgDjT9LqxmMyc25VaF9fHdWwArANtLmEkL4IIzjOxvs8BxsbICwxkRiGYYwHRiv50yfZBS\ +K1XHUge5aiRMVCbNRZPkawJZ2RnZWZX83gedtII5yqor9c66XNAiJlhwEvEEc+EiphEJp+foIipy\ +KnjBWIY5F5ThzZrZN0GibIXFMiWYX6/uJjgtMoSdbrzS5ZLjXMRpzkNbI4D0AZzPOQJJN8WziKIM\ +JQ5g9fuDHt7PoNK10jbdvW7hqeewrFVplD68smbO6NG0Q1fJJ99Dc4BQeGfLT3Aaf6AsD/2b/vue\ +nRxixZJEK27fbmcxvsZ4gxJxBfz3w/E9Oge2E+k6/YxtRfRhLJPRLI/ilKT5p0sfbmc22uHnPIts\ ++b/M/zzF0f3J8LdBmPNtQ328f4cAfAHNUO/k3oygM9v+hmqP7faLrHrz5PB1A670vXIFgJFIZHE/\ +76iDowt3rjn/gxHYxNdRnlh/sUulbs610MKtxKt9+Anm8HdT +exehash=d05a3a8991d2354440134f80d8ee02b2ba72cbe3e9db2f47c33108e3298f4bae + +505.mcf_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:20:43 +opthash=2b4ee5d95adc68b4be57409edc22f0f0064766b5e23db32adb25cf345a157ec4 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNqtUtFugjAUfecrmr5XXVyWacQEKlM2pI1Asu2lQUTTDVpHYcn29SugDp/Gw/rS295ze885t74U\ +KI/f0z3PUiCPJZdCTQ1VFjwpWVGJHS/YZ1rw/ZcJb6ChQ6UhOh6MRiNoGJis6RTAYaWK4ZaL4SFJ\ +QL2QKndmMpnUYR5vuZkd724BSgCS5zYDCdAioA7Wm79w7Gipsa46pgn7ULIoT1lmRSFhQUTpxgkC\ +RqjjrylAZAw6C+0PorqfIC4yLlJ9FBK1IlCc8VhxcahR7YMe1VTATMmqSNI5NPAUYGz21NDCif1I\ +aGjCK0HQ0FZgGj141jLQuWtxTdZ2fLxi+IzoqRYaZAp0P3ftvjq6jIybG+c53FgMdxJ/u9CwaAsp\ +2YSW7Xpu+HIm21gDDc/1n/oPFaBvkFfZLt2rBtSZTJ+xzOT2LU1KNa/xWf5be/EVgMZ0b9F/RqSG\ +X2y+8PtXIzWltRWumOfadZMsP7EkUf0xOr/iByWg/Ws= +exehash=1f2e6cf9670ff39d468e67fa6a1b9d33d630807ca98a1c1e435b76b6d9272e63 + +520.omnetpp_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:22:49 +opthash=274005286c078201e7a17f3e4b5c63e726b9fe2abd72d9e87de35af6c25702cc +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNq1UctOwzAQvPsrLF+rNEVFHKKmUh6mNaSxlYcoXKw2dZEhjSMnQeLvMSmBFi694MuuvbO7M+NY\ +VdZh8yr2shRQ1a1UVeOAptWyaLnuqp3U/E1ouX930RUCJm0MxOTjyWSCAAjoijkQ2V2j7a2s7OfR\ +CP46Zv5WumV9cw2tAlpqWDNW0ApThgMT4hD7+QJapJGHrty0Stu1CTtRn76Z/KB2ojQNDyRb8hhn\ +fk6iECdfk7iXZ5SnOWMJTlNOGY5XzDCg0x82R2DEDB04a1SnCzFHIHBgsF67FwoZ8NS/oyxz0Zku\ +BIwjActvI2+Rmtq5xr7q4zhY8gHwH6IRoA403MiKPGGzg077xXidJR5nNMk8n0Qkexz49YYgEJH4\ +/vLvPN5PzIUztX0RRdvMzzq+rYGwdy4KLzf6r4x+AM0/bT/x/AP2tsQE +exehash=1cf2aed85696fcfe3a730b6638402f19d208b0c45616569d233848172725a44e + +523.xalancbmk_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:28:06 +opthash=6d3d0e94f77cea8d755bb0658ee676291353bcf5b40fe2e49963fc426b39d5b4 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNrtVEFvmzAUvvMrLK4VIVurHaKmkgNeSmdjC8PEdrEIoZU3giNMqvbf9wVERrodssNuQ0K8773P\ +D/t9nxybxtsVP6tHXVfI7DttGrtwbNfqslPtodnqVj1XrX58XbofXAdCCxSIZ/P53HWcgDOxQK5/\ +sK2/0Y3/dHWF3j3Qf6OX9f7TDfJK5JnxNzODvFAKEsAnDskqWwM3xEKomKv0PiE4lJDIMcWximJG\ +mGJyrSjHIUmQF83gfanasrLlr8jfmt058vVuX09StniZoEOna5/ZJ2qKLZzNjxpW7Uz7+p6StkVj\ +SzNwStM8HwlFXTSlr5uyPmwr2KpI+IPKGRU4kcctnhJZGtERDkU5Qonzm2ACPo5xyNkYfsU0CnHK\ ++1XQTmWSjBMhUuI1GYfSz1PhLOVKZkIkUFVckJgJ5PHrXo2BQqM4y9E0IUAfdGvNAU595zrBAgV5\ +vrxQ2ZHPVw9cpEv3TGjXAYsEIvtM8VpC7Vz0vroicXCvoMGJ898H/8YHrsMXCDSKWPSdwKD5dS+A\ +4EmKVxGN0m+jQoNH+irJ0wSrP3LEUXxgfrn8FhjwYMff/XhrNj+qsrN3Z6tPZkKo9xoNL7fm3x64\ +b8+zo40nHn4DYzCAUg== +exehash=c7afcfbdfebfed96e6db07f3747c9f0d57546e96a0c087fd295607c4331a3ca1 + +525.x264_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:28:47 +opthash=9f8249deba2ee1bc4326c744c0aad9b1c72974092b5a064cd194306c4abc49a8 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNrtU11vmzAUfedXWH53SZssa6JSCYjXshFs8SGte7GIQyJvYFcYpmy/foY0HXlaHip1D/jF177H\ +9r3n+ERKoir/UexEWQD13Agl9dLSTS14w+pWbkXNfha12P1y4DW0TKgNxMRXk8kEWpZP1nQJoN3q\ +2t4Iae85B91Autk6fLHowirfCKd8ns8A4gCp0zNXCqBVQrFvpmiFvewBoKDcFlxtma65LaRBB4eb\ ++axbDkK7ODR1roc7XFWVki/3MTdLCUsySmOcJIxQHK3pWc57SjGJVzh2Jofrm+nsw/zjrSmUTMFg\ +oN1etrcLJGQpZGGWUqEjMSgvRa6F3Heo47UhNe2BO63amhf30PKXwPedC3k5won3mdDUgWckQcvQ\ +69PsU+g+JCZ3Tlif9XDkP7IT4B0ZhBZZAtNCsA6+YVMKmfY7+Gsau8wfJP5NbN/Y8SAlcep6QRik\ +T6f+e7ahFQbRl8v/HkC/QdUadna6Bw3EvkTpO7X5XvBG33f4svp79lUqAHodw9XlspMO7p+ke63v\ +TYk0Ja3d9JGFgdc9UlYvVZKs+2uDjzZ6efTy6OXRy6OXRy+PXv5/vPwHT71lnQ== +exehash=67469200b738606c248c542608d955fae32c6d0d607cb97bf57a70f767d6ff33 + +531.deepsjeng_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:28:52 +opthash=7b83f00e401cd189a6e69735bcb63a0af85e9342734f1788fb82d1e640a9d463 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNqNUMtOwzAQvPsrLF+rtEFFHKKmUh6mBOzYykNKuVgkpMhQ4ioPJP4eN21oA5f44l3t7MzOhKoy\ +Pl8+yp3cl1AdWqmqxgJNW8uiFXVXvcpafJW13H3b6AYBXTYaouu5aZoIAI9RbkG06Jp6kctq8Tab\ +wT9P8+fS3h/ubqFRQEMNMnMFDT/m2NNf6GM33Rx76hAiKKYs2p7HwkkTJuKU8wjHsWAch5RrWra8\ +SJyAhGsNuGpUVxflGgHPgl6W2ROvG/DMfWQ8sdHoWAS0TY+n98TZxHo2Pryfujj0HsQFMNEJAsyC\ +WjCgwTPWi2zZs+EsiRzBWZQ4bkCCZDuI9i4RIEH4ND34U3+VGFyp/L0s2mY92vj1C2EfB/Gnp/ff\ +Rk/A0mOWV0H+ACXCpPw= +exehash=13c9182a8c3b527b60e2e0c4f73d5ce349e281bff507020815536a048b3034d8 + +541.leela_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:06 +opthash=a25eb362e6d382db558c966a388109f406c2dd1d4e0bbe1c8906a0a369648988 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNqNUMtOwzAQvPsrVr5WeaAiDlFTKQ9TAkls5SEFLhYJKTKUuMoDib/HTQm0IKH44rV3dnZmYtlo\ +b4+v9VbsapD7Xsims1DXt6LqeTs0T6Ll73Urth82vsBIlZ2CqFo3TRMj5NGIWYCNoWuNUjTG82IB\ +v47iL4W9219dglaBJqc1ugTNTxnx1BX7xM03oAX61x938ozyNGcsIWnKKSNxxBQXXf7wHoEhU8Sw\ +6uTQVvUaI88CryjsmZImPHVvKctsfKYQI+XNY/l16GxS1TtXO3ZdEns3fAL8Lx8jaoHaEkTBA1Fo\ +uhwpSJElDmc0yRw3CIPsfto0WsMoDOK7+REf3ycxwUqWL3XVd+uziW+TAGMGoT8/sr82RgKaHwI8\ +Se8TH9yeAA== +exehash=59eb1a8fb591abab12921ae4158c3efbaa5cd7788013faed4c2482117473de7b + +548.exchange2_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:26 +opthash=54bed106c6ee37e8de4e41711455fdf3bb1eb9c3be994b3f3fc94ad7a4dc44a1 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2gnAItNMy4wPlI5MZEjLEaY+MLK1tBVly9BFIfn1lYwcn0Is90mpXb/e9\ +J7SYbv7M1w83q7vN6j72v3HwaLjMUOK4sJhLZEqgph9MV8vlfBpvrqfTKHRGhwmXYZYqbTWR79Fl\ +vNr8XU/u7+frwynBE9gDDTNKQ0I0zX+MsODS7XEmXTgYhsIqvNOkLEEHq8ViuZrMNvFkfT2PN3eT\ +2/lDJF9Ku8dSSfgcn80Xk8dlHA2CmOgM7Bid3BBMlUx55jQwtOM2H6N+PzSahrTdR/gFYVzFcLnN\ +XkAbrmT05TFx0jo0GPav+pf4aujq9ehLezZxPllEKRcwDsO6VZMTDSFTdbPYt7aeT2a38/5vlxmf\ +BpIkArAgMnMkAxPRHmGkRy8uepnqsV4zyp5Knmj1wVWkuPKZpYaU7+t5ttdXNxTkSWncIMZKitf6\ +rMo0KbBxaZXjYXQ2m0InU8JHeHUTrAOXyy1oXKmBYV4FGkYZ1x8YbpApV4mGCseAYc+Jhb09VrO5\ +BsJMVCrD94da3TrHg1J0RkaFokRA5JF2gSXGMrrfYwaejHMBywuIXsG0Q2OQEudFfTxBEh5J2J1L\ +Tgjdej4oHIPVpJzkzw6w5wdo1Rjjpk18doQVxObndz0jZekpPpYrhcu8v97XLbySQ4vYvBoLBX77\ +MBu/KHOVKINpDnTrzRppEEDMe5qt7dDNjoiz6lii0pjX0Kfdwt/OK20ct7xcMPWowc/q+xD/HA1H\ +g1+dBnegtdKdwmkqFGENAtMxbxTWGmq8gdnNbra7bFcHm4WeSU5kaIsS14mN4j/VbuZUq7SVHHWM\ +YKa5d0NHN6fjqTGcGsBHcmXs2cChldNQENdiRoViIMaolnTwcCDZY/MvIaKq8JYzlT8REZnSHm1h\ +xqjm880LLfD9o8bBzVuDvv7n6fmGgn+sp/g9 +compile_options=\ +@eNqtkMtOwzAQRff5Csv7pEVFSERNpSR1SyCNrTwkYGO1qYMMJbbsFAFfj5OWUB6LLJiNZzTXM3NP\ +Imr7ef3EKr5jQMiGi1q7lm4ULxuq9vWWK/rCFK/ePHgGLZNqIzG5Mx6PoWUtCHEB1JKVUgJ7nhEU\ +mieZo6BYHmvqFzmmWUFIirKMYoKSFfnsxeTiHEy12KuSzYAt+typpOTvbOtUl6/QMktCUixif5l5\ +8MearhugJLyi3wR/7u3E6DZPfUpwmvtBFEf5Xf+lPQdaIV61rkZ7rUYbXo8eKqEata7BVxhoG+7t\ +pLneLtu7j+wcAWw86V2YWS5YhN7AWQc5Dq4xyc1Np4P/lQF2gdkQraJ7ZJR4MohKHCU3w6kcaoOi\ +j6nYPLKy0TNw+qM3CEDnPp4Ph/XbRjcAFy28E3IfNALPSA== +exehash=2a1a71c7b3cc305af6b28da5a0fa8f2ca7c28c617a74e9adedc544e84097d7db + +557.xz_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:33 +opthash=421bea877b6815c1807781f6a889dfd067c221fb6ed1ccf96d1b44a28a3e9490 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNrtU09vmzAcvfMpLO7On6brmqhUIsRN2ABbgUxtLxYxJvUKdoRJtfXTz5AlBe2wHHacJfDv2c/G\ +fu8RKQnL9JXnouBA7WuhpJ5Zuq4Eq2l1kJmo6BuvRP7Tsce2ZUptKKYejEYj27I8HJIZsIcHXQ23\ +Qg53jIGmQV1nDptOm7JMt8Ip9jfXADIA1ekzAwXgIibIM120QPPN8jem7ibBdP6UILxeoLUz+jG+\ +mlx/uvl8awgr9xuiHo4e/CVdOePTkhCF1Mcn9Pjc2yreELJGcUwxQVFIAPQH5tF7zmjJSypUg15S\ +eGV6pspSSVMUYlu8l+kw3YsOal4d+AebvXD22sFalHuj7MdAxos67W3YAVUqd5ypjFdGNjwBnQbz\ +nTzcTqGQhZBmw1wqeLQJpoVItZC7hnW8dUCM2OBOq0PF+L1teTPgec6FLh3peP4Fk8Sxe5bZljHb\ +I5uHwF3GZq5vXzs7R5G3oj3Cfz95ZVt4Boygfug/IyMMnrQj6DFZu+b6HxN/t7mV+biQ4HXizv3A\ +T57OYjfe21bgR18v/y8BfAfloch4rltSJ3qX5O5Obb9zVuv7XmDPqQGgjVSwuDyBuKF7pxSdD/dP\ +VWyPhDdNxjsB/wWIH4oW +exehash=2abaee9754cf40a947430898c8a92ee6cc105d41eeca5ede0ba581993517a4ca + +999.specrand_ir=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:34 +opthash=defc697dfd9d9f3abf3a128aa625ba453c48adf1498e058efb28e0336037187c +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNqtUdFugjAUfecrmr5XXVyWScREKnNsSIlisu2FYCmmG7SGwpLt61dqMLiX8bC+9Lb33HvPPSeU\ +ApXpB8t5wYA81VwKZVuqrjitk6oRGa+ST1bx/MuBN9DSodIQHY8mkwm0LEw2kQ3guFHV+MDF+Egp\ +aA9SdebQ2awNy/TAneJ0dwsQBUh2Y0YSoNUu8rC+wpXn7tcA+erEaJWKDFFZllLoajIFvYPyo2ju\ +Z4iLggumn0KiM1uUFjxVXBxblOmbBJGeCeZKNhVlC2hhG2DsDCR7hhP3iUSxA6+YQ0vvjKP9Q7Bc\ +73TueguTdb0QPyYd4Pda0CI20H39jf/m6TyZmh/vJd4uE9xL/L2tmXYujMg2Xrp+4MevHSkjAbQC\ +P3we7hJA36BsiozlyoB6DgyRfy4P74zWanHl20U8AIyywWq4EaSF407MC7l/VdFQIvvW6p7PP1rQ\ +6fs= +exehash=a68b2becada00a5b440ba02b35ca0a971d74af8ee11bb26bd2aa0276b3ad744f \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_half_cores/config_x86.cfg b/example-benchmarks/spec_cpu_half_cores/config_x86.cfg new file mode 100644 index 0000000..4b556c0 --- /dev/null +++ b/example-benchmarks/spec_cpu_half_cores/config_x86.cfg @@ -0,0 +1,653 @@ +#------------------------------------------------------------------------------ +# SPEC CPU(R) 2017 config for gcc/g++/gfortran on Linux x86 +#------------------------------------------------------------------------------ +# +# Usage: (1) Copy this to a new name +# cd $SPEC/config +# cp Example-x.cfg myname.cfg +# (2) Change items that are marked 'EDIT' (search for it) +# +# SPEC tested this config file with: +# Compiler version(s): Various. See note "Older GCC" below. +# Operating system(s): Oracle Linux Server 6, 7, 8 / +# Red Hat Enterprise Linux Server 6, 7, 8 +# SUSE Linux Enterprise Server 15 +# Ubuntu 19.04 +# Hardware: Xeon, EPYC +# +# If your system differs, this config file might not work. +# You might find a better config file at https://www.spec.org/cpu2017/results +# +# Note: Older GCC +# +# Please use the newest GCC that you can. The default version packaged with +# your operating system may be very old; look for alternate packages with a +# newer version. +# +# If you have no choice and must use an old version, here is what to expect: +# +# - "peak" tuning: Several benchmarks will fail at peak tuning if you use +# compilers older than GCC 7. +# In that case, please use base only. +# See: https://www.spec.org/cpu2017/Docs/overview.html#Q16 +# https://www.spec.org/cpu2017/Docs/config.html#tune +# Peak tuning is expected to work for all or nearly all +# benchmarks as of GCC 7 or later. +# Exception: +# - See topic "628.pop2_s basepeak", below. +# +# - "base" tuning: This config file is expected to work for base tuning with +# GCC 4.8.5 or later +# Exception: +# - Compilers vintage about 4.9 may need to turn off the +# tree vectorizer, by adding to the base OPTIMIZE flags: +# -fno-tree-loop-vectorize +# +# Unexpected errors? Try reducing the optimization level, or try removing: +# -march=native +# +# Compiler issues: Contact your compiler vendor, not SPEC. +# For SPEC help: https://www.spec.org/cpu2017/Docs/techsupport.html +#------------------------------------------------------------------------------ + + +#--------- Label -------------------------------------------------------------- +# Arbitrary string to tag binaries (no spaces allowed) +# Two Suggestions: # (1) EDIT this label as you try new ideas. +%ifndef %{label} +% define label "c6itest" # (2) Use a label meaningful to *you*. +%endif + + +#--------- Preprocessor ------------------------------------------------------- +%ifndef %{bits} # EDIT to control 32 or 64 bit compilation. Or, +% define bits 64 # you can set it on the command line using: +%endif # 'runcpu --define bits=nn' + +%ifndef %{build_ncpus} # EDIT to adjust number of simultaneous compiles. +% define build_ncpus 8 # Or, you can set it on the command line: +%endif # 'runcpu --define build_ncpus=nn' + +# Don't change this part. +%if %{bits} == 64 +% define model -m64 +%elif %{bits} == 32 +% define model -m32 +%else +% error Please define number of bits - see instructions in config file +%endif +%if %{label} =~ m/ / +% error Your label "%{label}" contains spaces. Please try underscores instead. +%endif +%if %{label} !~ m/^[a-zA-Z0-9._-]+$/ +% error Illegal character in label "%{label}". Please use only alphanumerics, underscore, hyphen, and period. +%endif + + +#--------- Global Settings ---------------------------------------------------- +# For info, see: +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#tune + +command_add_redirect = 1 +flagsurl = $[top]/config/flags/gcc.xml +ignore_errors = 1 +iterations = 1 +label = %{label}-m%{bits} +line_width = 1020 +log_line_width = 1020 +makeflags = --jobs=%{build_ncpus} +mean_anyway = 1 +output_format = txt,html,cfg,pdf,csv +preenv = 1 +reportable = 0 +tune = base,peak + + +#--------- How Many CPUs? ----------------------------------------------------- +# Both SPECrate and SPECspeed can test multiple chips / cores / hw threads +# - For SPECrate, you set the number of copies. +# - For SPECspeed, you set the number of threads. +# See: https://www.spec.org/cpu2017/Docs/system-requirements.html#MultipleCPUs +# +# q. How many should I set? +# a. Unknown, you will have to try it and see! +# +# To get you started, some suggestions: +# +# copies - This config file defaults to testing only 1 copy. You might +# try changing it to match the number of cores on your system, +# or perhaps the number of virtual CPUs as reported by: +# grep -c processor /proc/cpuinfo +# Be sure you have enough memory. See: +# https://www.spec.org/cpu2017/Docs/system-requirements.html#memory +# +# threads - This config file sets a starting point. You could try raising +# it. A higher thread count is much more likely to be useful for +# fpspeed than for intspeed. +# +intrate,fprate: + copies = 1 # EDIT to change number of copies (see above) +intspeed,fpspeed: + threads = 4 # EDIT to change number of OpenMP threads (see above) + + +#------- Compilers ------------------------------------------------------------ +default: +# EDIT: The parent directory for your compiler. +# Do not include the trailing /bin/ +# Do not include a trailing slash +# Examples: +# 1 On a Red Hat system, you said: +# 'dnf install gcc-toolset-11' +# Use: % define gcc_dir "/opt/rh/gcc-toolset-11/root/usr" +# +# 2 You built GCC in: /disk1/mybuild/gcc-11.2.0/bin/gcc +# Use: % define gcc_dir "/disk1/mybuild/gcc-11.2.0" +# +# 3 You want: /usr/bin/gcc +# Use: % define gcc_dir "/usr" +# WARNING: See section "Older GCC" above. +# +%ifndef %{gcc_dir} +% define gcc_dir "/usr" # EDIT (see above) +%endif + +# EDIT: If your compiler version is 10 or greater, you must enable the next +# line to avoid compile errors for several FP benchmarks +# +%define GCCge10 # EDIT: remove the '#' from column 1 if using GCC 10 or later + +# EDIT if needed: the preENV line adds library directories to the runtime +# path. You can adjust it, or add lines for other environment variables. +# See: https://www.spec.org/cpu2017/Docs/config.html#preenv +# and: https://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html + preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64 + #preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64:%{ENV_LD_LIBRARY_PATH} + SPECLANG = %{gcc_dir}/bin/ + CC = $(SPECLANG)gcc -std=c99 %{model} + CXX = $(SPECLANG)g++ -std=c++03 %{model} + FC = $(SPECLANG)gfortran %{model} + # How to say "Show me your version, please" + CC_VERSION_OPTION = --version + CXX_VERSION_OPTION = --version + FC_VERSION_OPTION = --version + +default: +%if %{bits} == 64 + sw_base_ptrsize = 64-bit + sw_peak_ptrsize = 64-bit +%else + sw_base_ptrsize = 32-bit + sw_peak_ptrsize = 32-bit +%endif + + +#--------- Portability -------------------------------------------------------- +default: # data model applies to all benchmarks +%if %{bits} == 32 + # Strongly recommended because at run-time, operations using modern file + # systems may fail spectacularly and frequently (or, worse, quietly and + # randomly) if a program does not accommodate 64-bit metadata. + EXTRA_PORTABILITY = -D_FILE_OFFSET_BITS=64 +%else + EXTRA_PORTABILITY = -DSPEC_LP64 +%endif + +# Benchmark-specific portability (ordered by last 2 digits of bmark number) + +500.perlbench_r,600.perlbench_s: #lang='C' +%if %{bits} == 32 +% define suffix IA32 +%else +% define suffix X64 +%endif + PORTABILITY = -DSPEC_LINUX_%{suffix} + +521.wrf_r,621.wrf_s: #lang='F,C' + CPORTABILITY = -DSPEC_CASE_FLAG + FPORTABILITY = -fconvert=big-endian + +523.xalancbmk_r,623.xalancbmk_s: #lang='CXX' + PORTABILITY = -DSPEC_LINUX + +526.blender_r: #lang='CXX,C' + PORTABILITY = -funsigned-char -DSPEC_LINUX + +527.cam4_r,627.cam4_s: #lang='F,C' + PORTABILITY = -DSPEC_CASE_FLAG + +628.pop2_s: #lang='F,C' + CPORTABILITY = -DSPEC_CASE_FLAG + FPORTABILITY = -fconvert=big-endian + +#---------------------------------------------------------------------- +# GCC workarounds that do not count as PORTABILITY +#---------------------------------------------------------------------- +# The workarounds in this section would not qualify under the SPEC CPU +# PORTABILITY rule. +# - In peak, they can be set as needed for individual benchmarks. +# - In base, individual settings are not allowed; set for whole suite. +# See: +# https://www.spec.org/cpu2017/Docs/runrules.html#portability +# https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# +# Integer workarounds - peak +# + 500.perlbench_r,600.perlbench_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/500.perlbench_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only + 502.gcc_r,602.gcc_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fgnu89-inline + 505.mcf_r,605.mcf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/505.mcf_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 525.x264_r,625.x264_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/525.x264_r.html + EXTRA_CFLAGS = -fcommon +# +# Integer workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + intrate,intspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only -fgnu89-inline -fcommon +# +# Floating Point workarounds - peak +# + 511.povray_r=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/511.povray_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 521.wrf_r,621.wrf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/521.wrf_r.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + 527.cam4_r,627.cam4_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/527.cam4_r.html + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + # See also topic "628.pop2_s basepeak" below + 628.pop2_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif +# +# FP workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + fprate,fpspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + + +#-------- Tuning Flags common to Base and Peak -------------------------------- +# +# Speed (OpenMP and Autopar allowed) +# +%if %{bits} == 32 + intspeed,fpspeed: + # + # Many of the speed benchmarks (6nn.benchmark_s) do not fit in 32 bits + # If you wish to run SPECint2017_speed or SPECfp2017_speed, please use + # + # runcpu --define bits=64 + # + fail_build = 1 +%else + intspeed,fpspeed: + EXTRA_OPTIMIZE = -fopenmp -DSPEC_OPENMP + fpspeed: + # + # 627.cam4 needs a big stack; the preENV will apply it to all + # benchmarks in the set, as required by the rules. + # + preENV_OMP_STACKSIZE = 120M +%endif + +#-------- Base Tuning Flags ---------------------------------------------- +# EDIT if needed -- If you run into errors, you may need to adjust the +# optimization - for example you may need to remove +# the -march=native. See topic "Older GCC" above. +# +default=base: # flags for all base + OPTIMIZE = -g -O3 -march=native + + +#-------- Peak Tuning Flags ---------------------------------------------- +default=peak: + OPTIMIZE = -g -Ofast -march=native -flto + PASS1_FLAGS = -fprofile-generate + PASS2_FLAGS = -fprofile-use + +# 628.pop2_s basepeak: Depending on the interplay of several optimizations, +# 628.pop2_s might not validate with peak tuning. Use the base +# version instead. See: +# https:// www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +628.pop2_s=peak: + basepeak = yes + + +#------------------------------------------------------------------------------ +# Tester and System Descriptions - EDIT all sections below this point +#------------------------------------------------------------------------------ +# For info about any field, see +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#hw_memory +#------------------------------------------------------------------------------- + +#--------- EDIT to match your version ----------------------------------------- +default: + sw_compiler001 = C/C++/Fortran: Version 13.2.0 of GCC, the + sw_compiler002 = GNU Compiler Collection + +#--------- EDIT info about you ------------------------------------------------ +# To understand the difference between hw_vendor/sponsor/tester, see: +# https://www.spec.org/cpu2017/Docs/config.html#test_sponsor +intrate,intspeed,fprate,fpspeed: # Important: keep this line + hw_vendor = Amazon Web Services + tester = TUM I13 + test_sponsor = TUM + license_num = nnn (Your SPEC license number) +# prepared_by = # Ima Pseudonym # Whatever you like: is never output + + +#--------- EDIT system availability dates ------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field + hw_avail = # Nov-2099 # Date of LAST hardware component to ship + sw_avail = # Nov-2099 # Date of LAST software component to ship + fw_bios = # Version Mumble released May-2099 # Firmware information + +#--------- EDIT system information -------------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field +# hw_cpu_name = # Intel Xeon E9-9999 v9 # chip name + hw_cpu_nominal_mhz = # 9999 # Nominal chip frequency, in MHz + hw_cpu_max_mhz = # 9999 # Max chip frequency, in MHz +# hw_disk = # 9 x 9 TB SATA III 9999 RPM # Size, type, other perf-relevant info + hw_model = # TurboBlaster 3000 # system model name +# hw_nchips = # 99 # number chips enabled + hw_ncores = # 9999 # number cores enabled + hw_ncpuorder = # 1-9 chips # Ordering options + hw_nthreadspercore = # 9 # number threads enabled per core + hw_other = # TurboNUMA Router 10 Gb # Other perf-relevant hw, or "None" + +# hw_memory001 = # 999 GB (99 x 9 GB 2Rx4 PC4-2133P-R, # The 'PCn-etc' is from the JEDEC +# hw_memory002 = # running at 1600 MHz) # label on the DIMM. + + hw_pcache = # 99 KB I + 99 KB D on chip per core # Primary cache size, type, location + hw_scache = # 99 KB I+D on chip per 9 cores # Second cache or "None" + hw_tcache = # 9 MB I+D on chip per chip # Third cache or "None" + hw_ocache = # 9 GB I+D off chip per system board # Other cache or "None" + +# sw_file = # ext99 # File system +# sw_os001 = # Linux Sailboat # Operating system +# sw_os002 = # Distribution 7.2 SP1 # and version + sw_other = # TurboHeap Library V8.1 # Other perf-relevant sw, or "None" +# sw_state = # Run level 99 # Software state. + + power_management = # briefly summarize power settings + +# Note: Some commented-out fields above are automatically set to preliminary +# values by sysinfo +# https://www.spec.org/cpu2017/Docs/config.html#sysinfo +# Uncomment lines for which you already know a better answer than sysinfo + +__HASH__ +505.mcf_r=base=c6itest-m64: +# Last updated 2024-06-27 08:47:11 +opthash=5737cf0e0d89c6869a2881cb41c2cd15f2e18ec5db2c750058f995d78d11b73f +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNq1Ul1PgzAUfedXNH2vm9EYt8gSYKgoo82ARH0hWMusQqu0mMxfb4GxucToXuxLb+89vR/n3EgK\ +VOWvrOAlA/JNcynU1FK65lRndSOeeJ19sJoXaxseQ8uYykCMfTQej6FleXhBpgCOGlWPHrkYrSgF\ +7UFKP9l0MmnN6uwUIAqQHAocSYDmMfE9c0Vz302vDCpQb4xm70rWehPNnDTBWZwSsvTjOMPEjxYE\ +oBVA+MRkzWv6bItc8w8GtgcVQqK+fZSXPFdcrHpnI1ReMPNNP6O2j4p/5l03fbjggushLMq18a5E\ +cz5BXJRcMPOksqqk6Kv0/YXETAYulGxqymbQ8qbA8+w/yeiB2L3BJLHhHjPQMmx6JL0MnavYxPZZ\ +6qKuH3nXmTcgDqQNWngKTL1gETz45tsPJHYQ/y5ZOrvs/81mN1Ffk+Bl4rhBGCT3w+AdwdAKg+j2\ +kB3rnb+ux4V8fGFUq1mLLKvd2mwVAKCTJ5wfouMBnJpcCye5zsLAbQktq016nLbafxP+C37ADqE= +exehash=c3ef8d086929e175d8c740f973851247759390233c84140a0f4310f137c36ff5 + +505.mcf_r=peak=c6itest-m64: +# Last updated 2024-06-27 08:48:21 +opthash=6804b57c3c4683509df403791e0b2fdb5e33b25419c71b81edddd2810afe1671 +baggage= +compiler_version=\ +@eNrtUMtqwzAAu/srdGxhC22y03ryTEINXWJsZ9BTyVzncbGL42z07+eUfsZAICQkHSSoUnswdvkq\ +peJNfWmETvROBmOwab8XFxfsiyzPdq95sTz02/bpEOZv9zANY8SGbZHv8gJVsBbK9/G3CxaVX9y1\ +i5N3L+DOZESP04yEfo3Nz9gBc1JxXJ0lGIveB5i0PbkhsbtO68KcAXq0aTX164akZuhcvB/gfIT9\ +se7R+ywlO9Ja0w9+4vqMZFVc16VSqBoJCkGl5qw9UQnRStGoMiNEpB/y/x/+AMbCphg= +compile_options=\ +@eNrFk1FvmzAUhd/5FZbVVzeJNU1qVSoBYS0bASuAtO7Foo5JvQWc2U6r/fuZurSrUmVk0zS/gHTO\ +tX3P9ZfJDrX1N96IDQdya4Ts9LmnjRLMULXrVkLRe65E88OHM+gZVYuOPghz58PHf+hZVdsqK59O\ +p1PoeVG+ILNzACc7rSa3opusGQP9QtqsfHZ21v+2798BxACSw6GnEqB5QeLIfrJ5HFZX1pXoLWf0\ +u5bKPKk0qMqcFhUhy7goaE7ibEEAarZK9i2gNe+4qg23xWuA8qbWtrKtFbvzu9qIe269GyPB80JN\ +J5HrF9UbUWvRrZ3gzkuJvSm40HKnGL+EXmRbiyL/t909OfPwY05KH77qFXp9QBGpPqTBVWHF1407\ +OYyz6JpGg2VkFNDLbS0JimJGh9K9cJzJ3itZJF9i6zgUlTPHn8tl8HKbN0Jzt3Y+ki/LIEzSpLwZ\ +unsMEnppkn0a9TjcbP54rBfy9itnRl/222zal3E/DwEAN6J0PmaYRwXWb7sIymuaJmGf1qYdjsqr\ +/i388hCWVWaFEybbtu5WDh78v+DZ6X/IDR7NDT7ADT7MDf4LbrDjBu9zY3Nx+nhk8Ehk8Dhk8PHI\ +HDPMkbTg0bQck1W/7R4t+E1afgKVOPDc +exehash=662c677d0f4477ff312c9eb7844c9c73439a46ba32eca9e13cdf6de287004be5 + +500.perlbench_r=base=c6itest-m64: +# Last updated 2024-06-27 08:50:47 +opthash=5bd0f9c928046a083e99de11face2bfb8b723401b2fc209a2a9d57c5d6ced82c +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNrVU8GOmzAQvfMVFneHVK2qJlpWAuIktCS2MEhpLxZLTNYtmJVNVt1+fQdI0kbdqntoD7WEGM+M\ +5s3Me962GjfFF1mpWqL2oVOttnPHdkaVnTBHvVdGPEqjqifffeU6YFpIAXsynU5dx4nohs2R6x2t\ +8e6U9g5lifqDbbf3y9msN5u3bxAuEW7PAJMW4QVnJILfdkHCfAUGI2kiIpoShOMJfHtlOy+mYJUP\ +hfYy1Ui8Vqm0Z8862ySYFcZKAy75tfOMBMM+yNIUeg8lFzQPEyJ4EvA14aJHjIPEn57QRZBnVPCc\ +sZRwLigj2w2DmEiCdEXEMk4Iv1z7m+A0TyPS+4YrXS45yUQYZ9yHGRE+IExfw8CFKe99XXTqUaLT\ +OUEm8Tbfid2QXekWj5vGRa0Kq/RhdB61LSoJZbp73K+sUd+KYXFjuFJadeewrp/Ae9DHdzOsdK00\ +7KAq26Zp9RUu6yFvbHs0pbx1nWiOosj/I29jIg3fU5b57hWJrgPERyxfJsGKQ+ya0CEakm20FpeE\ +/55h16FzBJuIN/EnAhM9Q/cwN6NpFoRxEmcfz4v5QfxQhOyyNBDReTX/WglDVyPms72xvi3o8MNL\ +nvLo/J3Uf9U5nJv27rMsO3vbJ9QNujyKi5oQGqSWLF6iyb/CAqBtgmwNrrCnoG5ODdC8V/pPMv8O\ +33uEXg== +exehash=da51419028397adf783795465d5e7d46b7544819a1fdd34a01c495940d38a15e + +502.gcc_r=base=c6itest-m64: +# Last updated 2024-06-27 08:51:32 +opthash=84aa2d950cccb6fb8bcbdd2eabcd22c071c78c26fd529e000c30672e1575b736 +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNq1UtFumzAUfecrLL87Sbd1WqJSCRyaeCPYCjBte7GoY1JvYHcYKrVfXwOlW6Vqy0stIa7uPb73\ ++JybGI3q4pcsVSWBuW2V0Xbl2bZRouVNpw+q4XeyUeW9D8+g50LrIC6eLRYL6HmY7tgKwHlnm/m1\ +0vOjEKA/yLYHXyyXfVh//ACQAMhMA2YGoHXKIux+yToK8w1AZNZ/c6VF1R3kENtbKfhva5r2Cc7P\ +F++mMMgzytOcsX2UppyyKNkxVyMJ3+C+7zb4GnFMkyuy4VtH4ggQfe+4FI248XXRqjsJng8qtUHj\ +o1FRqcIqfRyTnbZFKd219gb17Gv1UAxvGMul0qqdyrq6d9mj7j4tkdKV0u4ZpTB1bfQ4ZWQeM6cH\ +uLCma4S8hB5eAYz9/0o4Amn4mbLMhy/0hJ7zALP8Kg42qau91HaohlGCt3wCvKnY0KMr4EiSHfkR\ +uWGvKD9Aom/ZPuB44vTWFgwyjDMZ3WdBSGKSfZ/UGlyBXkySL6es85j8505dmOufUrT2skdW9Z9d\ +e7YNgMHTeH2K+Sdo6nrtgmzLYxL2glb1U3ua9wvz17Y8AtEfKzw= +exehash=819acba0a47fd12bc3c7da7c85264941d8f89011df65195a6ab53f5e5fbd60d0 + +525.x264_r=base=c6itest-m64: +# Last updated 2024-06-27 08:51:46 +opthash=0afeb5ce7b3395d1b57166aa3e47fd089b6cf4afeb7ab0e5b2a8830cc74f222e +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNrtU99vmzAQfuevsHh3Sdssa6JSCQhr2Qi2+CG1e0HUMalbsCcMVdq/fgZCl0hVm5dp0oRfON8d\ +d+fvuy8QHJbZE81ZQYH4VTPB5UKTdcVInVYNX7MqfaYVy19M/VTXlClVirJPJpOJrmkOWuEF0I1G\ +VsY948aGENAeKOu1Sebz1ixnUwAJgGJocCIAXEbYddQnWLp2cg2gV6wpEetUVsRgXGV727PZtL3u\ +mQbd1lUm9z1ElKXgu3qplcQojRKMQzeKUoTdYIUPYvZd7KJw6YbmZHt6dj79Mvt6oUbcAIjO1aRZ\ +RR5MntXsmYK3A3MuYA8JzAqWScY3vbPhMsup+q1+gO3bSvaadS/swznjrB7CvHhR3g1vLuaQ8YJx\ +qq676bsu/ZQ+VmiBSymaitArXXMWwHHMTwHuE5H9HeHY1A/Q1jXFkIOTb751HanYIfJd1HYD5yYd\ +Ev4hFbqGFkA9wVt5P101yju8dCnubRxaqTNM/LcJ6kDqe2IUxpbt+V58N2DZcaZrvhf8OEYKvfPD\ +jbsU94+U1PKqzSzKP5v4RioAHeP+8pjVOAJTVWtlxTep79ktoEW5K4+Sdp32dmlU/Kj4UfGj4kfF\ +j4ofFf9/Kv43V6SZEg== +exehash=01416fd84991bd7d6baf896abc1c1c5b67a6cbe5009d630c32adf0b3f31d9593 + +557.xz_r=base=c6itest-m64: +# Last updated 2024-06-27 08:51:50 +opthash=db207b5f813628e5cd301cc205d208b033d0bd4d144e6245ed5ac334901d565a +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNrtVN9vmzAQfuevsHh3frRd10SlUkLchC1gRGBq+2I5jkm8gh1hUq3962egtESttrzsbZbA992d\ +7+C7Tw6UhDl95KnIOFD7Uiipx5YuC8FKUhzkRhTkiRcifXbsoW0ZU5sUY/cGg4FtWS72wzGw+wdd\ +9NdC9reMgWpBXW4cNhpVZn55ASADULUNegrA2SpErtmCGZom81dMJkmMyfQ+RjiaocgZ/BqenV98\ +ufx6ZRIWkx+IuDi49eZk4QzbIz7yiYdbdPdwVGqVhGGEViuCQxT4IYBezzx6zxnJeU6EqtCOwjOz\ +M5XnShojE+vsJad9uhcdVL068EM223H22MFa5HvD6btjw7OSHhXsgILKLWdqwwtD2BZAfG54owXb\ +OZKW4omDtwVTqWAzIEgzQbWQ28Z5kJqm3Bwrd7BiOhcvtOa7CadCirINy+zZeLfycDWCQmZCmi9N\ +X/+p7tKQuAzN7MC1VoeC8RvbcsfAdZ2/jrtJxNNvOIwd+2j2tmX04obJ7XIyX5nYsQ7q6BQF7oIc\ +JfwXBi9sC4+BIdTzvQdkiPlEJXUKuoujCXFb/v61XOqRNT1DHMWTqbf04vu3wVUKsq2lF3w/5Zpo\ +nH/U/7Va/+Ss1Degs971BUAtvuXsFJWeQGhdCyeVjDsa/g0wE5s9 +exehash=acb8529a5e3479c88f091ea0f1bef7200dd16b81160a52c3b7c015d2bfe2c122 + +999.specrand_ir=base=c6itest-m64: +# Last updated 2024-06-27 08:51:51 +opthash=931cfbab34441c8f31ca9285c2a67f7e5e211e6824cf85c11aafbbf579d17f25 +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNq1UlFPgzAQfu+vaPrebUZjHJElG8OJMiAbS9QX0nWFVaFdWlgyf70Fgm7G6F68F4777u67+66B\ +FLggbyzlOYNyV3IptAV0qTgtE1WJDVfJnimeHmx0gYBxtUkxfm8wGCAAnHAeWRD1K636ay76GaWw\ +NqzLjU2Hw9otrq8gphDLjqAnIZ4uI9cxn2DqTlYziD29Y1QRscFUFoUUpi6DOLw05UTRrS1IyfcM\ +fhpOhcTtnJjknGgusjZYCU1SZsrKLa4JC/5OGtoWTrngZQeL/GCimahuhpiLnAtmfrsBapZmzMSP\ +zArwVstKUTZCwLGg49h/bt0mhpOHMIptdCIBAkY2J1rd+ePZ0mCncjToxA2c+6RL+K4PAqEFTV9v\ +7r24Bv9BrCbFfYoX48Tp2vy3as3kLWcULuLxxPO9+LlbsBESAd8LHs95NG3w12dwK9evjJZ6BI/s\ +S2YImxv403OOdYagTa9wVV/z6JQfz5n7Ig== +exehash=cec9428ef810cda0cdbbda5c0004d7a8a485862af3c544e720395406a63b22de + +520.omnetpp_r=base=c6itest-m64: +# Last updated 2024-06-27 08:52:52 +opthash=7170896242f47d9d1bbaf67da665ab85d63038e800e0b4c26958ce80f7bad925 +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNq1UUtPg0AQvvMrJnslWzAaD6Q04bG2KGU3PGL1QihsK1rYhoeJ/94tltgmRntxLjOZ5/d9E4ga\ +V9kb35Q7DmLflaJuDaXtmjLv0qavi7JJ33lTbj5MdIUUGbayRcYTXdeRojh0yQxAWt822rqsta2q\ +wsFw2xVmrqr6NeDq9gZwDliMByYCsBsx4kgXuMRO5oC9tqz6XdaJRttLV/D9aU7GlSj4Tg48evEi\ +DUhsJ57vkvC4KbWSmKZRwlhIoiiljARLJmFsAdMDhKzJX8w668p3DqMdJ30m8cG0FX2T8xlSHAOc\ +1cr8k9PYSe17ymITnVFEipTFYcmdb80jWTunO1RtEjiLdGz4D/5IoQZIbN7Seybyxg9iDEjIKg6t\ +lNEwtmzP9+KnEfCgDVJ8L3i45Mlfyd8kh6lYv/K8a2dwYt+yAQyq+u4l8l9AbthFk8N3Tl7zCQlV\ +2HQ= +exehash=b98c3655648414264b6708282e0f735e987abd609b58f4f492951afed00a5da9 + +523.xalancbmk_r=base=c6itest-m64: +# Last updated 2024-06-27 08:53:31 +opthash=33fe2c11095c98ec29f6fc686a6380260f271a7bab6c5a1db6ac89895719188f +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNrtVN1umzAYvecpLG4jQrZVu4hKJQe8lA6whWFiu7GooZk3sCtMovbtZ0C0ZOu0StPuZgnx/ZzP\ +NucckSjptOX3+k40NVD3vVBSby3dd4L3rDvKSnTsVHfi7tGz39iWCbWBmHi92Wxsy/JxTLbAdo+6\ +c2+FdA+rFRiWo/vK46vV5h1w2vcXwOHAUfMBawWcgBLkm1cSoF2+NwMBJIQlmGXXKYIBNYUCRjBh\ +YRKjmMV0zyIMA5QCJ1yb56HueK35c+RWqj3PXNHeN4uSLh8W2bEXjRvrQ6TKynyVG8q4blX3+DMk\ +60qpuZowXMnTACibUnJXSN4cq9pclaT4hhVxRGBKhys+FfIsjOZ0atI5pbC48BfJ2zkOcDyHn2AU\ +BjDD45TZjuUUzYwgSuEezaSMfDKYZ5jRnJDUdBkmKIkJcA7AwYMOZce/erLsxakeNZpmojDJC7As\ +ECMYuNTqaGi4si1/C/yi8P4o8ozEuxtMMs8+09y2jE98kn+I4J6a3rn+Y3eHEv+amQ2eMP8t8W8s\ +YVt4C4xGYRx+QYboFwwyKkJwmsFdGIXZ51myyS5jFxVZCtmLGDK4wSA/vubfMBV/Y9JfXXqpbr/V\ +vNdXYLGejQbA6MMoeI1h/5qG8SScD25fWP0Hz/mUwg== +exehash=183abcc0cc08586789e438463e5711c1db96c362d9ee7865f408410700819d6c + +531.deepsjeng_r=base=c6itest-m64: +# Last updated 2024-06-27 08:53:34 +opthash=07012bbeb02623a9b192a4e2da6bb7b84266044e1ece5ba0911465810254d88d +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNqNUV1vgjAUfe+vuOkrqbJs2QMRE8DOsQFt+Eh0L40ium4TloIm+/crTKImy8Z96W3vuefecxpV\ +Jdmv3out/Cig+mxkVdYWqhsl80aoQ7mRShwLJbdfNr7BSKe1huh8ZJomRshjIbcAjw+1Gq9lOd4Z\ +BrRB6mZj54Zh3gLZ398ByYFU/YBRBWSWcOrpI5pRN5u399AJAhHSkMXLU1k4WcpEknEe0yQRjNMo\ +5Jp7B4S1vCuVv9rlqpHHAvo4dQZcD4VJXR1UXkwx8izwFgv730V7JHOfGE9tfLU3Rlqrx7OHwJkn\ +unatoau6NPIexRkwUBRGzAI90A/9F6obf1HY0dNFGjuCszh1XD/w02W/RScYo8CPnod8x8/jXz7C\ +pFq/FXlTT+Eizl4AdFYFsyGeDhDXcbGstfzC728z2Lls +exehash=98de8bf384c125395fe5156fb9438fe092b94ac97dcbe4e2b23c2ada5f2a6e6f + +541.leela_r=base=c6itest-m64: +# Last updated 2024-06-27 08:53:38 +opthash=2f1f63df0864751b52a7f6e3cfd3684a57c27f1a4cfb14559bd66349a00db30e +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNqNUNFOwjAUfe9X3PR1KcxofFgYyTYqTsfasC1BXxoYA6uymnaQ+PeWwSIkBrkvvbn39Jx7Tqpq\ +spl/VCv5WYH6aqSqjYdMo2XZCL2tl1KLXaXl6tvHNxjZ1liI7Xuu62KEIjbhHuD+1uj+Qtb9tePA\ +vohpln7pOO4tkM39HZASiOoEegrIKOM0sk86omExBhL3jjMRFDkTWcH5lGaZYJymE24J10DYnmyu\ +yze/njdyV0FXx58Jt0owMGqry2qIUeRBNJv5/17XIVn4xHju47NjMbIGI148JME4s7vzw9ttSNPo\ +UXSAy04wYh5YlXgSv1KL/sNWy0ln+TQQnE3zIIyTOH/ppFuXGCVx+nxN8IfhpfBgoBbvVdmYIZzU\ +bwAAbT7J6JogrzDXcrFin/NJyD/OSrJw +exehash=2c0af257071500bf32683ff3c5d93f22651e278dadbe5469d5dc7cbbce6960a2 + +548.exchange2_r=base=c6itest-m64: +# Last updated 2024-06-27 08:55:19 +opthash=22486be71bab3ebdc2399d31e9cc31a24122adedea4fb03610264eb5ac8c6376 +baggage= +compiler_version=\ +@eNotjsFqwzAQRO/6ijkm0JrE7qk5ucJKBallZLnQU3AdOdZFKrLckr/vOgQWhhlmHgvBz5+VbqWq\ +z6oxJK/sWHcQIabYe2y678WnBfsiy7Pdc14sd/+yfSSMh59bdNcpYcO3yHd5ARGtRRvG9NdHS6TF\ +X/rkgn+C9EPGzORm0I1rbX7UDpjJpWlNljhYjCFiILbzV1J/cSthzgAzWaLSvlaMlvRkuh3gQ4L9\ +tf6++6g0fy9rU77JkzRfoEhIU1dtC6E0SjSlNpJ3p1Kj6XSj2ipj/9/qVFs= +compile_options=\ +@eNqtkFFPgzAUhd/5FU3fYTMaE8lYAqybKKPNgER9aRgrs+ooadmi+/UWNnGaJfJgX3qbe3rPuV8k\ +SnOTvbKCvzEgqpqLUtmGqiXPayq35YpLumOSFx8OvICGLpWW6NoaDofQMKaE2ACqiuVVBcxJTJCv\ +r2iCvHR2fFM3TTCNU0IWKI4pJiiak69eSK6vwEiJrczZGJiiq62iqvierazi5h0a2sQn6TR0Z7ED\ +f9m0XQ9F/i39ITjr24rRQ7JwKcGLxPWCMEgeuy9NHGj4eN5sNdgqOVjycrAuhKxlVoLvY250bjNv\ +Eh+pWQKYa2DiS93LZP7slFnNd6xbSI+1wdR3/hx7EGLvDpNEBzv1+FcQ2AbaIZgHT0grz0TvxSoM\ +ovs+rA7VOUDdGYnlC8trNQann7vlAWjJhJM+CHss187CacP4BPAndKLddA== +exehash=94f8ce66afd6ebe33a163a04e457e06501b1cb938789a08a98395f3f6afb6075 + +500.perlbench_r=peak=c6itest-m64: +# Last updated 2024-06-27 08:58:19 +opthash=26746eefd4c701d69be2dd89ab217f8349f05d47b236ed37fbc9e2bcc764ae86 +baggage= +compiler_version=\ +@eNrtUMtqwzAAu/srdGxhC22y03ryTEINXWJsZ9BTyVzncbGL42z07+eUfsZAICQkHSSoUnswdvkq\ +peJNfWmETvROBmOwab8XFxfsiyzPdq95sTz02/bpEOZv9zANY8SGbZHv8gJVsBbK9/G3CxaVX9y1\ +i5N3L+DOZESP04yEfo3Nz9gBc1JxXJ0lGIveB5i0PbkhsbtO68KcAXq0aTX164akZuhcvB/gfIT9\ +se7R+ywlO9Ja0w9+4vqMZFVc16VSqBoJCkGl5qw9UQnRStGoMiNEpB/y/x/+AMbCphg= +compile_options=\ +@eNrtVFFv0zAQfs+viCJevXYRQtpEJqWpuwbS2ooTafBiZanTGRqnst3B+PXYdVuYOm0BhgQIS1XP\ +d5e7831337wToK0+soavmN+tNe+EOveUlrzWVG7Egkt6yyRv7qLgNPC0rLign7i+iYKtHHjGqsxX\ +xnwyHA4Dz0vQDJ+e+8Fgo+TgmovBsq59e4DSi6g+O7Ni++qlD2ofdPukJ50PxgTDxPzNx3BUXhoB\ +wzyjCcqhD9IT81twpQcpMlK9rsSg4C0DU54ztddMi1kGcCUVk0bFPuuBZEZQa1bLSixMyDEqRxmk\ +JIvJFBJqM6ZxFg132WlcFoiSEuMcEkIRhvMZNjaaxfklpJM0g+RwtTdKUJkn0Oq2VzSZEFjQUVqQ\ +yLzRB81adra7YMkEk5VmRrf0AWoqpU0fKlnfRKLS/NYU2qx05+/Orp4snZdX9MqFEh1w0IBqxSvF\ +xdIpN0JVDTPB9A2w/Wz5l2rbVWduuOB6bxaru3vxsQ39WnUbWbOLwEsMdEkSPYnezhON3iBcRME9\ +LAPPDkCCy0kWXxJjvA+sM4/gPJnSg8dfD3XgIfMqHBNyenjVEfbOyXQsnaXvofF4bBJcnzDKi3iU\ +Zmnxbt/Jb0Ph4sGrIo9pcsj6TGPi8rvgD1aBbQGmlre91n2r+6ltOF4Fc1531x9YrdWFdVi1/mFv\ +DmPo+25Is3GfcX5uYGzmWVxMjW5kUVm1+2pQaRfmu23Jy7kxvKi7tjWT6xg0/M+gRwy6UX86eYa9\ +yTN8hDzDx8kz/CfJM3TkGR6Tp4Hd2fuvZ/g0b4a/kzfDfrwZ/jhv9tyBX6HMsDdlPjMmNvMRZYYP\ +UuZXamMstg== +exehash=90f4c9c52de6dda1786d304e36f66611bb9d014dd912dc84023e8306644b6e51 + diff --git a/example-benchmarks/spec_cpu_half_cores/configuration.yml b/example-benchmarks/spec_cpu_half_cores/configuration.yml new file mode 100644 index 0000000..7dc4744 --- /dev/null +++ b/example-benchmarks/spec_cpu_half_cores/configuration.yml @@ -0,0 +1,300 @@ +configuration: + name: "SPEC CPU2017 Integer Rate - Half of Cores" + description: "Benchmark analyzing CPU throughput using half of cores (only physical cores)" + directory: spec_cpu_half_cores + cron: "0 * * * *" + instance-number: 1 + instance-types: + - c3.2xlarge #Intel + - c4.2xlarge + - c5.2xlarge + - c6i.2xlarge + - c7i.2xlarge + + - m5a.2xlarge #AMD + - c5a.2xlarge + - c6a.2xlarge + - c7a.2xlarge + + - a1.2xlarge #Graviton + - c6g.2xlarge + - c7g.2xlarge + - c8g.2xlarge + +nodes: + - node-id: 1 + ansible-configuration: ansible.yml + image-x86: ami-040ae5b7ceb70e213 + image-arm: ami-0fb858c88e8a6483e + benchmark-command: ./run_spec.sh + output-command: python3 format_output.py /home/ubuntu/specbench/result/CPU2017.001.intrate.csv + +plots: + - type: scatter + title: SPEC CPU 2017 Total Score + yaxis: Score + series: + - y: SPECrate2017_int_base + legend: Int Rate Base + - y: SPECrate2017_int_peak + legend: Int Rate Peak + + - type: scatter + title: 500.perlbench_r - Execution Time + yaxis: Time [s] + series: + - y: 500_perlbench_r_base_selected_time + legend: Selected Base Time + - y: 500_perlbench_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 500_perlbench_r_peak_selected_time + legend: Selected Peak Time + - y: 500_perlbench_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 500.perlbench_r - Ratio + yaxis: Ratio + series: + - y: 500_perlbench_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 500_perlbench_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 500_perlbench_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 500_perlbench_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 502.gcc_r - Execution Time + yaxis: Time [s] + series: + - y: 502_gcc_r_base_selected_time + legend: Selected Base Time + - y: 502_gcc_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 502_gcc_r_peak_selected_time + legend: Selected Peak Time + - y: 502_gcc_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 502.gcc_r - Ratio + yaxis: Ratio + series: + - y: 502_gcc_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 502_gcc_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 502_gcc_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 502_gcc_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 505.mcf_r - Execution Time + yaxis: Time [s] + series: + - y: 505_mcf_r_base_selected_time + legend: Selected Base Time + - y: 505_mcf_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 505_mcf_r_peak_selected_time + legend: Selected Peak Time + - y: 505_mcf_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 505.mcf_r - Ratio + yaxis: Ratio + series: + - y: 505_mcf_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 505_mcf_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 505_mcf_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 505_mcf_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 520.omnetpp_r - Execution Time + yaxis: Time [s] + series: + - y: 520_omnetpp_r_base_selected_time + legend: Selected Base Time + - y: 520_omnetpp_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 520_omnetpp_r_peak_selected_time + legend: Selected Peak Time + - y: 520_omnetpp_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 520.omnetpp_r - Ratio + yaxis: Ratio + series: + - y: 520_omnetpp_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 520_omnetpp_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 520_omnetpp_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 520_omnetpp_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 523.xalancbmk_r - Execution Time + yaxis: Time [s] + series: + - y: 523_xalancbmk_r_base_selected_time + legend: Selected Base Time + - y: 523_xalancbmk_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 523_xalancbmk_r_peak_selected_time + legend: Selected Peak Time + - y: 523_xalancbmk_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 523.xalancbmk_r - Ratio + yaxis: Ratio + series: + - y: 523_xalancbmk_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 523_xalancbmk_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 523_xalancbmk_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 523_xalancbmk_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 525.x264_r - Execution Time + yaxis: Time [s] + series: + - y: 525_x264_r_base_selected_time + legend: Selected Base Time + - y: 525_x264_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 525_x264_r_peak_selected_time + legend: Selected Peak Time + - y: 525_x264_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 525.x264_r - Ratio + yaxis: Ratio + series: + - y: 525_x264_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 525_x264_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 525_x264_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 525_x264_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 531.deepsjeng_r - Execution Time + yaxis: Time [s] + series: + - y: 531_deepsjeng_r_base_selected_time + legend: Selected Base Time + - y: 531_deepsjeng_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 531_deepsjeng_r_peak_selected_time + legend: Selected Peak Time + - y: 531_deepsjeng_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 531.deepsjeng_r - Ratio + yaxis: Ratio + series: + - y: 531_deepsjeng_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 531_deepsjeng_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 531_deepsjeng_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 531_deepsjeng_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 541.leela_r - Execution Time + yaxis: Time [s] + series: + - y: 541_leela_r_base_selected_time + legend: Selected Base Time + - y: 541_leela_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 541_leela_r_peak_selected_time + legend: Selected Peak Time + - y: 541_leela_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 541.leela_r - Ratio + yaxis: Ratio + series: + - y: 541_leela_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 541_leela_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 541_leela_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 541_leela_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 548.exchange2_r - Execution Time + yaxis: Time [s] + series: + - y: 548_exchange2_r_base_selected_time + legend: Selected Base Time + - y: 548_exchange2_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 548_exchange2_r_peak_selected_time + legend: Selected Peak Time + - y: 548_exchange2_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 548.exchange2_r - Ratio + yaxis: Ratio + series: + - y: 548_exchange2_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 548_exchange2_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 548_exchange2_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 548_exchange2_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 557.xz_r - Execution Time + yaxis: Time [s] + series: + - y: 557_xz_r_base_selected_time + legend: Selected Base Time + - y: 557_xz_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 557_xz_r_peak_selected_time + legend: Selected Peak Time + - y: 557_xz_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 557.xz_r - Ratio + yaxis: Ratio + series: + - y: 557_xz_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 557_xz_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 557_xz_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 557_xz_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_half_cores/format_output.py b/example-benchmarks/spec_cpu_half_cores/format_output.py new file mode 100644 index 0000000..8508478 --- /dev/null +++ b/example-benchmarks/spec_cpu_half_cores/format_output.py @@ -0,0 +1,59 @@ +import re +import csv +import sys +import json + +def parse_spec_cpu_output(input_file): + with open(input_file, 'r') as f: + data = f.read() + + lines = data.strip().split("\n") + + parsed_data = {} + parse = False + for line in lines: + if line == "\"Full Results Table\"": + parse = True + elif line == "\"Selected Results Table\"": + parse = False + + if parse and re.match(r'^\d{3}\.[a-z0-9]+.+', line): + fields = next(csv.reader([line])) + name = fields[0].replace(".", "_") + base_run_time = fields[2] + base_rate = fields[3] + base_selected = fields[4] + peak_run_time = fields[7] + peak_rate = fields[8] + peak_selected = fields[9] + if base_selected == '1': + parsed_data[f'{name}_base_selected_time'] = float(base_run_time) + parsed_data[f'{name}_base_selected_ratio'] = float(base_rate) + else: + parsed_data[f'{name}_base_not_selected_time'] = float(base_run_time) + parsed_data[f'{name}_base_not_selected_ratio'] = float(base_rate) + + if peak_selected == '1': + parsed_data[f'{name}_peak_selected_time'] = float(peak_run_time) + parsed_data[f'{name}_peak_selected_ratio'] = float(peak_rate) + else: + parsed_data[f'{name}_peak_not_selected_time'] = float(peak_run_time) + parsed_data[f'{name}_peak_not_selected_ratio'] = float(peak_rate) + + spec_base = re.search(r'SPECrate2017_int_base,([\d.]+)', data) + spec_peak = re.search(r'SPECrate2017_int_peak,([\d.]+)', data) + + if spec_base: + parsed_data['SPECrate2017_int_base'] = float(spec_base.group(1)) + if spec_peak: + parsed_data['SPECrate2017_int_peak'] = float(spec_peak.group(1)) + + print(json.dumps(parsed_data, indent=4)) + +if __name__ == "__main__": + if len(sys.argv) != 2: + print("Usage: python format_output.py ") + sys.exit(1) + + file_path = sys.argv[1] + parse_spec_cpu_output(file_path) diff --git a/example-benchmarks/spec_cpu_half_cores/run_spec.sh b/example-benchmarks/spec_cpu_half_cores/run_spec.sh new file mode 100644 index 0000000..35a6e0d --- /dev/null +++ b/example-benchmarks/spec_cpu_half_cores/run_spec.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +arch=$(lscpu | grep "Architecture" | awk '{print $2}') +cores=$(( $(lscpu | grep "^CPU(s):" | awk '{print $2}') / 2)) + +cd /home/ubuntu/specbench +source shrc +if [[ "$arch" == "x86_64" ]]; then + runcpu --config=config_x86 --iterations=2 --copies=$cores --reportable intrate >> log.txt +elif [[ "$arch" == "aarch64" ]]; then + runcpu --config=config_graviton --iterations=2 --copies=$cores --reportable intrate >> log.txt +fi diff --git a/example-benchmarks/spec_cpu_single_core/ansible.yml b/example-benchmarks/spec_cpu_single_core/ansible.yml new file mode 100644 index 0000000..91fa6b7 --- /dev/null +++ b/example-benchmarks/spec_cpu_single_core/ansible.yml @@ -0,0 +1,80 @@ +--- +- name: Install and run sockperf + hosts: localhost + tasks: + - name: Ensure the directory exists + file: + path: /home/ubuntu/specbench + state: directory + mode: '0755' + + - name: Mount image + become: true + command: mount -t iso9660 -o ro,exec,loop cpu2017-1.1.9.iso /mnt + args: + chdir: /home/ubuntu + + - name: Install SPEC CPU + command: ./install.sh -f -d /home/ubuntu/specbench + args: + chdir: /mnt + + - name: Copy x86 config + copy: + src: /home/ubuntu/spec_cpu_single_core/config_x86.cfg + dest: /home/ubuntu/specbench/config/config_x86.cfg + + - name: Copy ARM config + copy: + src: /home/ubuntu/spec_cpu_single_core/config_graviton.cfg + dest: /home/ubuntu/specbench/config/config_graviton.cfg + + - name: Add flags tags to gcc.xml + community.general.xml: + path: /home/ubuntu/specbench/config/flags/gcc.xml + xpath: /flagsdescription + add_children: + - flag: + name: std-c-plus-plus-14 + regexp: -std=c\+\+14 + class: portability + - flag: + name: Wno-error-register + regexp: -Wno-error=register + class: portability + state: present + pretty_print: yes + + - name: Add placeholder for C++14 description + community.general.xml: + path: /home/ubuntu/specbench/config/flags/gcc.xml + xpath: /flagsdescription/flag[@name='std-c-plus-plus-14'] + value: DESCRIPTION_STD_C14 + state: present + pretty_print: yes + + - name: Add placeholder for WNo-Error description + community.general.xml: + path: /home/ubuntu/specbench/config/flags/gcc.xml + xpath: /flagsdescription/flag[@name='Wno-error-register'] + value: DESCRIPTION_WNO_ERROR + state: "present" + pretty_print: yes + + - name: Replace DESCRIPTION_STD_C14 + replace: + path: /home/ubuntu/specbench/config/flags/gcc.xml + regexp: DESCRIPTION_STD_C14 + replace: Compile source code with C++14.

]]> + + + - name: Replace DESCRIPTION_WNO_ERROR + replace: + path: /home/ubuntu/specbench/config/flags/gcc.xml + regexp: DESCRIPTION_WNO_ERROR + replace: Disable treating the use of the 'register' keyword as an error.

]]> + + - name: Make run_spec.sh executable + file: + path: /home/ubuntu/spec_cpu_single_core/run_spec.sh + mode: '0755' \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_single_core/config_graviton.cfg b/example-benchmarks/spec_cpu_single_core/config_graviton.cfg new file mode 100644 index 0000000..8d73351 --- /dev/null +++ b/example-benchmarks/spec_cpu_single_core/config_graviton.cfg @@ -0,0 +1,698 @@ +#------------------------------------------------------------------------------ +# SPEC CPU2017 config file for: gcc / g++ / gfortran on Linux ARM systems +#------------------------------------------------------------------------------ +# +# Usage: (1) Copy this to a new name +# cd $SPEC/config +# cp Example-x.cfg myname.cfg +# (2) Change items that are marked 'EDIT' (search for it) +# +# SPEC tested this config file with: +# Compiler version(s): 5.3, 6.2 +# Operating system(s): Ubuntu 16.04 +# Hardware: Cavium ThunderX, HPE Moonshot +# +# If your system differs, this config file might not work. +# You might find a better config file at http://www.spec.org/cpu2017/results +# +# Known Limitations +# It is possible that you might encounter compile time or run time errors +# with older versions of GCC (for example, 4.x) +# Recommendation: Use a newer version of the compiler. +# If that is not possible, try reducing the optimization. +# +# +# Compiler issues: Contact your compiler vendor, not SPEC. +# For SPEC help: http://www.spec.org/cpu2017/Docs/techsupport.html +#------------------------------------------------------------------------------ + + +#--------- Label -------------------------------------------------------------- +# Arbitrary string to tag binaries +# Two Suggestions: # (1) EDIT this label as you try new ideas. +%define label spec_graviton # (2) Use a label meaningful to *you*. + + +#--------- Preprocessor ------------------------------------------------------- +%ifndef %{bits} # EDIT to control 32 or 64 bit compilation. Or, +% define bits 64 # you can set it on the command line using: +%endif # 'runcpu --define bits=nn' + +%ifndef %{build_ncpus} # EDIT to adjust number of simultaneous compiles. +% define build_ncpus 8 # Or, you can set it on the command line: +%endif # 'runcpu --define build_ncpus=nn' + +# Don't change this part. +%define os LINUX + +%ifndef %{model} +% if %{bits} == 64 +% define model -mabi=lp64 +% elif %{bits} == 32 +% define model -mabi=ilp32 +% else +% error Please define number of bits - see instructions in config file +% endif +%endif + + +#--------- Global Settings ---------------------------------------------------- +# For info, see: +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#tune + +command_add_redirect = 1 +flagsurl = $[top]/config/flags/gcc.xml +ignore_errors = 0 +iterations = 1 +label = %{label}-%{bits} +line_width = 1020 +log_line_width = 1020 +makeflags = --jobs=%{build_ncpus} +mean_anyway = 1 +output_format = txt,html,cfg,pdf,csv +preenv = 1 +reportable = 0 +tune = base,peak + + +#--------- How Many CPUs? ----------------------------------------------------- +# Both SPECrate and SPECspeed can test multiple chips / cores / hw threads +# - For SPECrate, you set the number of copies. +# - For SPECspeed, you set the number of threads. +# See: https://www.spec.org/cpu2017/Docs/system-requirements.html#MultipleCPUs +# +# q. How many should I set? +# a. Unknown, you will have to try it and see! +# +# To get you started, some suggestions: +# +# copies - This config file defaults to testing only 1 copy. You might +# try changing it to match the number of cores on your system, +# or perhaps the number of virtual CPUs as reported by: +# grep -c processor /proc/cpuinfo +# Be sure you have enough memory. See: +# https://www.spec.org/cpu2017/Docs/system-requirements.html#memory +# +# threads - This config file sets a starting point. You could try raising +# it. A higher thread count is much more likely to be useful for +# fpspeed than for intspeed. +# +intrate,fprate: + copies = 1 # EDIT to change number of copies (see above) +intspeed,fpspeed: + threads = 8 # EDIT to change number of OpenMP threads (see above) + + +#------- Compilers ------------------------------------------------------------ +default: +# EDIT: the directory where your compiler is installed +%ifndef %{gcc_dir} +% define gcc_dir /usr +%endif + +# EDIT if needed: the preENV line adds library directories to the runtime +# path. You can adjust it, or add lines for other environment variables. +# See: https://www.spec.org/cpu2017/Docs/config.html#preenv +# and: https://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html + preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64 + #preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64:%{ENV_LD_LIBRARY_PATH} + SPECLANG = %{gcc_dir}/bin/ + CC = $(SPECLANG)gcc -std=c99 %{model} + CXX = $(SPECLANG)g++ -std=c++03 %{model} + FC = $(SPECLANG)gfortran %{model} + # How to say "Show me your version, please" + CC_VERSION_OPTION = -v + CXX_VERSION_OPTION = -v + FC_VERSION_OPTION = -v + +default: +%if %{bits} == 64 + sw_base_ptrsize = 64-bit + sw_peak_ptrsize = 64-bit +%else + sw_base_ptrsize = 32-bit + sw_peak_ptrsize = 32-bit +%endif + + +#--------- Portability -------------------------------------------------------- +default: # data model applies to all benchmarks +%if %{bits} == 32 + # Strongly recommended because at run-time, operations using modern file + # systems may fail spectacularly and frequently (or, worse, quietly and + # randomly) if a program does not accommodate 64-bit metadata. + EXTRA_PORTABILITY = -D_FILE_OFFSET_BITS=64 +%else + EXTRA_PORTABILITY = -DSPEC_LP64 +%endif + +# Benchmark-specific portability (ordered by last 2 digits of bmark number) + +500.perlbench_r,600.perlbench_s: #lang='C' +%if %{bits} == 32 +% define suffix AARCH32 +%else +% define suffix AARCH64 +%endif + PORTABILITY = -DSPEC_%{os}_%{suffix} + +520.omnetpp_r: + PORTABILITY = -Wno-error=register -std=c++14 + +521.wrf_r,621.wrf_s: #lang='F,C' + CPORTABILITY = -DSPEC_CASE_FLAG + FPORTABILITY = -fconvert=big-endian + +523.xalancbmk_r,623.xalancbmk_s: #lang='CXX' + PORTABILITY = -DSPEC_%{os} + +526.blender_r: #lang='CXX,C' + PORTABILITY = -funsigned-char -DSPEC_LINUX + +527.cam4_r,627.cam4_s: #lang='F,C' + PORTABILITY = -DSPEC_CASE_FLAG + +628.pop2_s: #lang='F,C' + PORTABILITY = -DSPEC_CASE_FLAG -fconvert=big-endian + +#---------------------------------------------------------------------- +# GCC workarounds that do not count as PORTABILITY +#---------------------------------------------------------------------- +# The workarounds in this section would not qualify under the SPEC CPU +# PORTABILITY rule. +# - In peak, they can be set as needed for individual benchmarks. +# - In base, individual settings are not allowed; set for whole suite. +# See: +# https://www.spec.org/cpu2017/Docs/runrules.html#portability +# https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# +# Integer workarounds - peak +# + 500.perlbench_r,600.perlbench_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/500.perlbench_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only + 502.gcc_r,602.gcc_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fgnu89-inline + 505.mcf_r,605.mcf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/505.mcf_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 525.x264_r,625.x264_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/525.x264_r.html + EXTRA_CFLAGS = -fcommon +# +# Integer workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + intrate,intspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only -fgnu89-inline -fcommon +# +# Floating Point workarounds - peak +# + 511.povray_r=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/511.povray_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 521.wrf_r,621.wrf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/521.wrf_r.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + 527.cam4_r,627.cam4_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/527.cam4_r.html + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + # See also topic "628.pop2_s basepeak" below + 628.pop2_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif +# +# FP workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + fprate,fpspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + +#-------- Tuning Flags common to Base and Peak -------------------------------- + +# +# Speed (OpenMP and Autopar allowed) +# +%if %{bits} == 32 + intspeed,fpspeed: + # + # Many of the speed benchmarks (6nn.benchmark_s) do not fit in 32 bits + # If you wish to run SPECint2017_speed or SPECfp2017_speed, please use + # + # runcpu --define bits=64 + # + fail_build = 1 +%else + intspeed,fpspeed: + EXTRA_OPTIMIZE = -fopenmp -DSPEC_OPENMP + fpspeed: + # + # 627.cam4 needs a big stack; the preENV will apply it to all + # benchmarks in the set, as required by the rules. + # + preENV_OMP_STACKSIZE = 120M +%endif + + +#-------- Baseline Tuning Flags ---------------------------------------------- +# +default=base: # flags for all base + OPTIMIZE = -g -O3 -march=native + +intrate,intspeed=base: # flags for integer base +%if %{bits} == 32 + EXTRA_COPTIMIZE = -fgnu89-inline -fno-strict-aliasing +%else + EXTRA_COPTIMIZE = -fgnu89-inline -fno-strict-aliasing + LDCFLAGS = -z muldefs +%endif +# Notes about the above +# - 500.perlbench_r/600.perlbench_s needs -fno-strict-aliasing. +# - 502.gcc_r/602.gcc_s needs -fgnu89-inline or -z muldefs +# - 520.omnetpp_r needs -fno-new-ttp-matching (See https://inbox.sourceware.org/gcc-patches/20200629145741.GG3394@redhat.com/T/) +# - For 'base', all benchmarks in a set must use the same options. +# - Therefore, all base benchmarks get the above. See: +# www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# www.spec.org/cpu2017/Docs/benchmarks/500.perlbench_r.html +# www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html + +#-------- Peak Tuning Flags ---------------------------------------------- +default=peak: + OPTIMIZE = -g -Ofast -march=native -flto + PASS1_FLAGS = -fprofile-generate + PASS2_FLAGS = -fprofile-use + +# 628.pop2_s basepeak: Depending on the interplay of several optimizations, +# 628.pop2_s might not validate with peak tuning. Use the base +# version instead. See: +# https:// www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +628.pop2_s=peak: + basepeak = yes + + # + # ----------------------- + # About the -fno switches + # ----------------------- + # + # For 'base', this config file (conservatively) disables some optimizations. + # You might want to try turning some of them back on, by creating a 'peak' + # section here, with individualized benchmark options: + # + # 500.perlbench_r=peak: + # OPTIMIZE = this + # 502.gcc_r=peak: + # OPTIMIZE = that + # 503.bwaves_r=peak: + # OPTIMIZE = other .....(and so forth) + # + # If you try it: + # - You must remove the 'basepeak' option, above. + # - You will need time and patience, to diagnose and avoid any errors. + # - perlbench is unlikely to work with strict aliasing + # - Some floating point benchmarks may get wrong answers, depending on: + # the particular chip + # the version of GCC + # other optimizations enabled + # -m32 vs. -m64 + # - See: http://www.spec.org/cpu2017/Docs/config.html + # - and: http://www.spec.org/cpu2017/Docs/runrules.html + + +#------------------------------------------------------------------------------ +# Tester and System Descriptions - EDIT all sections below this point +#------------------------------------------------------------------------------ +# For info about any field, see +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#hw_memory +#------------------------------------------------------------------------------- + +#--------- EDIT to match your version ----------------------------------------- +default: + sw_compiler001 = C/C++/Fortran: Version 13.2.0 of GCC, the + sw_compiler002 = GNU Compiler Collection + +#--------- EDIT info about you ------------------------------------------------ +# To understand the difference between hw_vendor/sponsor/tester, see: +# https://www.spec.org/cpu2017/Docs/config.html#test_sponsor +intrate,intspeed,fprate,fpspeed: # Important: keep this line + hw_vendor = Amazon Web Services + tester = TUM I13 + test_sponsor = TUM + license_num = nnn (Your SPEC license number) +# prepared_by = # Ima Pseudonym # Whatever you like: is never output + + +#--------- EDIT system availability dates ------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field + hw_avail = # Nov-2099 # Date of LAST hardware component to ship + sw_avail = # Nov-2099 # Date of LAST software component to ship + +#--------- EDIT system information -------------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field + # hw_cpu_name = # Intel Xeon E9-9999 v9 # chip name + hw_cpu_nominal_mhz = # 9999 # Nominal chip frequency, in MHz + hw_cpu_max_mhz = # 9999 # Max chip frequency, in MHz + # hw_disk = # 9 x 9 TB SATA III 9999 RPM # Size, type, other perf-relevant info + hw_model = # TurboBlaster 3000 # system model name + # hw_nchips = # 99 # number chips enabled + hw_ncores = # 9999 # number cores enabled + hw_ncpuorder = # 1-9 chips # Ordering options + hw_nthreadspercore = # 9 # number threads enabled per core + hw_other = # TurboNUMA Router 10 Gb # Other perf-relevant hw, or "None" + +# hw_memory001 = # 999 GB (99 x 9 GB 2Rx4 PC4-2133P-R, # The 'PCn-etc' is from the JEDEC +# hw_memory002 = # running at 1600 MHz) # label on the DIMM. + + hw_pcache = # 99 KB I + 99 KB D on chip per core # Primary cache size, type, location + hw_scache = # 99 KB I+D on chip per 9 cores # Second cache or "None" + hw_tcache = # 9 MB I+D on chip per chip # Third cache or "None" + hw_ocache = # 9 GB I+D off chip per system board # Other cache or "None" + + fw_bios = # American Megatrends 39030100 02/29/2016 # Firmware information + # sw_file = # ext99 # File system + # sw_os001 = # Linux Sailboat # Operating system + # sw_os002 = # Distribution 7.2 SP1 # and version + sw_other = # TurboHeap Library V8.1 # Other perf-relevant sw, or "None" + # sw_state = # Run level 99 # Software state. + +# Note: Some commented-out fields above are automatically set to preliminary +# values by sysinfo +# https://www.spec.org/cpu2017/Docs/config.html#sysinfo +# Uncomment lines for which you already know a better answer than sysinfo + +__HASH__ +502.gcc_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:04:30 +opthash=f109483d241781652e51b7b88d11d9a21c1a4cb053bc972cd7a7fdcb122a309b +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNq1UtFumzAUfecrLL87SdttWqJSCRyaeCXYClBte7ESByJvYKcYKrVfX5uUNn1qHjZLiCPuMffc\ +c26iFao3f4tSVgXQh1ZqZWaeaRspWt50aicb/lg0snzy4QX0LDSWYvFoMplAz8N0xWYAjjvTjLdS\ +jfdCAHeQaXe+mE4drDdb6VeHb18AEgDpoc1IAzRPWYTtK5lHYb4AiIzcM5ZKVN2u6LE5FII/GN20\ +r3T+dXI5wCDPKE9zxtZRmnLKomTFbI0kfIHdf5fBfcQxTW7Jgi+tFHoFTg4q96r7PkVSVVLZbqXS\ +6Dg62lRyY6TaO9axVczsAODa6K4RxQ308Axg7J85+ZFOwx+UZT78YAP0rIGY5bdxsEht7aMlfTWM\ +ErzkA+G/egQ9OgNWJFmR35FtRq/6L9HPbB1Y0nvhc+t66ceLjK6zICQxyX4NE/Z+Qi8myd35+wPQ\ +M6i7aleUpiedxHlOltd6+6cQrblx/Kp+v/sWBgB9UvH8/GCpo+MhnDd9/9RIK2kVZEsek9A1qepX\ +lTR323SySi8GFRoV +exehash=5104cdfe94db9b351f6890ead073919d3dd7fcbe28495886f98c547b67586ef7 + +500.perlbench_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:20:40 +opthash=947c5d5bb410de4cb52ba0adb24d11823e0351a2d31dca231ec6a4a5b3e13e18 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNrVU12rmzAYvvdXBO9TO84Yazke0DStbmkTjMLZboK1acmmsRgd2/n1S+zHTmGwwi7GAuKbN8/7\ +/bybVsOm/Cr3qpagPfaq1Wbumb5TVS+6Qe9UJ77JTu1/hP4b37OisRArT6bTqe95iK7ZHPjBYLpg\ +q3RwqCrgDjT9LqxmMyc25VaF9fHdWwArANtLmEkL4IIzjOxvs8BxsbICwxkRiGYYwHRiv50yfZBS\ +K1XHUge5aiRMVCbNRZPkawJZ2RnZWZX83gedtII5yqor9c66XNAiJlhwEvEEc+EiphEJp+foIipy\ +KnjBWIY5F5ThzZrZN0GibIXFMiWYX6/uJjgtMoSdbrzS5ZLjXMRpzkNbI4D0AZzPOQJJN8WziKIM\ +JQ5g9fuDHt7PoNK10jbdvW7hqeewrFVplD68smbO6NG0Q1fJJ99Dc4BQeGfLT3Aaf6AsD/2b/vue\ +nRxixZJEK27fbmcxvsZ4gxJxBfz3w/E9Oge2E+k6/YxtRfRhLJPRLI/ilKT5p0sfbmc22uHnPIts\ ++b/M/zzF0f3J8LdBmPNtQ328f4cAfAHNUO/k3oygM9v+hmqP7faLrHrz5PB1A670vXIFgJFIZHE/\ +76iDowt3rjn/gxHYxNdRnlh/sUulbs610MKtxKt9+Anm8HdT +exehash=d05a3a8991d2354440134f80d8ee02b2ba72cbe3e9db2f47c33108e3298f4bae + +505.mcf_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:20:43 +opthash=2b4ee5d95adc68b4be57409edc22f0f0064766b5e23db32adb25cf345a157ec4 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNqtUtFugjAUfecrmr5XXVyWacQEKlM2pI1Asu2lQUTTDVpHYcn29SugDp/Gw/rS295ze885t74U\ +KI/f0z3PUiCPJZdCTQ1VFjwpWVGJHS/YZ1rw/ZcJb6ChQ6UhOh6MRiNoGJis6RTAYaWK4ZaL4SFJ\ +QL2QKndmMpnUYR5vuZkd724BSgCS5zYDCdAioA7Wm79w7Gipsa46pgn7ULIoT1lmRSFhQUTpxgkC\ +RqjjrylAZAw6C+0PorqfIC4yLlJ9FBK1IlCc8VhxcahR7YMe1VTATMmqSNI5NPAUYGz21NDCif1I\ +aGjCK0HQ0FZgGj141jLQuWtxTdZ2fLxi+IzoqRYaZAp0P3ftvjq6jIybG+c53FgMdxJ/u9CwaAsp\ +2YSW7Xpu+HIm21gDDc/1n/oPFaBvkFfZLt2rBtSZTJ+xzOT2LU1KNa/xWf5be/EVgMZ0b9F/RqSG\ +X2y+8PtXIzWltRWumOfadZMsP7EkUf0xOr/iByWg/Ws= +exehash=1f2e6cf9670ff39d468e67fa6a1b9d33d630807ca98a1c1e435b76b6d9272e63 + +520.omnetpp_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:22:49 +opthash=274005286c078201e7a17f3e4b5c63e726b9fe2abd72d9e87de35af6c25702cc +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNq1UctOwzAQvPsrLF+rNEVFHKKmUh6mNaSxlYcoXKw2dZEhjSMnQeLvMSmBFi694MuuvbO7M+NY\ +VdZh8yr2shRQ1a1UVeOAptWyaLnuqp3U/E1ouX930RUCJm0MxOTjyWSCAAjoijkQ2V2j7a2s7OfR\ +CP46Zv5WumV9cw2tAlpqWDNW0ApThgMT4hD7+QJapJGHrty0Stu1CTtRn76Z/KB2ojQNDyRb8hhn\ +fk6iECdfk7iXZ5SnOWMJTlNOGY5XzDCg0x82R2DEDB04a1SnCzFHIHBgsF67FwoZ8NS/oyxz0Zku\ +BIwjActvI2+Rmtq5xr7q4zhY8gHwH6IRoA403MiKPGGzg077xXidJR5nNMk8n0Qkexz49YYgEJH4\ +/vLvPN5PzIUztX0RRdvMzzq+rYGwdy4KLzf6r4x+AM0/bT/x/AP2tsQE +exehash=1cf2aed85696fcfe3a730b6638402f19d208b0c45616569d233848172725a44e + +523.xalancbmk_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:28:06 +opthash=6d3d0e94f77cea8d755bb0658ee676291353bcf5b40fe2e49963fc426b39d5b4 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNrtVEFvmzAUvvMrLK4VIVurHaKmkgNeSmdjC8PEdrEIoZU3giNMqvbf9wVERrodssNuQ0K8773P\ +D/t9nxybxtsVP6tHXVfI7DttGrtwbNfqslPtodnqVj1XrX58XbofXAdCCxSIZ/P53HWcgDOxQK5/\ +sK2/0Y3/dHWF3j3Qf6OX9f7TDfJK5JnxNzODvFAKEsAnDskqWwM3xEKomKv0PiE4lJDIMcWximJG\ +mGJyrSjHIUmQF83gfanasrLlr8jfmt058vVuX09StniZoEOna5/ZJ2qKLZzNjxpW7Uz7+p6StkVj\ +SzNwStM8HwlFXTSlr5uyPmwr2KpI+IPKGRU4kcctnhJZGtERDkU5Qonzm2ACPo5xyNkYfsU0CnHK\ ++1XQTmWSjBMhUuI1GYfSz1PhLOVKZkIkUFVckJgJ5PHrXo2BQqM4y9E0IUAfdGvNAU595zrBAgV5\ +vrxQ2ZHPVw9cpEv3TGjXAYsEIvtM8VpC7Vz0vroicXCvoMGJ898H/8YHrsMXCDSKWPSdwKD5dS+A\ +4EmKVxGN0m+jQoNH+irJ0wSrP3LEUXxgfrn8FhjwYMff/XhrNj+qsrN3Z6tPZkKo9xoNL7fm3x64\ +b8+zo40nHn4DYzCAUg== +exehash=c7afcfbdfebfed96e6db07f3747c9f0d57546e96a0c087fd295607c4331a3ca1 + +525.x264_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:28:47 +opthash=9f8249deba2ee1bc4326c744c0aad9b1c72974092b5a064cd194306c4abc49a8 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNrtU11vmzAUfedXWH53SZssa6JSCYjXshFs8SGte7GIQyJvYFcYpmy/foY0HXlaHip1D/jF177H\ +9r3n+ERKoir/UexEWQD13Agl9dLSTS14w+pWbkXNfha12P1y4DW0TKgNxMRXk8kEWpZP1nQJoN3q\ +2t4Iae85B91Autk6fLHowirfCKd8ns8A4gCp0zNXCqBVQrFvpmiFvewBoKDcFlxtma65LaRBB4eb\ ++axbDkK7ODR1roc7XFWVki/3MTdLCUsySmOcJIxQHK3pWc57SjGJVzh2Jofrm+nsw/zjrSmUTMFg\ +oN1etrcLJGQpZGGWUqEjMSgvRa6F3Heo47UhNe2BO63amhf30PKXwPedC3k5won3mdDUgWckQcvQ\ +69PsU+g+JCZ3Tlif9XDkP7IT4B0ZhBZZAtNCsA6+YVMKmfY7+Gsau8wfJP5NbN/Y8SAlcep6QRik\ +T6f+e7ahFQbRl8v/HkC/QdUadna6Bw3EvkTpO7X5XvBG33f4svp79lUqAHodw9XlspMO7p+ke63v\ +TYk0Ja3d9JGFgdc9UlYvVZKs+2uDjzZ6efTy6OXRy6OXRy+PXv5/vPwHT71lnQ== +exehash=67469200b738606c248c542608d955fae32c6d0d607cb97bf57a70f767d6ff33 + +531.deepsjeng_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:28:52 +opthash=7b83f00e401cd189a6e69735bcb63a0af85e9342734f1788fb82d1e640a9d463 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNqNUMtOwzAQvPsrLF+rtEFFHKKmUh6mBOzYykNKuVgkpMhQ4ioPJP4eN21oA5f44l3t7MzOhKoy\ +Pl8+yp3cl1AdWqmqxgJNW8uiFXVXvcpafJW13H3b6AYBXTYaouu5aZoIAI9RbkG06Jp6kctq8Tab\ +wT9P8+fS3h/ubqFRQEMNMnMFDT/m2NNf6GM33Rx76hAiKKYs2p7HwkkTJuKU8wjHsWAch5RrWra8\ +SJyAhGsNuGpUVxflGgHPgl6W2ROvG/DMfWQ8sdHoWAS0TY+n98TZxHo2Pryfujj0HsQFMNEJAsyC\ +WjCgwTPWi2zZs+EsiRzBWZQ4bkCCZDuI9i4RIEH4ND34U3+VGFyp/L0s2mY92vj1C2EfB/Gnp/ff\ +Rk/A0mOWV0H+ACXCpPw= +exehash=13c9182a8c3b527b60e2e0c4f73d5ce349e281bff507020815536a048b3034d8 + +541.leela_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:06 +opthash=a25eb362e6d382db558c966a388109f406c2dd1d4e0bbe1c8906a0a369648988 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2QDiEtNMy4wMFkskMCRnitLkxsrQ2CrLk6CM4+fWVjR2cQC/2SKtdvd33\ +ntD08XG6/jNf3V8vb9fLu9j/xsGD4TJDiePCYi6RKYCaQTBdLhbzaby+mk6j0BkdJlyGWa/3HljE\ +y/Xf1eTubr7aHxA8gRJomFEaEqLp5scFFly6EmfShcNRKKzCO02KAnSwvLxcLCezdTxZXc3j9e3k\ +Zn4fyZfCllgqCZ/js/nl5GERR8MgJjoDO0ZHNwRTJVOeOQ0M7bjdjNFgEBpNQ9ruI/yCMK5iuNhm\ +L6ANVzL68pA4aR0ajgbngzN8PnL1+uJLezZxPllEKRcwDsO6VbMhGkKm6maxb201n8xu5oPfLjM+\ +DSRJBGBBZOZIBiaifcJIn/Z6/Uz1WT9V2moi+yp5otUHV5H83GcWGlJe1vNsr69uyMmT0rhBjJUU\ +r/VZlWmSY+PSKsfD6Gw2hY6mhA/w6iZYBy6XW9C4EgLDvAo0jDKuPzDcIFOu0gsVjgHDnhMLpT1U\ +sxsNhJmoUIaX+1rdOoeDUnRGRoWiREDkkXaBJcYyWpaYgSfjVMDyHKJXMO3QGKTEeT0fTpCERxJ2\ +p5ITQreeDwqHYDUpJ/mzA+z5AVo1xrhpE58dYTmxm9O7npGi8BQfyhXCZd5a7+sWXsGhRWxejYUc\ +v32YjV8UG5Uog+kG6Nb7NNIggJj3NFvboZsdEWfVoUSlMa+hT7u5v51X2jhseblg6lGDn9X3Ef55\ +MboY/uo0uAOtle4UTlOhCGsQmI55o7DWUOMNzK53s91Zu9rbLPRMciJDmxe4TmwU/6l2M6dapa3k\ +qGMEM829Gzq6OR5PjeHYAD6yUcaeDOxbOQ4FcS1mlCsGYoxqSQf3e5I9Nv8SIqpybzlT+RMRkSnt\ +0eZmjGo+37zQAt8/ahzcvDXo63+enm8o+Ae/iPZE +compile_options=\ +@eNqNUMtOwzAQvPsrVr5WeaAiDlFTKQ9TAkls5SEFLhYJKTKUuMoDib/HTQm0IKH44rV3dnZmYtlo\ +b4+v9VbsapD7Xsims1DXt6LqeTs0T6Ll73Urth82vsBIlZ2CqFo3TRMj5NGIWYCNoWuNUjTG82IB\ +v47iL4W9219dglaBJqc1ugTNTxnx1BX7xM03oAX61x938ozyNGcsIWnKKSNxxBQXXf7wHoEhU8Sw\ +6uTQVvUaI88CryjsmZImPHVvKctsfKYQI+XNY/l16GxS1TtXO3ZdEns3fAL8Lx8jaoHaEkTBA1Fo\ +uhwpSJElDmc0yRw3CIPsfto0WsMoDOK7+REf3ycxwUqWL3XVd+uziW+TAGMGoT8/sr82RgKaHwI8\ +Se8TH9yeAA== +exehash=59eb1a8fb591abab12921ae4158c3efbaa5cd7788013faed4c2482117473de7b + +548.exchange2_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:26 +opthash=54bed106c6ee37e8de4e41711455fdf3bb1eb9c3be994b3f3fc94ad7a4dc44a1 +baggage= +compiler_version=\ +@eNp1VE1z2jAQvftX6NZ2gnAItNMy4wPlI5MZEjLEaY+MLK1tBVly9BFIfn1lYwcn0Is90mpXb/e9\ +J7SYbv7M1w83q7vN6j72v3HwaLjMUOK4sJhLZEqgph9MV8vlfBpvrqfTKHRGhwmXYZYqbTWR79Fl\ +vNr8XU/u7+frwynBE9gDDTNKQ0I0zX+MsODS7XEmXTgYhsIqvNOkLEEHq8ViuZrMNvFkfT2PN3eT\ +2/lDJF9Ku8dSSfgcn80Xk8dlHA2CmOgM7Bid3BBMlUx55jQwtOM2H6N+PzSahrTdR/gFYVzFcLnN\ +XkAbrmT05TFx0jo0GPav+pf4aujq9ehLezZxPllEKRcwDsO6VZMTDSFTdbPYt7aeT2a38/5vlxmf\ +BpIkArAgMnMkAxPRHmGkRy8uepnqsV4zyp5Knmj1wVWkuPKZpYaU7+t5ttdXNxTkSWncIMZKitf6\ +rMo0KbBxaZXjYXQ2m0InU8JHeHUTrAOXyy1oXKmBYV4FGkYZ1x8YbpApV4mGCseAYc+Jhb09VrO5\ +BsJMVCrD94da3TrHg1J0RkaFokRA5JF2gSXGMrrfYwaejHMBywuIXsG0Q2OQEudFfTxBEh5J2J1L\ +Tgjdej4oHIPVpJzkzw6w5wdo1Rjjpk18doQVxObndz0jZekpPpYrhcu8v97XLbySQ4vYvBoLBX77\ +MBu/KHOVKINpDnTrzRppEEDMe5qt7dDNjoiz6lii0pjX0Kfdwt/OK20ct7xcMPWowc/q+xD/HA1H\ +g1+dBnegtdKdwmkqFGENAtMxbxTWGmq8gdnNbra7bFcHm4WeSU5kaIsS14mN4j/VbuZUq7SVHHWM\ +YKa5d0NHN6fjqTGcGsBHcmXs2cChldNQENdiRoViIMaolnTwcCDZY/MvIaKq8JYzlT8REZnSHm1h\ +xqjm880LLfD9o8bBzVuDvv7n6fmGgn+sp/g9 +compile_options=\ +@eNqtkMtOwzAQRff5Csv7pEVFSERNpSR1SyCNrTwkYGO1qYMMJbbsFAFfj5OWUB6LLJiNZzTXM3NP\ +Imr7ef3EKr5jQMiGi1q7lm4ULxuq9vWWK/rCFK/ePHgGLZNqIzG5Mx6PoWUtCHEB1JKVUgJ7nhEU\ +mieZo6BYHmvqFzmmWUFIirKMYoKSFfnsxeTiHEy12KuSzYAt+typpOTvbOtUl6/QMktCUixif5l5\ +8MearhugJLyi3wR/7u3E6DZPfUpwmvtBFEf5Xf+lPQdaIV61rkZ7rUYbXo8eKqEata7BVxhoG+7t\ +pLneLtu7j+wcAWw86V2YWS5YhN7AWQc5Dq4xyc1Np4P/lQF2gdkQraJ7ZJR4MohKHCU3w6kcaoOi\ +j6nYPLKy0TNw+qM3CEDnPp4Ph/XbRjcAFy28E3IfNALPSA== +exehash=2a1a71c7b3cc305af6b28da5a0fa8f2ca7c28c617a74e9adedc544e84097d7db + +557.xz_r=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:33 +opthash=421bea877b6815c1807781f6a889dfd067c221fb6ed1ccf96d1b44a28a3e9490 +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNrtU09vmzAcvfMpLO7On6brmqhUIsRN2ABbgUxtLxYxJvUKdoRJtfXTz5AlBe2wHHacJfDv2c/G\ +fu8RKQnL9JXnouBA7WuhpJ5Zuq4Eq2l1kJmo6BuvRP7Tsce2ZUptKKYejEYj27I8HJIZsIcHXQ23\ +Qg53jIGmQV1nDptOm7JMt8Ip9jfXADIA1ekzAwXgIibIM120QPPN8jem7ibBdP6UILxeoLUz+jG+\ +mlx/uvl8awgr9xuiHo4e/CVdOePTkhCF1Mcn9Pjc2yreELJGcUwxQVFIAPQH5tF7zmjJSypUg15S\ +eGV6pspSSVMUYlu8l+kw3YsOal4d+AebvXD22sFalHuj7MdAxos67W3YAVUqd5ypjFdGNjwBnQbz\ +nTzcTqGQhZBmw1wqeLQJpoVItZC7hnW8dUCM2OBOq0PF+L1teTPgec6FLh3peP4Fk8Sxe5bZljHb\ +I5uHwF3GZq5vXzs7R5G3oj3Cfz95ZVt4Boygfug/IyMMnrQj6DFZu+b6HxN/t7mV+biQ4HXizv3A\ +T57OYjfe21bgR18v/y8BfAfloch4rltSJ3qX5O5Obb9zVuv7XmDPqQGgjVSwuDyBuKF7pxSdD/dP\ +VWyPhDdNxjsB/wWIH4oW +exehash=2abaee9754cf40a947430898c8a92ee6cc105d41eeca5ede0ba581993517a4ca + +999.specrand_ir=base=spec_graviton-64: +# Last updated 2024-07-02 07:29:34 +opthash=defc697dfd9d9f3abf3a128aa625ba453c48adf1498e058efb28e0336037187c +baggage= +compiler_version=\ +@eNp1VF1v2jAUfc+v8Ns2FZNSumlDygMDWlWipaLp9ogc+yZxcezUHyXtr58TkpIW9gKy74fPveec\ +oNls82exfrhZ3W1W97H/mwSPhssMJY4Li7lEpgRqhsFstVwuZvHmejaLQmd0mHAZZpS+B5bxavN3\ +Pb2/X6z3CYInUAGtk0JCNM1/XGLBpatwJl04GofCKrzTpCxBB6urq+VqOt/E0/X1It7cTW8XD5F8\ +KW2FpZLwOT5fXE0fl3E0CmKiM7ATdPRCMFMy5ZnTwNCO23yChsPQaBrS7h7hF4RxHcPlNnsBbbiS\ +0ZfHxEnr0Gg8vBie44uxa86XX7rcxPliEaVcwCQMm1FNTjSETDXDYj/aejGd3y6Gv11mfBlIkgjA\ +gsjMkQxMRAeEkQE9OxtkasAGqdJWEzlQyROtf3AdKS58Zakh5VWzz+75+oWCPCmNW8RYSfHa5KpM\ +kwIbl9Y1Hkbvsm10tCV8gNcMwXpwudyCxrUQGOZ1oGWUcf2B4RaZcrVeqHAMGPacWKjsoZvNNRBm\ +olIZXu179fscEqXorYwKRYmAyCPtA0uMZbSqMANPxqmA5QVEr2C6pTFIifN6PmSQhEcSdqeKE0K3\ +ng8Kh2C9KSf5swPs+QFaD8a46QqfHWEFsfnpW89IWXqKD+1K4TJvrfdzB6/k0CE2r8ZCgd8+7MYf\ +ylwlymCaA916n0YaBBDzXmYbO/SrI+KsOrSoNeY19Om28K/zWhuHKy8XTD1q8Lv6PsY/L8eXo1+9\ +AXegtdK9xmkqFGEtAtMzbxQ2Gmq9gdnNbr477057m4WeSU5kaIsSN4Wt4j/1bvfUqLSTHHWMYKa5\ +d0NPN8fraTAcG8BHcmXsycB+lONQEDdiRoViICaokXTwsCfZY/NfQkRV4S1nan8iIjKlPdrCTFDD\ +55sXWuDnR62D228N+vqfT883FPwDOJH2BA== +compile_options=\ +@eNqtUdFugjAUfecrmr5XXVyWScREKnNsSIlisu2FYCmmG7SGwpLt61dqMLiX8bC+9Lb33HvPPSeU\ +ApXpB8t5wYA81VwKZVuqrjitk6oRGa+ST1bx/MuBN9DSodIQHY8mkwm0LEw2kQ3guFHV+MDF+Egp\ +aA9SdebQ2awNy/TAneJ0dwsQBUh2Y0YSoNUu8rC+wpXn7tcA+erEaJWKDFFZllLoajIFvYPyo2ju\ +Z4iLggumn0KiM1uUFjxVXBxblOmbBJGeCeZKNhVlC2hhG2DsDCR7hhP3iUSxA6+YQ0vvjKP9Q7Bc\ +73TueguTdb0QPyYd4Pda0CI20H39jf/m6TyZmh/vJd4uE9xL/L2tmXYujMg2Xrp+4MevHSkjAbQC\ +P3we7hJA36BsiozlyoB6DgyRfy4P74zWanHl20U8AIyywWq4EaSF407MC7l/VdFQIvvW6p7PP1rQ\ +6fs= +exehash=a68b2becada00a5b440ba02b35ca0a971d74af8ee11bb26bd2aa0276b3ad744f \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_single_core/config_x86.cfg b/example-benchmarks/spec_cpu_single_core/config_x86.cfg new file mode 100644 index 0000000..4b556c0 --- /dev/null +++ b/example-benchmarks/spec_cpu_single_core/config_x86.cfg @@ -0,0 +1,653 @@ +#------------------------------------------------------------------------------ +# SPEC CPU(R) 2017 config for gcc/g++/gfortran on Linux x86 +#------------------------------------------------------------------------------ +# +# Usage: (1) Copy this to a new name +# cd $SPEC/config +# cp Example-x.cfg myname.cfg +# (2) Change items that are marked 'EDIT' (search for it) +# +# SPEC tested this config file with: +# Compiler version(s): Various. See note "Older GCC" below. +# Operating system(s): Oracle Linux Server 6, 7, 8 / +# Red Hat Enterprise Linux Server 6, 7, 8 +# SUSE Linux Enterprise Server 15 +# Ubuntu 19.04 +# Hardware: Xeon, EPYC +# +# If your system differs, this config file might not work. +# You might find a better config file at https://www.spec.org/cpu2017/results +# +# Note: Older GCC +# +# Please use the newest GCC that you can. The default version packaged with +# your operating system may be very old; look for alternate packages with a +# newer version. +# +# If you have no choice and must use an old version, here is what to expect: +# +# - "peak" tuning: Several benchmarks will fail at peak tuning if you use +# compilers older than GCC 7. +# In that case, please use base only. +# See: https://www.spec.org/cpu2017/Docs/overview.html#Q16 +# https://www.spec.org/cpu2017/Docs/config.html#tune +# Peak tuning is expected to work for all or nearly all +# benchmarks as of GCC 7 or later. +# Exception: +# - See topic "628.pop2_s basepeak", below. +# +# - "base" tuning: This config file is expected to work for base tuning with +# GCC 4.8.5 or later +# Exception: +# - Compilers vintage about 4.9 may need to turn off the +# tree vectorizer, by adding to the base OPTIMIZE flags: +# -fno-tree-loop-vectorize +# +# Unexpected errors? Try reducing the optimization level, or try removing: +# -march=native +# +# Compiler issues: Contact your compiler vendor, not SPEC. +# For SPEC help: https://www.spec.org/cpu2017/Docs/techsupport.html +#------------------------------------------------------------------------------ + + +#--------- Label -------------------------------------------------------------- +# Arbitrary string to tag binaries (no spaces allowed) +# Two Suggestions: # (1) EDIT this label as you try new ideas. +%ifndef %{label} +% define label "c6itest" # (2) Use a label meaningful to *you*. +%endif + + +#--------- Preprocessor ------------------------------------------------------- +%ifndef %{bits} # EDIT to control 32 or 64 bit compilation. Or, +% define bits 64 # you can set it on the command line using: +%endif # 'runcpu --define bits=nn' + +%ifndef %{build_ncpus} # EDIT to adjust number of simultaneous compiles. +% define build_ncpus 8 # Or, you can set it on the command line: +%endif # 'runcpu --define build_ncpus=nn' + +# Don't change this part. +%if %{bits} == 64 +% define model -m64 +%elif %{bits} == 32 +% define model -m32 +%else +% error Please define number of bits - see instructions in config file +%endif +%if %{label} =~ m/ / +% error Your label "%{label}" contains spaces. Please try underscores instead. +%endif +%if %{label} !~ m/^[a-zA-Z0-9._-]+$/ +% error Illegal character in label "%{label}". Please use only alphanumerics, underscore, hyphen, and period. +%endif + + +#--------- Global Settings ---------------------------------------------------- +# For info, see: +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#tune + +command_add_redirect = 1 +flagsurl = $[top]/config/flags/gcc.xml +ignore_errors = 1 +iterations = 1 +label = %{label}-m%{bits} +line_width = 1020 +log_line_width = 1020 +makeflags = --jobs=%{build_ncpus} +mean_anyway = 1 +output_format = txt,html,cfg,pdf,csv +preenv = 1 +reportable = 0 +tune = base,peak + + +#--------- How Many CPUs? ----------------------------------------------------- +# Both SPECrate and SPECspeed can test multiple chips / cores / hw threads +# - For SPECrate, you set the number of copies. +# - For SPECspeed, you set the number of threads. +# See: https://www.spec.org/cpu2017/Docs/system-requirements.html#MultipleCPUs +# +# q. How many should I set? +# a. Unknown, you will have to try it and see! +# +# To get you started, some suggestions: +# +# copies - This config file defaults to testing only 1 copy. You might +# try changing it to match the number of cores on your system, +# or perhaps the number of virtual CPUs as reported by: +# grep -c processor /proc/cpuinfo +# Be sure you have enough memory. See: +# https://www.spec.org/cpu2017/Docs/system-requirements.html#memory +# +# threads - This config file sets a starting point. You could try raising +# it. A higher thread count is much more likely to be useful for +# fpspeed than for intspeed. +# +intrate,fprate: + copies = 1 # EDIT to change number of copies (see above) +intspeed,fpspeed: + threads = 4 # EDIT to change number of OpenMP threads (see above) + + +#------- Compilers ------------------------------------------------------------ +default: +# EDIT: The parent directory for your compiler. +# Do not include the trailing /bin/ +# Do not include a trailing slash +# Examples: +# 1 On a Red Hat system, you said: +# 'dnf install gcc-toolset-11' +# Use: % define gcc_dir "/opt/rh/gcc-toolset-11/root/usr" +# +# 2 You built GCC in: /disk1/mybuild/gcc-11.2.0/bin/gcc +# Use: % define gcc_dir "/disk1/mybuild/gcc-11.2.0" +# +# 3 You want: /usr/bin/gcc +# Use: % define gcc_dir "/usr" +# WARNING: See section "Older GCC" above. +# +%ifndef %{gcc_dir} +% define gcc_dir "/usr" # EDIT (see above) +%endif + +# EDIT: If your compiler version is 10 or greater, you must enable the next +# line to avoid compile errors for several FP benchmarks +# +%define GCCge10 # EDIT: remove the '#' from column 1 if using GCC 10 or later + +# EDIT if needed: the preENV line adds library directories to the runtime +# path. You can adjust it, or add lines for other environment variables. +# See: https://www.spec.org/cpu2017/Docs/config.html#preenv +# and: https://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html + preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64 + #preENV_LD_LIBRARY_PATH = %{gcc_dir}/lib64/:%{gcc_dir}/lib/:/lib64:%{ENV_LD_LIBRARY_PATH} + SPECLANG = %{gcc_dir}/bin/ + CC = $(SPECLANG)gcc -std=c99 %{model} + CXX = $(SPECLANG)g++ -std=c++03 %{model} + FC = $(SPECLANG)gfortran %{model} + # How to say "Show me your version, please" + CC_VERSION_OPTION = --version + CXX_VERSION_OPTION = --version + FC_VERSION_OPTION = --version + +default: +%if %{bits} == 64 + sw_base_ptrsize = 64-bit + sw_peak_ptrsize = 64-bit +%else + sw_base_ptrsize = 32-bit + sw_peak_ptrsize = 32-bit +%endif + + +#--------- Portability -------------------------------------------------------- +default: # data model applies to all benchmarks +%if %{bits} == 32 + # Strongly recommended because at run-time, operations using modern file + # systems may fail spectacularly and frequently (or, worse, quietly and + # randomly) if a program does not accommodate 64-bit metadata. + EXTRA_PORTABILITY = -D_FILE_OFFSET_BITS=64 +%else + EXTRA_PORTABILITY = -DSPEC_LP64 +%endif + +# Benchmark-specific portability (ordered by last 2 digits of bmark number) + +500.perlbench_r,600.perlbench_s: #lang='C' +%if %{bits} == 32 +% define suffix IA32 +%else +% define suffix X64 +%endif + PORTABILITY = -DSPEC_LINUX_%{suffix} + +521.wrf_r,621.wrf_s: #lang='F,C' + CPORTABILITY = -DSPEC_CASE_FLAG + FPORTABILITY = -fconvert=big-endian + +523.xalancbmk_r,623.xalancbmk_s: #lang='CXX' + PORTABILITY = -DSPEC_LINUX + +526.blender_r: #lang='CXX,C' + PORTABILITY = -funsigned-char -DSPEC_LINUX + +527.cam4_r,627.cam4_s: #lang='F,C' + PORTABILITY = -DSPEC_CASE_FLAG + +628.pop2_s: #lang='F,C' + CPORTABILITY = -DSPEC_CASE_FLAG + FPORTABILITY = -fconvert=big-endian + +#---------------------------------------------------------------------- +# GCC workarounds that do not count as PORTABILITY +#---------------------------------------------------------------------- +# The workarounds in this section would not qualify under the SPEC CPU +# PORTABILITY rule. +# - In peak, they can be set as needed for individual benchmarks. +# - In base, individual settings are not allowed; set for whole suite. +# See: +# https://www.spec.org/cpu2017/Docs/runrules.html#portability +# https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# +# Integer workarounds - peak +# + 500.perlbench_r,600.perlbench_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/500.perlbench_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only + 502.gcc_r,602.gcc_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/502.gcc_r.html + EXTRA_CFLAGS = -fno-strict-aliasing -fgnu89-inline + 505.mcf_r,605.mcf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/505.mcf_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 525.x264_r,625.x264_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/525.x264_r.html + EXTRA_CFLAGS = -fcommon +# +# Integer workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + intrate,intspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing -fno-unsafe-math-optimizations -fno-finite-math-only -fgnu89-inline -fcommon +# +# Floating Point workarounds - peak +# + 511.povray_r=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/511.povray_r.html + EXTRA_CFLAGS = -fno-strict-aliasing + 521.wrf_r,621.wrf_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/521.wrf_r.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + 527.cam4_r,627.cam4_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/527.cam4_r.html + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + # See also topic "628.pop2_s basepeak" below + 628.pop2_s=peak: # https://www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif +# +# FP workarounds - base - combine the above - https://www.spec.org/cpu2017/Docs/runrules.html#BaseFlags +# + fprate,fpspeed=base: + EXTRA_CFLAGS = -fno-strict-aliasing +% ifdef %{GCCge10} # workaround for GCC v10 (and presumably later) + EXTRA_FFLAGS = -fallow-argument-mismatch +% endif + + +#-------- Tuning Flags common to Base and Peak -------------------------------- +# +# Speed (OpenMP and Autopar allowed) +# +%if %{bits} == 32 + intspeed,fpspeed: + # + # Many of the speed benchmarks (6nn.benchmark_s) do not fit in 32 bits + # If you wish to run SPECint2017_speed or SPECfp2017_speed, please use + # + # runcpu --define bits=64 + # + fail_build = 1 +%else + intspeed,fpspeed: + EXTRA_OPTIMIZE = -fopenmp -DSPEC_OPENMP + fpspeed: + # + # 627.cam4 needs a big stack; the preENV will apply it to all + # benchmarks in the set, as required by the rules. + # + preENV_OMP_STACKSIZE = 120M +%endif + +#-------- Base Tuning Flags ---------------------------------------------- +# EDIT if needed -- If you run into errors, you may need to adjust the +# optimization - for example you may need to remove +# the -march=native. See topic "Older GCC" above. +# +default=base: # flags for all base + OPTIMIZE = -g -O3 -march=native + + +#-------- Peak Tuning Flags ---------------------------------------------- +default=peak: + OPTIMIZE = -g -Ofast -march=native -flto + PASS1_FLAGS = -fprofile-generate + PASS2_FLAGS = -fprofile-use + +# 628.pop2_s basepeak: Depending on the interplay of several optimizations, +# 628.pop2_s might not validate with peak tuning. Use the base +# version instead. See: +# https:// www.spec.org/cpu2017/Docs/benchmarks/628.pop2_s.html +628.pop2_s=peak: + basepeak = yes + + +#------------------------------------------------------------------------------ +# Tester and System Descriptions - EDIT all sections below this point +#------------------------------------------------------------------------------ +# For info about any field, see +# https://www.spec.org/cpu2017/Docs/config.html#fieldname +# Example: https://www.spec.org/cpu2017/Docs/config.html#hw_memory +#------------------------------------------------------------------------------- + +#--------- EDIT to match your version ----------------------------------------- +default: + sw_compiler001 = C/C++/Fortran: Version 13.2.0 of GCC, the + sw_compiler002 = GNU Compiler Collection + +#--------- EDIT info about you ------------------------------------------------ +# To understand the difference between hw_vendor/sponsor/tester, see: +# https://www.spec.org/cpu2017/Docs/config.html#test_sponsor +intrate,intspeed,fprate,fpspeed: # Important: keep this line + hw_vendor = Amazon Web Services + tester = TUM I13 + test_sponsor = TUM + license_num = nnn (Your SPEC license number) +# prepared_by = # Ima Pseudonym # Whatever you like: is never output + + +#--------- EDIT system availability dates ------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field + hw_avail = # Nov-2099 # Date of LAST hardware component to ship + sw_avail = # Nov-2099 # Date of LAST software component to ship + fw_bios = # Version Mumble released May-2099 # Firmware information + +#--------- EDIT system information -------------------------------------------- +intrate,intspeed,fprate,fpspeed: # Important: keep this line + # Example # Brief info about field +# hw_cpu_name = # Intel Xeon E9-9999 v9 # chip name + hw_cpu_nominal_mhz = # 9999 # Nominal chip frequency, in MHz + hw_cpu_max_mhz = # 9999 # Max chip frequency, in MHz +# hw_disk = # 9 x 9 TB SATA III 9999 RPM # Size, type, other perf-relevant info + hw_model = # TurboBlaster 3000 # system model name +# hw_nchips = # 99 # number chips enabled + hw_ncores = # 9999 # number cores enabled + hw_ncpuorder = # 1-9 chips # Ordering options + hw_nthreadspercore = # 9 # number threads enabled per core + hw_other = # TurboNUMA Router 10 Gb # Other perf-relevant hw, or "None" + +# hw_memory001 = # 999 GB (99 x 9 GB 2Rx4 PC4-2133P-R, # The 'PCn-etc' is from the JEDEC +# hw_memory002 = # running at 1600 MHz) # label on the DIMM. + + hw_pcache = # 99 KB I + 99 KB D on chip per core # Primary cache size, type, location + hw_scache = # 99 KB I+D on chip per 9 cores # Second cache or "None" + hw_tcache = # 9 MB I+D on chip per chip # Third cache or "None" + hw_ocache = # 9 GB I+D off chip per system board # Other cache or "None" + +# sw_file = # ext99 # File system +# sw_os001 = # Linux Sailboat # Operating system +# sw_os002 = # Distribution 7.2 SP1 # and version + sw_other = # TurboHeap Library V8.1 # Other perf-relevant sw, or "None" +# sw_state = # Run level 99 # Software state. + + power_management = # briefly summarize power settings + +# Note: Some commented-out fields above are automatically set to preliminary +# values by sysinfo +# https://www.spec.org/cpu2017/Docs/config.html#sysinfo +# Uncomment lines for which you already know a better answer than sysinfo + +__HASH__ +505.mcf_r=base=c6itest-m64: +# Last updated 2024-06-27 08:47:11 +opthash=5737cf0e0d89c6869a2881cb41c2cd15f2e18ec5db2c750058f995d78d11b73f +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNq1Ul1PgzAUfedXNH2vm9EYt8gSYKgoo82ARH0hWMusQqu0mMxfb4GxucToXuxLb+89vR/n3EgK\ +VOWvrOAlA/JNcynU1FK65lRndSOeeJ19sJoXaxseQ8uYykCMfTQej6FleXhBpgCOGlWPHrkYrSgF\ +7UFKP9l0MmnN6uwUIAqQHAocSYDmMfE9c0Vz302vDCpQb4xm70rWehPNnDTBWZwSsvTjOMPEjxYE\ +oBVA+MRkzWv6bItc8w8GtgcVQqK+fZSXPFdcrHpnI1ReMPNNP6O2j4p/5l03fbjggushLMq18a5E\ +cz5BXJRcMPOksqqk6Kv0/YXETAYulGxqymbQ8qbA8+w/yeiB2L3BJLHhHjPQMmx6JL0MnavYxPZZ\ +6qKuH3nXmTcgDqQNWngKTL1gETz45tsPJHYQ/y5ZOrvs/81mN1Ffk+Bl4rhBGCT3w+AdwdAKg+j2\ +kB3rnb+ux4V8fGFUq1mLLKvd2mwVAKCTJ5wfouMBnJpcCye5zsLAbQktq016nLbafxP+C37ADqE= +exehash=c3ef8d086929e175d8c740f973851247759390233c84140a0f4310f137c36ff5 + +505.mcf_r=peak=c6itest-m64: +# Last updated 2024-06-27 08:48:21 +opthash=6804b57c3c4683509df403791e0b2fdb5e33b25419c71b81edddd2810afe1671 +baggage= +compiler_version=\ +@eNrtUMtqwzAAu/srdGxhC22y03ryTEINXWJsZ9BTyVzncbGL42z07+eUfsZAICQkHSSoUnswdvkq\ +peJNfWmETvROBmOwab8XFxfsiyzPdq95sTz02/bpEOZv9zANY8SGbZHv8gJVsBbK9/G3CxaVX9y1\ +i5N3L+DOZESP04yEfo3Nz9gBc1JxXJ0lGIveB5i0PbkhsbtO68KcAXq0aTX164akZuhcvB/gfIT9\ +se7R+ywlO9Ja0w9+4vqMZFVc16VSqBoJCkGl5qw9UQnRStGoMiNEpB/y/x/+AMbCphg= +compile_options=\ +@eNrFk1FvmzAUhd/5FZbVVzeJNU1qVSoBYS0bASuAtO7Foo5JvQWc2U6r/fuZurSrUmVk0zS/gHTO\ +tX3P9ZfJDrX1N96IDQdya4Ts9LmnjRLMULXrVkLRe65E88OHM+gZVYuOPghz58PHf+hZVdsqK59O\ +p1PoeVG+ILNzACc7rSa3opusGQP9QtqsfHZ21v+2798BxACSw6GnEqB5QeLIfrJ5HFZX1pXoLWf0\ +u5bKPKk0qMqcFhUhy7goaE7ibEEAarZK9i2gNe+4qg23xWuA8qbWtrKtFbvzu9qIe269GyPB80JN\ +J5HrF9UbUWvRrZ3gzkuJvSm40HKnGL+EXmRbiyL/t909OfPwY05KH77qFXp9QBGpPqTBVWHF1407\ +OYyz6JpGg2VkFNDLbS0JimJGh9K9cJzJ3itZJF9i6zgUlTPHn8tl8HKbN0Jzt3Y+ki/LIEzSpLwZ\ +unsMEnppkn0a9TjcbP54rBfy9itnRl/222zal3E/DwEAN6J0PmaYRwXWb7sIymuaJmGf1qYdjsqr\ +/i388hCWVWaFEybbtu5WDh78v+DZ6X/IDR7NDT7ADT7MDf4LbrDjBu9zY3Nx+nhk8Ehk8Dhk8PHI\ +HDPMkbTg0bQck1W/7R4t+E1afgKVOPDc +exehash=662c677d0f4477ff312c9eb7844c9c73439a46ba32eca9e13cdf6de287004be5 + +500.perlbench_r=base=c6itest-m64: +# Last updated 2024-06-27 08:50:47 +opthash=5bd0f9c928046a083e99de11face2bfb8b723401b2fc209a2a9d57c5d6ced82c +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNrVU8GOmzAQvfMVFneHVK2qJlpWAuIktCS2MEhpLxZLTNYtmJVNVt1+fQdI0kbdqntoD7WEGM+M\ +5s3Me962GjfFF1mpWqL2oVOttnPHdkaVnTBHvVdGPEqjqifffeU6YFpIAXsynU5dx4nohs2R6x2t\ +8e6U9g5lifqDbbf3y9msN5u3bxAuEW7PAJMW4QVnJILfdkHCfAUGI2kiIpoShOMJfHtlOy+mYJUP\ +hfYy1Ui8Vqm0Z8862ySYFcZKAy75tfOMBMM+yNIUeg8lFzQPEyJ4EvA14aJHjIPEn57QRZBnVPCc\ +sZRwLigj2w2DmEiCdEXEMk4Iv1z7m+A0TyPS+4YrXS45yUQYZ9yHGRE+IExfw8CFKe99XXTqUaLT\ +OUEm8Tbfid2QXekWj5vGRa0Kq/RhdB61LSoJZbp73K+sUd+KYXFjuFJadeewrp/Ae9DHdzOsdK00\ +7KAq26Zp9RUu6yFvbHs0pbx1nWiOosj/I29jIg3fU5b57hWJrgPERyxfJsGKQ+ya0CEakm20FpeE\ +/55h16FzBJuIN/EnAhM9Q/cwN6NpFoRxEmcfz4v5QfxQhOyyNBDReTX/WglDVyPms72xvi3o8MNL\ +nvLo/J3Uf9U5nJv27rMsO3vbJ9QNujyKi5oQGqSWLF6iyb/CAqBtgmwNrrCnoG5ODdC8V/pPMv8O\ +33uEXg== +exehash=da51419028397adf783795465d5e7d46b7544819a1fdd34a01c495940d38a15e + +502.gcc_r=base=c6itest-m64: +# Last updated 2024-06-27 08:51:32 +opthash=84aa2d950cccb6fb8bcbdd2eabcd22c071c78c26fd529e000c30672e1575b736 +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNq1UtFumzAUfecrLL87Sbd1WqJSCRyaeCPYCjBte7GoY1JvYHcYKrVfXwOlW6Vqy0stIa7uPb73\ ++JybGI3q4pcsVSWBuW2V0Xbl2bZRouVNpw+q4XeyUeW9D8+g50LrIC6eLRYL6HmY7tgKwHlnm/m1\ +0vOjEKA/yLYHXyyXfVh//ACQAMhMA2YGoHXKIux+yToK8w1AZNZ/c6VF1R3kENtbKfhva5r2Cc7P\ +F++mMMgzytOcsX2UppyyKNkxVyMJ3+C+7zb4GnFMkyuy4VtH4ggQfe+4FI248XXRqjsJng8qtUHj\ +o1FRqcIqfRyTnbZFKd219gb17Gv1UAxvGMul0qqdyrq6d9mj7j4tkdKV0u4ZpTB1bfQ4ZWQeM6cH\ +uLCma4S8hB5eAYz9/0o4Amn4mbLMhy/0hJ7zALP8Kg42qau91HaohlGCt3wCvKnY0KMr4EiSHfkR\ +uWGvKD9Aom/ZPuB44vTWFgwyjDMZ3WdBSGKSfZ/UGlyBXkySL6es85j8505dmOufUrT2skdW9Z9d\ +e7YNgMHTeH2K+Sdo6nrtgmzLYxL2glb1U3ua9wvz17Y8AtEfKzw= +exehash=819acba0a47fd12bc3c7da7c85264941d8f89011df65195a6ab53f5e5fbd60d0 + +525.x264_r=base=c6itest-m64: +# Last updated 2024-06-27 08:51:46 +opthash=0afeb5ce7b3395d1b57166aa3e47fd089b6cf4afeb7ab0e5b2a8830cc74f222e +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNrtU99vmzAQfuevsHh3Sdssa6JSCQhr2Qi2+CG1e0HUMalbsCcMVdq/fgZCl0hVm5dp0oRfON8d\ +d+fvuy8QHJbZE81ZQYH4VTPB5UKTdcVInVYNX7MqfaYVy19M/VTXlClVirJPJpOJrmkOWuEF0I1G\ +VsY948aGENAeKOu1Sebz1ixnUwAJgGJocCIAXEbYddQnWLp2cg2gV6wpEetUVsRgXGV727PZtL3u\ +mQbd1lUm9z1ElKXgu3qplcQojRKMQzeKUoTdYIUPYvZd7KJw6YbmZHt6dj79Mvt6oUbcAIjO1aRZ\ +RR5MntXsmYK3A3MuYA8JzAqWScY3vbPhMsup+q1+gO3bSvaadS/swznjrB7CvHhR3g1vLuaQ8YJx\ +qq676bsu/ZQ+VmiBSymaitArXXMWwHHMTwHuE5H9HeHY1A/Q1jXFkIOTb751HanYIfJd1HYD5yYd\ +Ev4hFbqGFkA9wVt5P101yju8dCnubRxaqTNM/LcJ6kDqe2IUxpbt+V58N2DZcaZrvhf8OEYKvfPD\ +jbsU94+U1PKqzSzKP5v4RioAHeP+8pjVOAJTVWtlxTep79ktoEW5K4+Sdp32dmlU/Kj4UfGj4kfF\ +j4ofFf9/Kv43V6SZEg== +exehash=01416fd84991bd7d6baf896abc1c1c5b67a6cbe5009d630c32adf0b3f31d9593 + +557.xz_r=base=c6itest-m64: +# Last updated 2024-06-27 08:51:50 +opthash=db207b5f813628e5cd301cc205d208b033d0bd4d144e6245ed5ac334901d565a +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNrtVN9vmzAQfuevsHh3frRd10SlUkLchC1gRGBq+2I5jkm8gh1hUq3962egtESttrzsbZbA992d\ +7+C7Tw6UhDl95KnIOFD7Uiipx5YuC8FKUhzkRhTkiRcifXbsoW0ZU5sUY/cGg4FtWS72wzGw+wdd\ +9NdC9reMgWpBXW4cNhpVZn55ASADULUNegrA2SpErtmCGZom81dMJkmMyfQ+RjiaocgZ/BqenV98\ +ufx6ZRIWkx+IuDi49eZk4QzbIz7yiYdbdPdwVGqVhGGEViuCQxT4IYBezzx6zxnJeU6EqtCOwjOz\ +M5XnShojE+vsJad9uhcdVL068EM223H22MFa5HvD6btjw7OSHhXsgILKLWdqwwtD2BZAfG54owXb\ +OZKW4omDtwVTqWAzIEgzQbWQ28Z5kJqm3Bwrd7BiOhcvtOa7CadCirINy+zZeLfycDWCQmZCmi9N\ +X/+p7tKQuAzN7MC1VoeC8RvbcsfAdZ2/jrtJxNNvOIwd+2j2tmX04obJ7XIyX5nYsQ7q6BQF7oIc\ +JfwXBi9sC4+BIdTzvQdkiPlEJXUKuoujCXFb/v61XOqRNT1DHMWTqbf04vu3wVUKsq2lF3w/5Zpo\ +nH/U/7Va/+Ss1Degs971BUAtvuXsFJWeQGhdCyeVjDsa/g0wE5s9 +exehash=acb8529a5e3479c88f091ea0f1bef7200dd16b81160a52c3b7c015d2bfe2c122 + +999.specrand_ir=base=c6itest-m64: +# Last updated 2024-06-27 08:51:51 +opthash=931cfbab34441c8f31ca9285c2a67f7e5e211e6824cf85c11aafbbf579d17f25 +baggage= +compiler_version=\ +@eNotjM1qwzAAg+9+Ch1b2EyX7LSePJMwQxcH2xn0VDLX+bnYw3E2+vZzSkEg9CEJnF++KqWFbC6y\ +NdneyGgtdt336tOKl5IW9PBclOs9v+4fhPDwc4vzOCXs+B7FoShRR+egw5D++uhQh9Vf+zQH/wTh\ +LSVmmhdkDVttedSOWHJK00bWaB2GEGHz9+zH7P46bw8LBczk8mveN5LkZex9uh3hQ4L7df6++6wU\ +/2CNYe/iJMwZGdXCNJXWqKUCQ8uUEbw7MYW2U63UFSX/HNJRnw== +compile_options=\ +@eNq1UlFPgzAQfu+vaPrebUZjHJElG8OJMiAbS9QX0nWFVaFdWlgyf70Fgm7G6F68F4777u67+66B\ +FLggbyzlOYNyV3IptAV0qTgtE1WJDVfJnimeHmx0gYBxtUkxfm8wGCAAnHAeWRD1K636ay76GaWw\ +NqzLjU2Hw9otrq8gphDLjqAnIZ4uI9cxn2DqTlYziD29Y1QRscFUFoUUpi6DOLw05UTRrS1IyfcM\ +fhpOhcTtnJjknGgusjZYCU1SZsrKLa4JC/5OGtoWTrngZQeL/GCimahuhpiLnAtmfrsBapZmzMSP\ +zArwVstKUTZCwLGg49h/bt0mhpOHMIptdCIBAkY2J1rd+ePZ0mCncjToxA2c+6RL+K4PAqEFTV9v\ +7r24Bv9BrCbFfYoX48Tp2vy3as3kLWcULuLxxPO9+LlbsBESAd8LHs95NG3w12dwK9evjJZ6BI/s\ +S2YImxv403OOdYagTa9wVV/z6JQfz5n7Ig== +exehash=cec9428ef810cda0cdbbda5c0004d7a8a485862af3c544e720395406a63b22de + +520.omnetpp_r=base=c6itest-m64: +# Last updated 2024-06-27 08:52:52 +opthash=7170896242f47d9d1bbaf67da665ab85d63038e800e0b4c26958ce80f7bad925 +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNq1UUtPg0AQvvMrJnslWzAaD6Q04bG2KGU3PGL1QihsK1rYhoeJ/94tltgmRntxLjOZ5/d9E4ga\ +V9kb35Q7DmLflaJuDaXtmjLv0qavi7JJ33lTbj5MdIUUGbayRcYTXdeRojh0yQxAWt822rqsta2q\ +wsFw2xVmrqr6NeDq9gZwDliMByYCsBsx4kgXuMRO5oC9tqz6XdaJRttLV/D9aU7GlSj4Tg48evEi\ +DUhsJ57vkvC4KbWSmKZRwlhIoiiljARLJmFsAdMDhKzJX8w668p3DqMdJ30m8cG0FX2T8xlSHAOc\ +1cr8k9PYSe17ymITnVFEipTFYcmdb80jWTunO1RtEjiLdGz4D/5IoQZIbN7Seybyxg9iDEjIKg6t\ +lNEwtmzP9+KnEfCgDVJ8L3i45Mlfyd8kh6lYv/K8a2dwYt+yAQyq+u4l8l9AbthFk8N3Tl7zCQlV\ +2HQ= +exehash=b98c3655648414264b6708282e0f735e987abd609b58f4f492951afed00a5da9 + +523.xalancbmk_r=base=c6itest-m64: +# Last updated 2024-06-27 08:53:31 +opthash=33fe2c11095c98ec29f6fc686a6380260f271a7bab6c5a1db6ac89895719188f +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNrtVN1umzAYvecpLG4jQrZVu4hKJQe8lA6whWFiu7GooZk3sCtMovbtZ0C0ZOu0StPuZgnx/ZzP\ +NucckSjptOX3+k40NVD3vVBSby3dd4L3rDvKSnTsVHfi7tGz39iWCbWBmHi92Wxsy/JxTLbAdo+6\ +c2+FdA+rFRiWo/vK46vV5h1w2vcXwOHAUfMBawWcgBLkm1cSoF2+NwMBJIQlmGXXKYIBNYUCRjBh\ +YRKjmMV0zyIMA5QCJ1yb56HueK35c+RWqj3PXNHeN4uSLh8W2bEXjRvrQ6TKynyVG8q4blX3+DMk\ +60qpuZowXMnTACibUnJXSN4cq9pclaT4hhVxRGBKhys+FfIsjOZ0atI5pbC48BfJ2zkOcDyHn2AU\ +BjDD45TZjuUUzYwgSuEezaSMfDKYZ5jRnJDUdBkmKIkJcA7AwYMOZce/erLsxakeNZpmojDJC7As\ +ECMYuNTqaGi4si1/C/yi8P4o8ozEuxtMMs8+09y2jE98kn+I4J6a3rn+Y3eHEv+amQ2eMP8t8W8s\ +YVt4C4xGYRx+QYboFwwyKkJwmsFdGIXZ51myyS5jFxVZCtmLGDK4wSA/vubfMBV/Y9JfXXqpbr/V\ +vNdXYLGejQbA6MMoeI1h/5qG8SScD25fWP0Hz/mUwg== +exehash=183abcc0cc08586789e438463e5711c1db96c362d9ee7865f408410700819d6c + +531.deepsjeng_r=base=c6itest-m64: +# Last updated 2024-06-27 08:53:34 +opthash=07012bbeb02623a9b192a4e2da6bb7b84266044e1ece5ba0911465810254d88d +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNqNUV1vgjAUfe+vuOkrqbJs2QMRE8DOsQFt+Eh0L40ium4TloIm+/crTKImy8Z96W3vuefecxpV\ +Jdmv3out/Cig+mxkVdYWqhsl80aoQ7mRShwLJbdfNr7BSKe1huh8ZJomRshjIbcAjw+1Gq9lOd4Z\ +BrRB6mZj54Zh3gLZ398ByYFU/YBRBWSWcOrpI5pRN5u399AJAhHSkMXLU1k4WcpEknEe0yQRjNMo\ +5Jp7B4S1vCuVv9rlqpHHAvo4dQZcD4VJXR1UXkwx8izwFgv730V7JHOfGE9tfLU3Rlqrx7OHwJkn\ +unatoau6NPIexRkwUBRGzAI90A/9F6obf1HY0dNFGjuCszh1XD/w02W/RScYo8CPnod8x8/jXz7C\ +pFq/FXlTT+Eizl4AdFYFsyGeDhDXcbGstfzC728z2Lls +exehash=98de8bf384c125395fe5156fb9438fe092b94ac97dcbe4e2b23c2ada5f2a6e6f + +541.leela_r=base=c6itest-m64: +# Last updated 2024-06-27 08:53:38 +opthash=2f1f63df0864751b52a7f6e3cfd3684a57c27f1a4cfb14559bd66349a00db30e +baggage= +compiler_version=\ +@eNotjMFqwzAAQ+/+Ch1buoUu2Wk9eSZhhi4JtlO6U8lSJ/HFHo690b+fUwoCoYcksPOZXU6lkLyp\ +L02rkr2RabfDpvuONkS8FFme7Z/zIt7z6/ZBCHM/N2+mOWDDtsj3eYHKaw3pxvDXe43KRXvtg3H2\ +CdwOGVGzWZA0rrXlUTtgSSnMK4l+0Bidx5C+jZ2S26tZH5YMULNOr2lfNyQtfW/D7QDrAvSvtvfd\ +ZynYB60VfedHrr6QUMVVXUqJqhGgaKlQnHVHKtB2om1kmZF/ZypR3w== +compile_options=\ +@eNqNUNFOwjAUfe9X3PR1KcxofFgYyTYqTsfasC1BXxoYA6uymnaQ+PeWwSIkBrkvvbn39Jx7Tqpq\ +spl/VCv5WYH6aqSqjYdMo2XZCL2tl1KLXaXl6tvHNxjZ1liI7Xuu62KEIjbhHuD+1uj+Qtb9tePA\ +vohpln7pOO4tkM39HZASiOoEegrIKOM0sk86omExBhL3jjMRFDkTWcH5lGaZYJymE24J10DYnmyu\ +yze/njdyV0FXx58Jt0owMGqry2qIUeRBNJv5/17XIVn4xHju47NjMbIGI148JME4s7vzw9ttSNPo\ +UXSAy04wYh5YlXgSv1KL/sNWy0ln+TQQnE3zIIyTOH/ppFuXGCVx+nxN8IfhpfBgoBbvVdmYIZzU\ +bwAAbT7J6JogrzDXcrFin/NJyD/OSrJw +exehash=2c0af257071500bf32683ff3c5d93f22651e278dadbe5469d5dc7cbbce6960a2 + +548.exchange2_r=base=c6itest-m64: +# Last updated 2024-06-27 08:55:19 +opthash=22486be71bab3ebdc2399d31e9cc31a24122adedea4fb03610264eb5ac8c6376 +baggage= +compiler_version=\ +@eNotjsFqwzAQRO/6ijkm0JrE7qk5ucJKBallZLnQU3AdOdZFKrLckr/vOgQWhhlmHgvBz5+VbqWq\ +z6oxJK/sWHcQIabYe2y678WnBfsiy7Pdc14sd/+yfSSMh59bdNcpYcO3yHd5ARGtRRvG9NdHS6TF\ +X/rkgn+C9EPGzORm0I1rbX7UDpjJpWlNljhYjCFiILbzV1J/cSthzgAzWaLSvlaMlvRkuh3gQ4L9\ +tf6++6g0fy9rU77JkzRfoEhIU1dtC6E0SjSlNpJ3p1Kj6XSj2ipj/9/qVFs= +compile_options=\ +@eNqtkFFPgzAUhd/5FU3fYTMaE8lYAqybKKPNgER9aRgrs+ooadmi+/UWNnGaJfJgX3qbe3rPuV8k\ +SnOTvbKCvzEgqpqLUtmGqiXPayq35YpLumOSFx8OvICGLpWW6NoaDofQMKaE2ACqiuVVBcxJTJCv\ +r2iCvHR2fFM3TTCNU0IWKI4pJiiak69eSK6vwEiJrczZGJiiq62iqvierazi5h0a2sQn6TR0Z7ED\ +f9m0XQ9F/i39ITjr24rRQ7JwKcGLxPWCMEgeuy9NHGj4eN5sNdgqOVjycrAuhKxlVoLvY250bjNv\ +Eh+pWQKYa2DiS93LZP7slFnNd6xbSI+1wdR3/hx7EGLvDpNEBzv1+FcQ2AbaIZgHT0grz0TvxSoM\ +ovs+rA7VOUDdGYnlC8trNQann7vlAWjJhJM+CHss187CacP4BPAndKLddA== +exehash=94f8ce66afd6ebe33a163a04e457e06501b1cb938789a08a98395f3f6afb6075 + +500.perlbench_r=peak=c6itest-m64: +# Last updated 2024-06-27 08:58:19 +opthash=26746eefd4c701d69be2dd89ab217f8349f05d47b236ed37fbc9e2bcc764ae86 +baggage= +compiler_version=\ +@eNrtUMtqwzAAu/srdGxhC22y03ryTEINXWJsZ9BTyVzncbGL42z07+eUfsZAICQkHSSoUnswdvkq\ +peJNfWmETvROBmOwab8XFxfsiyzPdq95sTz02/bpEOZv9zANY8SGbZHv8gJVsBbK9/G3CxaVX9y1\ +i5N3L+DOZESP04yEfo3Nz9gBc1JxXJ0lGIveB5i0PbkhsbtO68KcAXq0aTX164akZuhcvB/gfIT9\ +se7R+ywlO9Ja0w9+4vqMZFVc16VSqBoJCkGl5qw9UQnRStGoMiNEpB/y/x/+AMbCphg= +compile_options=\ +@eNrtVFFv0zAQfs+viCJevXYRQtpEJqWpuwbS2ooTafBiZanTGRqnst3B+PXYdVuYOm0BhgQIS1XP\ +d5e7831337wToK0+soavmN+tNe+EOveUlrzWVG7Egkt6yyRv7qLgNPC0rLign7i+iYKtHHjGqsxX\ +xnwyHA4Dz0vQDJ+e+8Fgo+TgmovBsq59e4DSi6g+O7Ni++qlD2ofdPukJ50PxgTDxPzNx3BUXhoB\ +wzyjCcqhD9IT81twpQcpMlK9rsSg4C0DU54ztddMi1kGcCUVk0bFPuuBZEZQa1bLSixMyDEqRxmk\ +JIvJFBJqM6ZxFg132WlcFoiSEuMcEkIRhvMZNjaaxfklpJM0g+RwtTdKUJkn0Oq2VzSZEFjQUVqQ\ +yLzRB81adra7YMkEk5VmRrf0AWoqpU0fKlnfRKLS/NYU2qx05+/Orp4snZdX9MqFEh1w0IBqxSvF\ +xdIpN0JVDTPB9A2w/Wz5l2rbVWduuOB6bxaru3vxsQ39WnUbWbOLwEsMdEkSPYnezhON3iBcRME9\ +LAPPDkCCy0kWXxJjvA+sM4/gPJnSg8dfD3XgIfMqHBNyenjVEfbOyXQsnaXvofF4bBJcnzDKi3iU\ +Zmnxbt/Jb0Ph4sGrIo9pcsj6TGPi8rvgD1aBbQGmlre91n2r+6ltOF4Fc1531x9YrdWFdVi1/mFv\ +DmPo+25Is3GfcX5uYGzmWVxMjW5kUVm1+2pQaRfmu23Jy7kxvKi7tjWT6xg0/M+gRwy6UX86eYa9\ +yTN8hDzDx8kz/CfJM3TkGR6Tp4Hd2fuvZ/g0b4a/kzfDfrwZ/jhv9tyBX6HMsDdlPjMmNvMRZYYP\ +UuZXamMstg== +exehash=90f4c9c52de6dda1786d304e36f66611bb9d014dd912dc84023e8306644b6e51 + diff --git a/example-benchmarks/spec_cpu_single_core/configuration.yml b/example-benchmarks/spec_cpu_single_core/configuration.yml new file mode 100644 index 0000000..15b0308 --- /dev/null +++ b/example-benchmarks/spec_cpu_single_core/configuration.yml @@ -0,0 +1,302 @@ +configuration: + name: "SPEC CPU2017 Integer Rate - Single Core" + description: "Benchmark analyzing CPU throughput using single core" + directory: spec_cpu_single_core + cron: "0 * * * *" + instance-number: 1 + instance-types: + - c3.large #Intel + - c4.large + - c5.large + - c6i.large + - c7i.large + + - m5a.large #AMD + - c5a.large + - c6a.large + - c7a.large + - c6a.2xlarge + - c7a.2xlarge + + - a1.large #Graviton + - c6g.large + - c7g.large + - c8g.large + +nodes: + - node-id: 1 + ansible-configuration: ansible.yml + image-x86: ami-040ae5b7ceb70e213 + image-arm: ami-0fb858c88e8a6483e + benchmark-command: ./run_spec.sh + output-command: python3 format_output.py /home/ubuntu/specbench/result/CPU2017.001.intrate.csv + +plots: + - type: scatter + title: SPEC CPU 2017 Total Score + yaxis: Score + series: + - y: SPECrate2017_int_base + legend: Int Rate Base + - y: SPECrate2017_int_peak + legend: Int Rate Peak + + - type: scatter + title: 500.perlbench_r - Execution Time + yaxis: Time [s] + series: + - y: 500_perlbench_r_base_selected_time + legend: Selected Base Time + - y: 500_perlbench_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 500_perlbench_r_peak_selected_time + legend: Selected Peak Time + - y: 500_perlbench_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 500.perlbench_r - Ratio + yaxis: Ratio + series: + - y: 500_perlbench_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 500_perlbench_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 500_perlbench_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 500_perlbench_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 502.gcc_r - Execution Time + yaxis: Time [s] + series: + - y: 502_gcc_r_base_selected_time + legend: Selected Base Time + - y: 502_gcc_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 502_gcc_r_peak_selected_time + legend: Selected Peak Time + - y: 502_gcc_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 502.gcc_r - Ratio + yaxis: Ratio + series: + - y: 502_gcc_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 502_gcc_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 502_gcc_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 502_gcc_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 505.mcf_r - Execution Time + yaxis: Time [s] + series: + - y: 505_mcf_r_base_selected_time + legend: Selected Base Time + - y: 505_mcf_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 505_mcf_r_peak_selected_time + legend: Selected Peak Time + - y: 505_mcf_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 505.mcf_r - Ratio + yaxis: Ratio + series: + - y: 505_mcf_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 505_mcf_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 505_mcf_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 505_mcf_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 520.omnetpp_r - Execution Time + yaxis: Time [s] + series: + - y: 520_omnetpp_r_base_selected_time + legend: Selected Base Time + - y: 520_omnetpp_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 520_omnetpp_r_peak_selected_time + legend: Selected Peak Time + - y: 520_omnetpp_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 520.omnetpp_r - Ratio + yaxis: Ratio + series: + - y: 520_omnetpp_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 520_omnetpp_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 520_omnetpp_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 520_omnetpp_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 523.xalancbmk_r - Execution Time + yaxis: Time [s] + series: + - y: 523_xalancbmk_r_base_selected_time + legend: Selected Base Time + - y: 523_xalancbmk_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 523_xalancbmk_r_peak_selected_time + legend: Selected Peak Time + - y: 523_xalancbmk_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 523.xalancbmk_r - Ratio + yaxis: Ratio + series: + - y: 523_xalancbmk_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 523_xalancbmk_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 523_xalancbmk_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 523_xalancbmk_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 525.x264_r - Execution Time + yaxis: Time [s] + series: + - y: 525_x264_r_base_selected_time + legend: Selected Base Time + - y: 525_x264_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 525_x264_r_peak_selected_time + legend: Selected Peak Time + - y: 525_x264_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 525.x264_r - Ratio + yaxis: Ratio + series: + - y: 525_x264_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 525_x264_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 525_x264_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 525_x264_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 531.deepsjeng_r - Execution Time + yaxis: Time [s] + series: + - y: 531_deepsjeng_r_base_selected_time + legend: Selected Base Time + - y: 531_deepsjeng_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 531_deepsjeng_r_peak_selected_time + legend: Selected Peak Time + - y: 531_deepsjeng_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 531.deepsjeng_r - Ratio + yaxis: Ratio + series: + - y: 531_deepsjeng_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 531_deepsjeng_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 531_deepsjeng_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 531_deepsjeng_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 541.leela_r - Execution Time + yaxis: Time [s] + series: + - y: 541_leela_r_base_selected_time + legend: Selected Base Time + - y: 541_leela_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 541_leela_r_peak_selected_time + legend: Selected Peak Time + - y: 541_leela_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 541.leela_r - Ratio + yaxis: Ratio + series: + - y: 541_leela_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 541_leela_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 541_leela_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 541_leela_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 548.exchange2_r - Execution Time + yaxis: Time [s] + series: + - y: 548_exchange2_r_base_selected_time + legend: Selected Base Time + - y: 548_exchange2_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 548_exchange2_r_peak_selected_time + legend: Selected Peak Time + - y: 548_exchange2_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 548.exchange2_r - Ratio + yaxis: Ratio + series: + - y: 548_exchange2_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 548_exchange2_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 548_exchange2_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 548_exchange2_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio + + - type: scatter + title: 557.xz_r - Execution Time + yaxis: Time [s] + series: + - y: 557_xz_r_base_selected_time + legend: Selected Base Time + - y: 557_xz_r_base_not_selected_time + legend: Non-Selected Base Time + - y: 557_xz_r_peak_selected_time + legend: Selected Peak Time + - y: 557_xz_r_peak_not_selected_time + legend: Non-Selected Peak Time + + - type: scatter + title: 557.xz_r - Ratio + yaxis: Ratio + series: + - y: 557_xz_r_peak_selected_ratio + legend: Selected Base Ratio + - y: 557_xz_r_base_not_selected_ratio + legend: Non-Selected Base Ratio + - y: 557_xz_r_peak_selected_ratio + legend: Selected Peak Ratio + - y: 557_xz_r_peak_not_selected_ratio + legend: Non-Selected Peak Ratio \ No newline at end of file diff --git a/example-benchmarks/spec_cpu_single_core/format_output.py b/example-benchmarks/spec_cpu_single_core/format_output.py new file mode 100644 index 0000000..8508478 --- /dev/null +++ b/example-benchmarks/spec_cpu_single_core/format_output.py @@ -0,0 +1,59 @@ +import re +import csv +import sys +import json + +def parse_spec_cpu_output(input_file): + with open(input_file, 'r') as f: + data = f.read() + + lines = data.strip().split("\n") + + parsed_data = {} + parse = False + for line in lines: + if line == "\"Full Results Table\"": + parse = True + elif line == "\"Selected Results Table\"": + parse = False + + if parse and re.match(r'^\d{3}\.[a-z0-9]+.+', line): + fields = next(csv.reader([line])) + name = fields[0].replace(".", "_") + base_run_time = fields[2] + base_rate = fields[3] + base_selected = fields[4] + peak_run_time = fields[7] + peak_rate = fields[8] + peak_selected = fields[9] + if base_selected == '1': + parsed_data[f'{name}_base_selected_time'] = float(base_run_time) + parsed_data[f'{name}_base_selected_ratio'] = float(base_rate) + else: + parsed_data[f'{name}_base_not_selected_time'] = float(base_run_time) + parsed_data[f'{name}_base_not_selected_ratio'] = float(base_rate) + + if peak_selected == '1': + parsed_data[f'{name}_peak_selected_time'] = float(peak_run_time) + parsed_data[f'{name}_peak_selected_ratio'] = float(peak_rate) + else: + parsed_data[f'{name}_peak_not_selected_time'] = float(peak_run_time) + parsed_data[f'{name}_peak_not_selected_ratio'] = float(peak_rate) + + spec_base = re.search(r'SPECrate2017_int_base,([\d.]+)', data) + spec_peak = re.search(r'SPECrate2017_int_peak,([\d.]+)', data) + + if spec_base: + parsed_data['SPECrate2017_int_base'] = float(spec_base.group(1)) + if spec_peak: + parsed_data['SPECrate2017_int_peak'] = float(spec_peak.group(1)) + + print(json.dumps(parsed_data, indent=4)) + +if __name__ == "__main__": + if len(sys.argv) != 2: + print("Usage: python format_output.py ") + sys.exit(1) + + file_path = sys.argv[1] + parse_spec_cpu_output(file_path) diff --git a/example-benchmarks/spec_cpu_single_core/run_spec.sh b/example-benchmarks/spec_cpu_single_core/run_spec.sh new file mode 100644 index 0000000..08fce95 --- /dev/null +++ b/example-benchmarks/spec_cpu_single_core/run_spec.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +arch=$(lscpu | grep "Architecture" | awk '{print $2}') + +cd /home/ubuntu/specbench +source shrc +if [[ "$arch" == "x86_64" ]]; then + runcpu --config=config_x86 --iterations=2 --reportable intrate >> log.txt +elif [[ "$arch" == "aarch64" ]]; then + runcpu --config=config_graviton --iterations=2 --reportable intrate >> log.txt +fi diff --git a/example-benchmarks/ssd_bandwidth/ansible.yml b/example-benchmarks/ssd_bandwidth/ansible.yml new file mode 100644 index 0000000..22493ae --- /dev/null +++ b/example-benchmarks/ssd_bandwidth/ansible.yml @@ -0,0 +1,15 @@ +--- +- name: Install fio + hosts: localhost + tasks: + - name: Install dependencies + become: yes + apt: + name: + - fio + state: present + + - name: Make run_fio.sh executable + file: + path: /home/ubuntu/ssd_bandwidth/run_fio.sh + mode: '0755' diff --git a/example-benchmarks/ssd_bandwidth/configuration.yml b/example-benchmarks/ssd_bandwidth/configuration.yml new file mode 100644 index 0000000..72fc1eb --- /dev/null +++ b/example-benchmarks/ssd_bandwidth/configuration.yml @@ -0,0 +1,47 @@ +--- +configuration: + name: SSD Bandwidth + description: Benchmark SSD IOPS using FIO + directory: ssd_bandwidth + cron: "0 * * * *" + instance-number: 1 + instance-types: + - i4g.large + - i4i.large + - is4gen.large + - i3.large + - i3en.large + - im4gn.large + +nodes: + - node-id: 0 + ansible-configuration: ansible.yml + benchmark-command: sudo ./run_fio.sh + output-command: python3 format_output.py results-read.json results-randread.json results-write.json results-randwrite.json + +plots: + - type: scatter + title: Sequential Read Throughput + yaxis: SSD Throughput [IOPS] + series: + - y: iops_stddev_read + legend: Stddev + - y: iops_mean_read + legend: Average + - y: iops_min_read + legend: Minimum + - y: iops_max_read + legend: Maximum + - type: scatter + title: Random Read Throughput + yaxis: SSD Throughput [IOPS] + series: + - y: iops_stddev_randread + legend: Stddev + - y: iops_mean_randread + legend: Average + - y: iops_min_randread + legend: Minimum + - y: iops_max_randread + legend: Maximum + diff --git a/example-benchmarks/ssd_bandwidth/format_output.py b/example-benchmarks/ssd_bandwidth/format_output.py new file mode 100644 index 0000000..2122ae3 --- /dev/null +++ b/example-benchmarks/ssd_bandwidth/format_output.py @@ -0,0 +1,27 @@ +import sys +import json + +def parse_fio(file_path): + benchmark_type = file_path[:-5].split("-")[1] + + with open(file_path, "r") as f: + fio_json = json.load(f) + + benchmark_type_json = benchmark_type.replace("rand", "") + target_benchmark = fio_json["jobs"][0][benchmark_type_json] + # flatten latency dict -> e.g., "lat_ns": {"N": 42, ...} -> "lat_ns_N": 42 + latencies = {f"lat_ns_{key}_{benchmark_type}": value for key, value in target_benchmark["lat_ns"].items()} + # remove nested json structures + cleaned = {f"{key}_{benchmark_type}": value for key, value in target_benchmark.items() if not type(value) in [list, dict]} + return cleaned | latencies + +if __name__ == "__main__": + if len(sys.argv) < 2: + print("Usage: python3 format_output.py ...") + sys.exit(1) + + merged_dict = dict() + for i in range(1, len(sys.argv)): + merged_dict |= parse_fio(sys.argv[i]) + + print(json.dumps(merged_dict, indent=4)) diff --git a/example-benchmarks/ssd_bandwidth/run_fio.sh b/example-benchmarks/ssd_bandwidth/run_fio.sh new file mode 100644 index 0000000..655f70b --- /dev/null +++ b/example-benchmarks/ssd_bandwidth/run_fio.sh @@ -0,0 +1,41 @@ +#!/usr/bin/env bash + +# Dynamically detect a non-boot nvme device +non_boot_device=$(lsblk -dno NAME | while read dev; do + if [[ $dev == "loop"* ]]; then + continue + fi + if ! lsblk /dev/$dev --noheadings --output MOUNTPOINT | grep -qE '^/$|^/boot/efi$'; then + echo $dev + break + fi +done) + +lsblk_output=$(lsblk) +size_str=$(echo "$lsblk_output" | grep "$non_boot_device" | awk '{print $4}') + +# Convert the input based on the unit (G for Gigabytes, T for Terabytes) +if [[ $size_str == *"T" ]]; then + # Convert Terabytes to Gigabytes (1T = 1000G) + ssd_size=$(echo $size_str | sed 's/\([0-9]*\)\.[0-9]*T/\1/' | awk '{print $1 * 1000}') +elif [[ $size_str == *"G" ]]; then + # Directly use Gigabytes if it's already in Gigabytes + ssd_size=$(echo $size_str | sed 's/\([0-9]*\)\.[0-9]*G/\1/') +else + echo "Unknown unit, only G (Gigabytes) and T (Terabytes) are supported." +# exit 1 +fi + +# Cap the value at 100GB +if (( ssd_size > 100 )); then + ssd_size=100 +fi + +sudo chmod 666 "/dev/$non_boot_device" +sudo fio --name=readio --rw=write --numjobs=16 --refill_buffers --ioengine=libaio --group_reporting --iodepth=128 --bs=4k --filename="/dev/$non_boot_device" --size="$ssd_size"G --direct=1 --output-format=json --output=results-write.json +experiments=("randwrite" "read" "randread") +for exp in "${experiments[@]}" +do + output_file="results-${exp}.json" + sudo fio --name=readio --rw="${exp}" --numjobs=16 --refill_buffers --ioengine=libaio --time_based --runtime=60s --group_reporting --iodepth=128 --bs=4k --filename="/dev/$non_boot_device" --size="$ssd_size"G --direct=1 --output-format=json --output="$output_file" +done \ No newline at end of file