oneDNN

This is a test of the Intel oneDNN as an Intel-optimized library for Deep Neural Networks and making use of its built-in benchdnn functionality. The result is the total perf time reported. Intel oneDNN was formerly known as DNNL (Deep Neural Network Library) and MKL-DNN before being rebranded as part of the Intel oneAPI toolkit.

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

Project Site

intel.com

Source Repository

github.com

Test Created

17 June 2020

Last Updated

12 October 2023

Test Maintainer

Michael Larabel 

Test Type

Processor

Average Install Time

5 Minutes, 8 Seconds

Average Run Time

2 Minutes, 28 Seconds

Test Dependencies

C/C++ Compiler Toolchain + CMake

Accolades

60k+ Downloads

Supported Platforms


Public Result Uploads *Reported Installs **Reported Test Completions **Test Profile Page Views ***OpenBenchmarking.orgEventsoneDNN Popularity Statisticspts/onednn2020.062020.072020.082020.092020.102020.112020.122021.012021.022021.032021.042021.052021.062021.072021.082021.092021.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.1120K40K60K80K100K
* 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.
*** Test profile page view reporting began March 2021.
Data updated weekly as of 20 November 2023.
IP Shapes 1D14.2%Deconvolution Batch shapes_1d10.7%Convolution Batch Shapes Auto10.8%Recurrent Neural Network Inference19.0%Deconvolution Batch shapes_3d10.7%IP Shapes 3D15.4%Recurrent Neural Network Training19.1%Harness Option PopularityOpenBenchmarking.org
bf16bf16bf1635.9%f3237.8%u8s8f3226.3%Data Type Option PopularityOpenBenchmarking.org

Revision History

pts/onednn-3.3.0   [View Source]   Thu, 12 Oct 2023 11:14:07 GMT
Update against oneDNN 3.3 upstream.

pts/onednn-3.1.0   [View Source]   Fri, 31 Mar 2023 18:14:37 GMT
Update against oneDNN 3.1 upstream.

pts/onednn-3.0.0   [View Source]   Mon, 19 Dec 2022 21:07:39 GMT
Update against oneDNN 3.0 upstream.

pts/onednn-2.7.0   [View Source]   Wed, 28 Sep 2022 13:00:44 GMT
Update against oneDNN 2.7 upstream.

pts/onednn-1.8.0   [View Source]   Tue, 29 Mar 2022 19:55:25 GMT
Update against oneDNN 2.6 upstream.

pts/onednn-1.7.0   [View Source]   Sat, 13 Mar 2021 07:49:33 GMT
Update against oneDNN 2.1.2 upstream.

pts/onednn-1.6.1   [View Source]   Sun, 20 Dec 2020 09:58:16 GMT
This test profile builds and works fine on macOS so enable it (MacOSX).

pts/onednn-1.6.0   [View Source]   Wed, 09 Dec 2020 13:47:31 GMT
Update against oneDNN 2.0 upstream.

pts/onednn-1.5.0   [View Source]   Wed, 17 Jun 2020 16:26:39 GMT
Initial commit of oneDNN test profile based on Intel oneDNN 1.5, forked from existing mkl-dnn test profile that is named from MKL-DNN before it was renamed to DNNL and then oneDNN. So create new test profile to match Intel naming convention.

Suites Using This Test

Multi-Core

Machine Learning

Intel oneAPI

HPC - High Performance Computing

CPU Massive

Creator Workloads

Server CPU Tests


Performance Metrics

Analyze Test Configuration:

oneDNN 3.3

Harness: Recurrent Neural Network Training - Data Type: bf16bf16bf16 - Engine: CPU

OpenBenchmarking.org metrics for this test profile configuration based on 260 public results since 12 October 2023 with the latest data as of 28 November 2023.

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
ms (Average)
89th
5
786 +/- 1
79th
3
988 +/- 3
Mid-Tier
75th
> 1067
59th
5
1642 +/- 9
59th
4
1643 +/- 1
Median
50th
2048
47th
5
2120 +/- 29
44th
9
2148 +/- 26
37th
7
3154 +/- 20
32nd
4
3310 +/- 3
32nd
3
3317 +/- 129
30th
6
3322 +/- 2
28th
4
3555 +/- 69
Low-Tier
25th
> 3935
21st
4
4194 +/- 13
20th
3
4819 +/- 212
17th
5
6272 +/- 12
16th
6
6670 +/- 71
12th
6
7182 +/- 5
11th
3
7627 +/- 8
8th
4
7891 +/- 226
6th
3
9406 +/- 554
4th
4
13661 +/- 826
3rd
5
15262 +/- 1519
OpenBenchmarking.orgDistribution Of Public Results - Harness: Recurrent Neural Network Training - Data Type: bf16bf16bf16 - Engine: CPU260 Results Range From 654 To 42197 ms6541485231631473978480956406471730281338964979510626114571228813119139501478115612164431727418105189361976720598214292226023091239222475325584264152724628077289082973930570314013223233063338943472535556363873721838049388803971140542413734220420406080100

