Fhourstones

This integer benchmark solves positions in the game of Connect-4, as played on a vertical 7x6 board. By default, it uses a 64Mb transposition table with the twobig replacement strategy. Positions are represented as 64-bit bitboards, and the hash function is computed using a single 64-bit modulo operation, giving 64-bit machines a slight edge. The alpha-beta searcher sorts moves dynamically based on the history heuristic.

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

Project Site

homepages.cwi.nl

Test Created

6 December 2010

Last Updated

4 March 2018

Test Maintainer

Michael Larabel 

Test Type

Processor

Average Install Time

2 Seconds

Average Run Time

14 Minutes, 27 Seconds

Test Dependencies

C/C++ Compiler Toolchain

Accolades

200k+ Downloads + 5k+ Public Benchmark Results

Supported Platforms


Public Result Uploads *Reported Test Completions **Reported Installs **Test Profile Page Views ***OpenBenchmarking.orgEventsFhourstones Popularity Statisticspts/fhourstones2010.122011.052011.102012.032012.082013.012013.062013.112014.042014.092015.022015.072015.122016.052016.102017.032017.082018.012018.062018.112019.042019.092020.022020.072020.122021.052021.102022.032022.082023.012023.062023.1113K26K39K52K65K
* 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 30 November 2023.

Revision History

pts/fhourstones-1.1.2   [View Source]   Sun, 04 Mar 2018 11:48:52 GMT
Add Windows support.

pts/fhourstones-1.1.1   [View Source]   Wed, 18 Mar 2015 20:43:26 GMT
Update download links

pts/fhourstones-1.1.0   [View Source]   Mon, 06 Dec 2010 14:47:20 GMT
Initial import into OpenBenchmarking.org

Suites Using This Test

Single-Threaded


Performance Metrics

Analyze Test Configuration:

Fhourstones 3.1

Complex Connect-4 Solving

