PyHPC Benchmarks

PyHPC-Benchmarks is a suite of Python high performance computing benchmarks for execution on CPUs and GPUs using various popular Python HPC libraries. The PyHPC CPU-based benchmarks focus on sequential CPU performance.

To run this test with the Phoronix Test Suite, the basic command is: phoronix-test-suite benchmark pyhpc.

Project Site

github.com

Test Created

22 October 2021

Last Updated

28 October 2021

Test Maintainer

Michael Larabel 

Test Type

System

Average Install Time

54 Seconds

Average Run Time

49 Seconds

Test Dependencies

Python

Accolades

10k+ Downloads

Supported Platforms


Public Result Uploads *Reported Installs **Reported Test Completions **Test Profile Page ViewsOpenBenchmarking.orgEventsPyHPC Benchmarks Popularity Statisticspts/pyhpc2021.102021.112021.122022.012022.022022.032022.042022.052022.062022.072022.082022.092022.102022.112022.122023.012023.022023.032023.042023.052023.062023.072023.082023.092023.102023.112023.122024.012024.022024.032024.042024.052024.062024.072024.082024.092024.106K12K18K24K30K
* Uploading of benchmark result data to OpenBenchmarking.org is always optional (opt-in) via the Phoronix Test Suite for users wishing to share their results publicly.
** Data based on those opting to upload their test results to OpenBenchmarking.org and users enabling the opt-in anonymous statistics reporting while running benchmarks from an Internet-connected platform.
Data updated weekly as of 6 October 2024.
JAX14.9%Numba17.3%Aesara17.1%TensorFlow7.5%PyTorch15.8%Numpy27.5%Backend Option PopularityOpenBenchmarking.org
104857620.0%1638416.3%26214418.0%6553617.3%419430428.4%Project Size Option PopularityOpenBenchmarking.org
Isoneutral Mixing47.5%Equation of State52.5%Benchmark Option PopularityOpenBenchmarking.org

Revision History

pts/pyhpc-3.0.0   [View Source]   Thu, 28 Oct 2021 15:13:30 GMT
Update against upstream PyHPC 3.0.

pts/pyhpc-1.0.0   [View Source]   Fri, 22 Oct 2021 15:05:19 GMT
Initial commit of PyHPC-Benchmarks.

Suites Using This Test

HPC - High Performance Computing

Python


Performance Metrics

Analyze Test Configuration:

PyHPC Benchmarks 3.0

Device: CPU - Backend: Numpy - Project Size: 4194304 - Benchmark: Equation of State

OpenBenchmarking.org metrics for this test profile configuration based on 548 public results since 28 October 2021 with the latest data as of 25 September 2024.

Below is an overview of the generalized performance for components where there is sufficient statistically significant data based upon user-uploaded results. It is important to keep in mind particularly in the Linux/open-source space there can be vastly different OS configurations, with this overview intended to offer just general guidance as to the performance expectations.

Component
Percentile Rank
# Compatible Public Results
Seconds (Average)
100th
6
0.697 +/- 0.064
98th
8
0.742 +/- 0.017
95th
5
0.751 +/- 0.002
95th
10
0.753 +/- 0.023
95th
9
0.754 +/- 0.013
92nd
3
0.801 +/- 0.059
91st
6
0.809 +/- 0.019
90th
7
0.832 +/- 0.003
89th
12
0.843 +/- 0.068
84th
10
0.922 +/- 0.085
82nd
10
0.954 +/- 0.080
79th
4
0.981 +/- 0.011
76th
5
0.993 +/- 0.043
Mid-Tier
75th
> 0.999
75th
5
1.001 +/- 0.007
72nd
7
1.016 +/- 0.008
71st
5
1.020 +/- 0.026
68th
8
1.027 +/- 0.040
68th
8
1.027 +/- 0.012
68th
11
1.028 +/- 0.033
64th
12
1.054 +/- 0.022
61st
7
1.105 +/- 0.008
56th
3
1.245 +/- 0.017
55th
8
1.271 +/- 0.062
54th
9
1.277 +/- 0.076
51st
4
1.312 +/- 0.014
51st
6
1.315 +/- 0.013
Median
50th
1.319
50th
4
1.327 +/- 0.012
50th
5
1.329 +/- 0.014
50th
16
1.330 +/- 0.134
45th
6
1.362 +/- 0.021
44th
5
1.388 +/- 0.038
44th
3
1.390 +/- 0.051
42nd
3
1.413 +/- 0.008
40th
7
1.451 +/- 0.027
39th
3
1.456 +/- 0.018
37th
5
1.472 +/- 0.006
36th
6
1.520 +/- 0.179
33rd
5
1.547 +/- 0.008
33rd
7
1.554 +/- 0.022
32nd
5
1.561 +/- 0.021
30th
9
1.574 +/- 0.012
29th
4
1.584 +/- 0.015
27th
4
1.630 +/- 0.096
26th
4
1.650 +/- 0.138
26th
3
1.677 +/- 0.005
Low-Tier
25th
> 1.679
25th
3
1.683 +/- 0.002
19th
6
1.876 +/- 0.028
16th
3
1.976 +/- 0.001
15th
3
2.014 +/- 0.266
14th
4
2.060 +/- 0.153
14th
3
2.076 +/- 0.004
14th
9
2.078 +/- 0.109
13th
4
2.089 +/- 0.053
13th
3
2.118 +/- 0.003
9th
3
2.200 +/- 0.039
8th
4
2.438 +/- 0.007
7th
6
2.456 +/- 0.019
6th
3
2.489 +/- 0.016
5th
3
2.658 +/- 0.067
4th
3
2.681 +/- 0.016
4th
3
2.755 +/- 0.011
1st
3
4.880 +/- 0.249
OpenBenchmarking.orgDistribution Of Public Results - Device: CPU - Backend: Numpy - Project Size: 4194304 - Benchmark: Equation of State548 Results Range From 0 To 11 Seconds0.9171.8342.7513.6684.5855.5026.4197.3368.2539.1710.08711.00480160240320400