Based on OpenBenchmarking.org data, the selected test / test configuration (oneDNN 3.3 - Harness: Recurrent Neural Network Training - Data Type: bf16bf16bf16 - Engine: CPU) has an average run-time of 5 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 BenchmarkHarness: Recurrent Neural Network Training - Data Type: bf16bf16bf16 - Engine: CPURun-Time48121620Min: 4 / Avg: 4.34 / Max: 15

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 RunsHarness: Recurrent Neural Network Training - Data Type: bf16bf16bf16 - Engine: CPUDeviation246810Min: 0 / Avg: 0.09 / Max: 2

Does It Scale Well With Increasing Cores?

Yes, based on the automated analysis of the collected public benchmark data, this test / test settings does 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.

OpenBenchmarking.orgRelative Core Scaling To BaseoneDNN CPU Core ScalingHarness: Recurrent Neural Network Training - Data Type: bf16bf16bf16 - Engine: CPU812163264961.673.345.016.688.35

Notable Instruction Set Usage

Notable instruction set extensions supported by this test, based on an automatic analysis by the Phoronix Test Suite / OpenBenchmarking.org analytics engine.

Instruction Set
Support
Instructions Detected
SSE 4.2 (SSE4_2)
Used by default on supported hardware.
Found on Intel processors since at least 2010.
Found on AMD processors since Bulldozer (2011).

 
POPCNT
Used by default on supported hardware.
Found on Intel processors since Sandy Bridge (2011).
Found on AMD processors since Bulldozer (2011).

 
VZEROUPPER VEXTRACTF128 VBROADCASTSS VINSERTF128 VPERMILPS VBROADCASTSD VPERMILPD VPERM2F128 VMASKMOVPS
Used by default on supported hardware.
Found on Intel processors since Haswell (2013).
Found on AMD processors since Excavator (2016).

 
VPBROADCASTQ VPGATHERQQ VGATHERQPS VPGATHERQD VPERM2I128 VINSERTI128 VPBROADCASTD VPBLENDD VPSLLVD VEXTRACTI128 VPSRAVD VPBROADCASTW VPERMQ VPSRLVQ VPBROADCASTB VGATHERDPS VPGATHERDQ VPERMD VPSLLVQ VPMASKMOVQ
FMA (FMA)
Used by default on supported hardware.
Found on Intel processors since Haswell (2013).
Found on AMD processors since Bulldozer (2011).

 
VFMADD231SS VFMADD213SS VFMADD132SS VFMADD132SD VFNMADD132SD VFMADD132PS VFMADD231PS VFMADD213PS VFNMADD132PS VFNMSUB231PS VFNMSUB132SS VFNMADD132SS VFNMSUB231SS VFNMADD231PS VFNMADD231SS VFNMADD213SS VFMSUB132SS VFMADD132PD VFMADD231PD VFMADD231SD VFMADD213PD VFMSUB231SS VFMSUB231SD VFMSUB213PS VFMSUB132PS VFMSUB213SS
Advanced Vector Extensions 512 (AVX512)
Requires passing a supported compiler/build flag (verified with targets: cascadelake, sapphirerapids).
 
(ZMM REGISTER USE)
The test / benchmark does honor compiler flag changes.
Last automated analysis: 31 March 2023

This test profile binary relies on the shared libraries libdnnl.so.3, libm.so.6, libgomp.so.1, libc.so.6.

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)

Recent Test Results

OpenBenchmarking.org Results Compare

1 System - 39 Benchmark Results

AMD Ryzen 9 3900X 12-Core - ASUS TUF GAMING X570-PLUS - AMD Starship

Debian 12 - 6.1.0-13-amd64 - X Server 1.21.1.7

2 Systems - 180 Benchmark Results

1 System - 21 Benchmark Results

Intel Xeon E5-1620 v4 - HP 212B v1.01 - Intel Xeon E7 v4

Ubuntu 22.04 - 6.2.0-37-generic - GNOME Shell 42.9

4 Systems - 177 Benchmark Results

AMD Ryzen 9 7950X3D 16-Core - ASRockRack B650D4U-2L2T/BCM - AMD Device 14d8

Ubuntu 22.04 - 6.6.0-rc4-phx-amd-pref-core - GNOME Shell 42.9

4 Systems - 350 Benchmark Results