OpenBenchmarking.org metrics for this test profile configuration based on 6,004 public results since 26 February 2011 with the latest data as of 2 December 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
Kpos / sec (Average)
100th
6
25990 +/- 21
100th
6
20399 +/- 1545
100th
22
20374 +/- 604
100th
18
20197 +/- 290
100th
13
19069 +/- 2127
100th
7
19051 +/- 1145
100th
4
18331 +/- 1018
100th
9
17963 +/- 1427
100th
6
17468 +/- 171
100th
10
16994 +/- 811
99th
13
16245 +/- 555
99th
3
16021 +/- 1744
98th
37
15771 +/- 501
98th
5
15311 +/- 1447
97th
5
15246 +/- 2054
97th
25
15185 +/- 153
97th
3
15123 +/- 47
97th
16
15053 +/- 1050
96th
25
14982 +/- 989
96th
16
14923 +/- 200
95th
12
14761 +/- 1207
95th
5
14718 +/- 160
95th
30
14682 +/- 296
94th
21
14454 +/- 918
94th
4
14430 +/- 1843
94th
3
14348 +/- 736
94th
5
14313 +/- 702
94th
3
14282 +/- 24
94th
58
14275 +/- 1054
94th
3
14238 +/- 1132
94th
21
14238 +/- 321
93rd
8
14115 +/- 1129
93rd
22
14110 +/- 652
93rd
15
14006 +/- 1044
93rd
5
13958 +/- 106
92nd
56
13778 +/- 239
91st
13
13741 +/- 521
91st
8
13728 +/- 31
91st
4
13668 +/- 93
91st
41
13658 +/- 378
90th
3
13586 +/- 398
89th
26
13390 +/- 184
88th
3
13303 +/- 475
88th
4
13283 +/- 55
87th
23
13202 +/- 528
87th
11
13180 +/- 1636
87th
9
13163 +/- 145
87th
25
13157 +/- 271
86th
4
13150 +/- 514
86th
23
13109 +/- 363
86th
31
13092 +/- 862
85th
21
12993 +/- 611
85th
10
12980 +/- 682
82nd
22
12795 +/- 410
82nd
20
12789 +/- 397
81st
25
12701 +/- 435
81st
3
12700 +/- 1113
81st
33
12695 +/- 553
81st
10
12645 +/- 103
81st
7
12642 +/- 585
80th
53
12620 +/- 358
80th
40
12619 +/- 1102
80th
3
12593 +/- 1424
80th
5
12549 +/- 1471
79th
3
12531 +/- 501
79th
7
12511 +/- 551
79th
13
12507 +/- 862
79th
3
12491 +/- 1260
79th
6
12459 +/- 416
79th
3
12445 +/- 61
78th
3
12378 +/- 962
78th
7
12377 +/- 593
78th
3
12373 +/- 490
76th
10
12276 +/- 928
76th
5
12261 +/- 478
Mid-Tier
75th
< 12239
75th
4
12191 +/- 293
74th
3
12151 +/- 161
73rd
4
12087 +/- 668
71st
22
11997 +/- 350
70th
22
11979 +/- 799
69th
49
11941 +/- 376
68th
7
11921 +/- 246
68th
17
11918 +/- 597
68th
8
11913 +/- 1158
66th
6
11876 +/- 747
65th
56
11839 +/- 219
64th
9
11795 +/- 470
64th
5
11786 +/- 271
63rd
3
11766 +/- 28
63rd
3
11765 +/- 1421
63rd
6
11754 +/- 144
63rd
26
11749 +/- 381
62nd
45
11727 +/- 1084
62nd
50
11704 +/- 478
60th
6
11604 +/- 430
59th
12
11515 +/- 537
58th
4
11446 +/- 1045
57th
5
11357 +/- 503
55th
17
11245 +/- 145
55th
5
11212 +/- 253
55th
5
11209 +/- 791
55th
4
11194 +/- 795
54th
4
11190 +/- 779
54th
31
11162 +/- 128
54th
22
11160 +/- 374
53rd
31
11098 +/- 669
53rd
6
11087 +/- 508
53rd
3
11087 +/- 1192
53rd
7
11048 +/- 271
53rd
3
11036 +/- 293
53rd
7
11028 +/- 330
51st
3
10833 +/- 993
51st
24
10824 +/- 270
Median
50th
10819
50th
4
10815 +/- 715
50th
4
10773 +/- 73
50th
3
10757 +/- 1029
50th
16
10696 +/- 851
49th
10
10661 +/- 12
49th
3
10634 +/- 118
49th
5
10614 +/- 330
49th
39
10593 +/- 561
49th
4
10587 +/- 141
49th
9
10570 +/- 1341
48th
3
10558 +/- 219
48th
12
10538 +/- 377
47th
11
10448 +/- 357
47th
4
10384 +/- 249
46th
8
10334 +/- 540
46th
9
10331 +/- 670
46th
3
10317 +/- 518
46th
25
10308 +/- 181
46th
3
10303 +/- 231
46th
5
10295 +/- 1268
46th
8
10281 +/- 68
45th
3
10251 +/- 1151
45th
3
10247 +/- 14
45th
3
10239 +/- 336
45th
24
10192 +/- 394
44th
6
10119 +/- 505
43rd
11
10022 +/- 124
43rd
5
10018 +/- 281
43rd
3
9983 +/- 104
43rd
7
9980 +/- 853
43rd
15
9975 +/- 1042
42nd
16
9923 +/- 934
42nd
16
9914 +/- 1112
42nd
8
9855 +/- 441
42nd
3
9823 +/- 831
42nd
5
9822 +/- 835
40th
5
9665 +/- 341
40th
21
9653 +/- 1221
40th
5
9644 +/- 208
40th
3
9624 +/- 17
39th
4
9571 +/- 915
39th
6
9547 +/- 153
38th
24
9521 +/- 201
38th
3
9486 +/- 48
38th
5
9473 +/- 795
38th
6
9441 +/- 368
37th
25
9405 +/- 275
37th
3
9380 +/- 859
36th
3
9330 +/- 1122
35th
3
9220 +/- 397
35th
4
9186 +/- 680
35th
3
9179 +/- 9
35th
4
9172 +/- 403
34th
6
9136 +/- 752
34th
3
9131 +/- 284
34th
7
9120 +/- 394
34th
6
9114 +/- 79
34th
6
9107 +/- 1330
34th
7
9092 +/- 180
34th
3
9085 +/- 223
34th
6
9081 +/- 753
34th
4
9080 +/- 263
34th
13
9058 +/- 747
33rd
3
9004 +/- 562
33rd
7
8987 +/- 630
33rd
13
8986 +/- 499
33rd
3
8984 +/- 157
32nd
4
8821 +/- 182
31st
5
8780 +/- 715
31st
12
8779 +/- 951
31st
4
8775 +/- 543
31st
3
8757 +/- 123
29th
5
8600 +/- 338
29th
6
8567 +/- 1153
29th
3
8566 +/- 74
29th
6
8561 +/- 557
29th
4
8518 +/- 212
29th
3
8517 +/- 301
29th
8
8499 +/- 22
28th
4
8487 +/- 1186
28th
4
8485 +/- 61
27th
3
8365 +/- 770
27th
5
8328 +/- 261
27th
4
8325 +/- 852
27th
4
8294 +/- 487
27th
3
8290 +/- 24
26th
4
8198 +/- 302
26th
7
8196 +/- 618
Low-Tier
25th
< 8190
25th
22
8179 +/- 224
24th
15
8099 +/- 127
24th
3
8091 +/- 25
24th
4
8028 +/- 462
22nd
4
7857 +/- 570
22nd
4
7729 +/- 136
21st
3
7694 +/- 330
21st
17
7599 +/- 412
21st
3
7582 +/- 487
21st
3
7569 +/- 5
20th
9
7523 +/- 267
19th
3
7355 +/- 855
19th
15
7286 +/- 219
19th
3
7213 +/- 713
18th
5
7128 +/- 288
18th
5
7115 +/- 282
18th
18
7060 +/- 276
17th
5
6875 +/- 107
17th
3
6839 +/- 341
16th
4
6596 +/- 12
15th
3
6529 +/- 951
15th
4
6465 +/- 694
15th
3
6456 +/- 615
14th
15
6394 +/- 12
14th
3
6334 +/- 11
13th
18
6282 +/- 8
13th
3
6162 +/- 392
12th
9
6011 +/- 808
11th
6
5912 +/- 124
11th
10
5735 +/- 109
10th
7
5526 +/- 22
10th
22
5472 +/- 522
10th
3
5413 +/- 203
9th
3
5234 +/- 3
8th
3
5060 +/- 210
8th
3
4969 +/- 237
7th
3
4641 +/- 20
7th
6
4610 +/- 464
7th
3
4437 +/- 187
6th
19
4342 +/- 42
6th
10
4286 +/- 287
6th
20
4106 +/- 197
5th
15
3925 +/- 240
4th
4
3282 +/- 87
3rd
3
3242 +/- 41
3rd
18
3027 +/- 313
2nd
7
2885 +/- 30
2nd
10
2529 +/- 121
OpenBenchmarking.orgDistribution Of Public Results - Complex Connect-4 Solving5998 Results Range From 714 To 1479113766 Kpos / sec7142958297659165238887475001183297621479120241774942862070765482366588102662410722958233343254055963549878583845701204141523824437346444733169065028991685324814305620636925916459546212282166508104786803927407099750027395572647691395267987217888283040508578863128874685749170508369466330989762153601005797622103537988410649621461094544408112412667011537089321183291194121287345612424557181272037980130162024213312025041360784766139036702814199492901449531552147911381413002600390052006500