Based on OpenBenchmarking.org data, the selected test / test configuration (PyHPC Benchmarks 3.0 - Device: CPU - Backend: Numpy - Project Size: 4194304 - Benchmark: Equation of State) has an average run-time of 3 minutes. By default this test profile is set to run at least 3 times but may increase if the standard deviation exceeds pre-defined defaults or other calculations deem additional runs necessary for greater statistical accuracy of the result.

OpenBenchmarking.orgMinutesTime Required To Complete BenchmarkDevice: CPU - Backend: Numpy - Project Size: 4194304 - Benchmark: Equation of StateRun-Time48121620Min: 1 / Avg: 2.49 / Max: 13

Based on public OpenBenchmarking.org results, the selected test / test configuration has an average standard deviation of 0.1%.

OpenBenchmarking.orgPercent, Fewer Is BetterAverage Deviation Between RunsDevice: CPU - Backend: Numpy - Project Size: 4194304 - Benchmark: Equation of StateDeviation246810Min: 0 / Avg: 0.08 / Max: 2

Does It Scale Well With Increasing Cores?

No, based on the automated analysis of the collected public benchmark data, this test / test settings does not generally scale well with increasing CPU core counts. Data based on publicly available results for this test / test settings, separated by vendor, result divided by the reference CPU clock speed, grouped by matching physical CPU core count, and normalized against the smallest core count tested from each vendor for each CPU having a sufficient number of test samples and statistically significant data.

IntelAMDOpenBenchmarking.orgRelative Core Scaling To BasePyHPC Benchmarks CPU Core ScalingDevice: CPU - Backend: Numpy - Project Size: 4194304 - Benchmark: Equation of State468121416641280.72081.44162.16242.88323.604

Tested CPU Architectures

This benchmark has been successfully tested on the below mentioned architectures. The CPU architectures listed is where successful OpenBenchmarking.org result uploads occurred, namely for helping to determine if a given test is compatible with various alternative CPU architectures.

CPU Architecture
Kernel Identifier
Verified On
Intel / AMD x86 64-bit
x86_64
(Many Processors)
ARMv8 64-bit
arm64
Apple M1
ARMv8 64-bit
aarch64
ARMv8 Cortex-A78E 12-Core, ARMv8 Neoverse-N1, ARMv8 Neoverse-V1, Ampere ARMv8 Neoverse-N1 128-Core, Ampere ARMv8 Neoverse-N1 256-Core, Ampere eMAG ARMv8 32-Core, Apple M1, Apple M2

Recent Test Results

OpenBenchmarking.org Results Compare

2 Systems - 21 Benchmark Results

Intel Xeon E3-1225 v5 - Dell PowerEdge T30 07T4MC - Intel Xeon E3-1200 v5

Ubuntu 20.04 - 5.4.0-190-generic - OpenCL 1.2 pocl 1.4 +Asserts LLVM 9.0.1 RELOC SLEEF DISTRO POCL_DEBUG

3 Systems - 9 Benchmark Results

Intel Core 2 Duo E8400 - Dell OptiPlex 780 0200DY - Intel 4 DRAM + ICH10DO

Ubuntu 24.04 - 6.8.0-38-generic - LXQt 1.4.0

1 System - 275 Benchmark Results

Intel Core i5-12500 - ASUS PRIME Z690M-HZ - Intel Alder Lake-S PCH

Debian 12 - 6.1.0-21-amd64 - GCC 12.2.0

3 Systems - 209 Benchmark Results

AMD Ryzen 9 3900X 12-Core - MSI X570-A PRO - AMD Starship

Ubuntu 23.10 - 6.5.0-9-generic - X Server 1.21.1.7

Find More Test Results