AMD EPYC 8534P 64-Core - AMD Cinnabar - AMD Device 14a4

Ubuntu 23.10 - 6.5.0-5-generic - GNOME Shell 45.0

4 Systems - 415 Benchmark Results

AMD Ryzen 9 7950X 16-Core - ASUS ROG STRIX X670E-E GAMING WIFI - AMD Device 14d8

Ubuntu 23.10 - 6.5.0-9-generic - GNOME Shell 45.0

3 Systems - 513 Benchmark Results

AMD EPYC 8534P 64-Core - AMD Cinnabar - AMD Device 14a4

Ubuntu 23.10 - 6.5.0-5-generic - GNOME Shell 45.0

1 System - 21 Benchmark Results

2 x AMD EPYC 7642 48-Core - Dell 0GK70M - AMD Starship

CentOS Linux 7 - 3.10.0-1160.24.1.el7.x86_64 - GCC 4.8.5 20150623

2 Systems - 339 Benchmark Results

AMD Ryzen 7 7800X3D 8-Core - ASUS ProArt B650-CREATOR - AMD Device 14d8

Debian 12 - 6.5.0-0.deb12.1-amd64 - Xfce 4.18

5 Systems - 108 Benchmark Results

AMD Ryzen 7 5800H - LENOVO LNVNB161216 - AMD Renoir

Xilka 2023.03.07 - 6.6.1 - KDE Plasma 5.27.9

1 System - 264 Benchmark Results

Intel Pentium Gold G6405 - ASRock H510M-HDV/M.2 SE - Intel Comet Lake PCH

Ubuntu 20.04 - 5.15.0-88-generic - GNOME Shell 3.36.9

2 Systems - 428 Benchmark Results

2 Systems - 202 Benchmark Results

2 Systems - 142 Benchmark Results

Intel Core i9-10980XE - ASRock X299 Steel Legend - Intel Sky Lake-E DMI3 Registers

Ubuntu 22.04 - 6.2.0-33-generic - GNOME Shell 42.2

Most Popular Test Results

OpenBenchmarking.org Results Compare

3 Systems - 68 Benchmark Results

2 x Intel Xeon Max 9480 - Supermicro X13DEM v1.10 - Intel Device 1bce

CentOS Stream 9 - 5.14.0-373.el9.x86_64 - GNOME Shell 40.10

2 Systems - 202 Benchmark Results

2 Systems - 35 Benchmark Results

2 x Intel Xeon Platinum 8490H - Quanta Cloud S6Q-MB-MPS - Intel Device 1bce

Ubuntu 23.10 - 6.6.0-rc5-phx-patched - GNOME Shell 45.0

2 Systems - 35 Benchmark Results

2 x AMD EPYC 9684X 96-Core - AMD Titanite_4G - AMD Device 14a4

Ubuntu 23.10 - 6.6.0-060600rc1-generic - GNOME Shell

4 Systems - 27 Benchmark Results

AMD Ryzen Threadripper 3990X 64-Core - Gigabyte TRX40 AORUS PRO WIFI - AMD Starship

Ubuntu 23.04 - 6.2.0-32-generic - GNOME Shell 44.0

3 Systems - 19 Benchmark Results

Intel Core i9-13900K - ASUS PRIME Z790-P WIFI - Intel Device 7a27

Ubuntu 23.10 - 6.5.0-7-generic - GNOME Shell 45.0

2 Systems - 63 Benchmark Results

Intel Xeon Silver 4216 - TYAN S7100AG2NR - Intel Sky Lake-E DMI3 Registers

Debian 12 - 6.1.0-11-amd64 - X Server

2 Systems - 134 Benchmark Results

AMD Ryzen 7 PRO 7840U - LENOVO 21K5001JUS - AMD Device 14e8

Fedora Linux 39 - 6.5.7-300.fc39.x86_64 - GNOME Shell 45.0

2 Systems - 339 Benchmark Results

2 x Intel Xeon Max 9480 - Supermicro X13DEM v1.10 - Intel Device 1bce

Ubuntu 22.04 - 6.2.0-34-generic - GNOME Shell 42.9

2 Systems - 24 Benchmark Results

AMD Ryzen 9 7950X 16-Core - ASUS ROG STRIX X670E-E GAMING WIFI - AMD Device 14d8

Ubuntu 23.10 - 6.5.0-9-generic - GNOME Shell 45.0

2 Systems - 141 Benchmark Results

AMD Ryzen 7 PRO 7840U - LENOVO 21K5001JUS - AMD Device 14e8

Fedora Linux 39 - 6.5.7-300.fc39.x86_64 - GNOME Shell 45.0

Find More Test Results