Based on OpenBenchmarking.org data, the selected test / test configuration (Fhourstones 3.1 - Complex Connect-4 Solving) has an average run-time of 9 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 BenchmarkComplex Connect-4 SolvingRun-Time612182430Min: 3 / Avg: 8.52 / Max: 26

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 RunsComplex Connect-4 SolvingDeviation246810Min: 0 / Avg: 0.49 / Max: 5

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.

AMDIntelOpenBenchmarking.orgRelative Core Scaling To BaseFhourstones CPU Core ScalingComplex Connect-4 Solving246810121620243240560.72711.45422.18132.90843.6355

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
SSE2 (SSE2)
Used by default on supported hardware.
 
CVTSI2SD DIVSD ADDSD MOVDQU PSRLDQ MOVDQA MOVD
Last automated analysis: 17 January 2022

This test profile binary relies on the shared libraries 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)
SPARC64
sparc64
UltraSparc T2
RISC-V 64-bit
riscv64
SiFive RISC-V, rv64imafdcvsu, sifive rocket0
IBM POWER (PowerPC) 64-bit
ppc64le
POWER8, POWER8E, POWER9 altivec supported 44-Core, POWER9 altivec supported 64-Core
IBM POWER (PowerPC) 64-bit
ppc64
POWER8E
IBM POWER (PowerPC)
ppc
(Many Processors)
MIPS 64-bit
mips64
ICT Loongson-3A R3, Loongson-3A R3, Loongson-3A3000 V0.9 FPU V0.1
Loongson LoongArch 64-bit
loongarch64
Loongson-3A5000, Loongson-3A5000-HV, Loongson-3A5000LL, Loongson-3A6000, Loongson-3C5000L
Intel / AMD x86 32-bit
i686
(Many Processors)
Intel / AMD x86 32-bit
i386
(Many Processors)
ARMv8 64-bit
armv8l
ARMv8 rev 12 8-Core
ARMv7 32-bit
armv7l
ARMv7 rev 1 4-Core
ARMv8 64-bit
arm64
Apple, Apple M1, Apple M1 Max
ARMv8 64-bit
aarch64
AArch64 rev 1, AArch64 rev 4, ARMv8 Cortex-A53 4-Core, ARMv8 Cortex-A53 8-Core, ARMv8 Cortex-A55 4-Core, ARMv8 Cortex-A57 6-Core, ARMv8 Cortex-A72 4-Core, ARMv8 Cortex-A72 6-Core, ARMv8 Cortex-A73, ARMv8 Cortex-A73 6-Core, ARMv8 Cortex-A73 8-Core, ARMv8 Cortex-A76 4-Core, ARMv8 Neoverse-N1, ARMv8 rev 0 6-Core, ARMv8 rev 3 6-Core, Ampere Altra ARMv8 Neoverse-N1 160-Core, Apple M1, Cortex A57 rev 1, FT2000AHK, Rockchip ARMv8 Cortex-A55 4-Core, Rockchip ARMv8 Cortex-A72 6-Core, Rockchip ARMv8 Cortex-A76 4-Core, Rockchip ARMv8 Cortex-A76 6-Core, SiFive RISC-V