QuantLib

QuantLib is an open-source library/framework around quantitative finance for modeling, trading and risk management scenarios. QuantLib is written in C++ with Boost and its built-in benchmark used reports the QuantLib Benchmark Index benchmark score.

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

Project Site

quantlib.org

Source Repository

github.com

Test Created

20 January 2021

Last Updated

23 October 2023

Test Maintainer

Michael Larabel 

Test Type

Processor

Average Install Time

5 Minutes

Average Run Time

1 Minute, 38 Seconds

Test Dependencies

C/C++ Compiler Toolchain + C++ Boost + CMake

Accolades

20k+ Downloads

Supported Platforms


Public Result Uploads *Reported Installs **Reported Test Completions **Test Profile Page Views ***OpenBenchmarking.orgEventsQuantLib Popularity Statisticspts/quantlib2021.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.112023.122024.012024.022024.032024.0415003000450060007500
* 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 21 April 2024.
Multi-Threaded55.1%Single-Threaded44.9%Configuration Option PopularityOpenBenchmarking.org

Revision History

pts/quantlib-1.2.0   [View Source]   Mon, 23 Oct 2023 17:10:31 GMT
Update against QuantLib 1.32 upstream, add new multi-threaded benchmark capability.

pts/quantlib-1.1.0   [View Source]   Sat, 29 Apr 2023 08:35:01 GMT
Update against QuantLib 1.30 upstream.

pts/quantlib-1.0.0   [View Source]   Wed, 20 Jan 2021 09:43:09 GMT
Initial commit of QuantLib benchmark

Suites Using This Test

Finance


Performance Metrics

Analyze Test Configuration:

QuantLib 1.32

Configuration: Multi-Threaded

OpenBenchmarking.org metrics for this test profile configuration based on 504 public results since 23 October 2023 with the latest data as of 24 April 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
MFLOPS (Average)
100th
9
601299 +/- 46141
98th
6
386664 +/- 4134
97th
7
348489 +/- 1102
95th
6
330160 +/- 1562
89th
4
252853 +/- 1731
89th
4
251528 +/- 58
85th
6
218530 +/- 1308
84th
5
196384 +/- 805
82nd
8
177535 +/- 1195
81st
7
171015 +/- 7755
80th
7
160409 +/- 1045
76th
3
117081 +/- 262
Mid-Tier
75th
< 116782
73rd
5
101819 +/- 12100
71st
5
97164 +/- 3642
70th
6
96916 +/- 130
67th
11
85487 +/- 3577
66th
17
85354 +/- 2984
62nd
8
80649 +/- 1521
60th
7
77819 +/- 1535
59th
4
68907 +/- 304
59th
4
64485 +/- 17
56th
11
56137 +/- 1189
53rd
5
55604 +/- 11
52nd
4
55260 +/- 623
51st
12
46287 +/- 236
Median
50th
46282
48th
5
45067 +/- 688
48th
11
44920 +/- 815
44th
4
40560 +/- 221
42nd
4
40140 +/- 199
41st
14
39767 +/- 828
39th
6
34367 +/- 757
38th
4
33363 +/- 196
34th
4
31365 +/- 19
32nd
11
30672 +/- 1323
31st
5
29921 +/- 1874
31st
16
29777 +/- 1322
28th
4
28606 +/- 87
27th
6
27153 +/- 3475
26th
5
26723 +/- 124
Low-Tier
25th
< 26647
19th
4
21849 +/- 214
17th
6
21207 +/- 57
16th
3
20724 +/- 782
15th
3
19404 +/- 191
14th
4
17483 +/- 12
13th
3
17311 +/- 32
13th
6
16771 +/- 2125
12th
4
13888 +/- 314
10th
8
12993 +/- 1068
10th
3
11975 +/- 1334
7th
12
8922 +/- 648
6th
5
7463 +/- 147
OpenBenchmarking.orgDistribution Of Public Results - Configuration: Multi-Threaded501 Results Range From 2077 To 853902 MFLOPS20771911436151531887022587262104299121336138373155410172447189484206521223558240595257632274669291706308743325780342817359854376891393928410965428002445039462076479113496150513187530224547261564298581335598372615409632446649483666520683557700594717631734668751705768742785779802816819853836890853927306090120150

Based on OpenBenchmarking.org data, the selected test / test configuration (QuantLib 1.32 - Configuration: Multi-Threaded) has an average run-time of 4 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 BenchmarkConfiguration: Multi-ThreadedRun-Time48121620Min: 1 / Avg: 3.59 / Max: 15

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

OpenBenchmarking.orgPercent, Fewer Is BetterAverage Deviation Between RunsConfiguration: Multi-ThreadedDeviation246810Min: 0 / Avg: 0.48 / Max: 3

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.

IntelAMDOpenBenchmarking.orgRelative Core Scaling To BaseQuantLib CPU Core ScalingConfiguration: Multi-Threaded4681214162432642.064.126.188.2410.3

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
Used by default on supported hardware.
Found on Intel processors since Sandy Bridge (2011).
Found on AMD processors since Bulldozer (2011).

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

 
VINSERTI128 VPBROADCASTQ VPBROADCASTB VEXTRACTI128 VPERMPD VPBROADCASTD VGATHERQPD VPGATHERQQ VPERMQ
FMA (FMA)
Used by default on supported hardware.
Found on Intel processors since Haswell (2013).
Found on AMD processors since Bulldozer (2011).

 
VFMADD231SD VFMADD213SD VFMADD132SD VFMSUB132SD VFNMADD132SD VFNMADD231SD VFMADD132PD VFNMADD132PD VFNMADD213SD VFMADD213PD VFMADD231PD VFMSUB231SD VFNMSUB132SD VFMSUB213SD VFNMSUB231SD VFMSUB231PD VFMSUB132PD VFNMSUB213SD VFNMADD213PD VFNMADD231PD
Last automated analysis: 24 June 2023

This test profile binary relies on the shared libraries libQuantLib.so.1, libm.so.6, 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)
ARMv8 64-bit
aarch64
ARMv8 Neoverse-N1, ARMv8 Neoverse-N1 160-Core, ARMv8 Neoverse-V2 72-Core, Apple M2

Recent Test Results

OpenBenchmarking.org Results Compare

1 System - 2 Benchmark Results

2 x Intel Xeon E5-2620 v2 - ASUS Z9PE-D8 WS - Intel Xeon E7 v2

CentOS Stream 9 - 5.14.0-437.el9.x86_64 - X Server

1 System - 2 Benchmark Results

2 x Intel Xeon E5-2620 v2 - ASUS Z9PE-D8 WS - Intel Xeon E7 v2

CentOS Stream 9 - 5.14.0-435.el9.x86_64 - X Server

1 System - 2 Benchmark Results

2 x Intel Xeon E5-2620 v2 - ASUS Z9PE-D8 WS - Intel Xeon E7 v2

CentOS Stream 9 - 5.14.0-435.el9.x86_64 - X Server

1 System - 2 Benchmark Results

2 x Intel Xeon E5-2620 v2 - ASUS Z9PE-D8 WS - Intel Xeon E7 v2

CentOS Stream 9 - 5.14.0-432.el9.x86_64 - X Server

1 System - 2 Benchmark Results

2 x Intel Xeon E5-2620 v2 - ASUS Z9PE-D8 WS - Intel Xeon E7 v2

CentOS Stream 9 - 5.14.0-432.el9.x86_64 - X Server

1 System - 2 Benchmark Results

2 x Intel Xeon E5-2620 v2 - ASUS Z9PE-D8 WS - Intel Xeon E7 v2

CentOS Stream 9 - 5.14.0-432.el9.x86_64 - X Server

1 System - 2 Benchmark Results

2 x Intel Xeon E5-2620 v2 - ASUS Z9PE-D8 WS - Intel Xeon E7 v2

CentOS Stream 9 - 5.14.0-432.el9.x86_64 - X Server

1 System - 2 Benchmark Results

Intel Core i5-10500 - Dell 0NDYHG - Intel Tiger Lake-H

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

1 System - 2 Benchmark Results

Intel Core i5-10500 - Dell 0NDYHG - Intel Tiger Lake-H

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

1 System - 2 Benchmark Results

Intel Core i5-10500 - Dell 0NDYHG - Intel Tiger Lake-H

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

1 System - 2 Benchmark Results

Intel Core i5-10500 - Dell 0NDYHG - Intel Tiger Lake-H

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

1 System - 2 Benchmark Results

Intel Core i5-10500 - Dell 0NDYHG - Intel Tiger Lake-H

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

1 System - 2 Benchmark Results

Intel Core i5-10500 - Dell 0NDYHG - Intel Tiger Lake-H

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

1 System - 2 Benchmark Results

Intel Core i5-10500 - Dell 0NDYHG - Intel Tiger Lake-H

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

1 System - 2 Benchmark Results

Intel Core i5-10500 - Dell 0NDYHG - Intel Tiger Lake-H

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

Most Popular Test Results

Find More Test Results