Giter Club home page Giter Club logo

phenom-ii-benchmark's Introduction

Phenom-II-Benchmark

The Phenom II Benchmark is a small set of low level benchmarks for testing hardware speed against a Phenom II 810 Quad Core from 2009. I hope to add more tests as time goes on, depending on whether the topic is found to be interesting for people (specifically single threaded performance, and L1 cache tests).

The benchmarks use all threads and cores of a CPU, and execute 100 billion iterations of some specific instruction using heavily unrolled loops for pipelining. The program has the timings which my old Phenom II 810 scores for each of the benchmarks, and prints out how many Phenom II's your CPU is, i.e. how much faster than a Phenom II the hardware is. A score of 2 Phenom II's means your hardware executed the instructions twice as fast.

The aim of this project is to highlight some of the nuances in the speed of hardware. And show, while hardware is generally improving in speed, there are some things old hardware does as fast or faster. I happen to own two Phenom II 810 CPU's from a long time ago, and I decided it would be fun to race them against my laptop, which has an i7 8750H; a mobile CPU, fer sure, but a decent peice of hardware nonetheless.

I was surprised and fascinated by the results. There are many things the old Phenom does much faster than my modern CPU, although they are generally single threaded, and these tests do not currently appear in the benchmark. Modern CPU's have larger SIMD registers and more cores, but are otherwise not much faster.

There are other things the Phenom II does very well, and I'd love to explore further if there is interest in improving this tool.

Anywho, have a good one all, DL and run the app yourself, find today: How Many Phenom II's is my CPU! :)

phenom-ii-benchmark's People

Contributors

theraindoodle avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

phenom-ii-benchmark's Issues

Repository that is not participating in Hacktoberfest

Ineligible Repository
Your PR was submitted to a repository that is not participating in Hacktoberfest. Maintainers of the repository can add the "hacktoberfest" topic to their repository if they wish to participate.
Hacktoberfest will boost your project to grow

Ryzen 7 5800h w/ 16gb(2x8gb) 3200MHz SODIMM

16 Cores Unplugged

ADD REG, 1
Run 1/10 Time: 1.394
Run 2/10 Time: 1.386
Run 3/10 Time: 1.392
Run 4/10 Time: 1.394
Run 5/10 Time: 1.394
Run 6/10 Time: 1.393
Run 7/10 Time: 1.385
Run 8/10 Time: 1.15
Run 9/10 Time: 1.053
Run 10/10 Time: 1.043
Executed 102.9 billion instructions/second
Score: 3.42 Phenom's II's worth's

AND REG, REG
Run 1/10 Time: 1.41
Run 2/10 Time: 1.413
Run 3/10 Time: 1.392
Run 4/10 Time: 1.435
Run 5/10 Time: 1.418
Run 6/10 Time: 1.439
Run 7/10 Time: 1.384
Run 8/10 Time: 1.073
Run 9/10 Time: 1.058
Run 10/10 Time: 1.058
Executed 101.5 billion instructions/second
Score: 3.32 Phenom's II's worth's

SHR REG, CL
Run 1/10 Time: 2.788
Run 2/10 Time: 2.743
Run 3/10 Time: 2.731
Run 4/10 Time: 2.209
Run 5/10 Time: 2.051
Run 6/10 Time: 2.051
Run 7/10 Time: 2.057
Run 8/10 Time: 2.062
Run 9/10 Time: 2.068
Run 10/10 Time: 2.063
Executed 52.35 billion instructions/second
Score: 1.739 Phenom's II's worth's

PADDB MMX
Run 1/10 Time: 0.355
Run 2/10 Time: 0.353
Run 3/10 Time: 0.36
Run 4/10 Time: 0.361
Run 5/10 Time: 0.353
Run 6/10 Time: 0.353
Run 7/10 Time: 0.36
Run 8/10 Time: 0.359
Run 9/10 Time: 0.353
Run 10/10 Time: 0.361
Executed 304.2 billion instructions/second
Score: 3.683 Phenom's II's worth's

CMOVcc REG, REG
Run 1/10 Time: 2.784
Run 2/10 Time: 2.773
Run 3/10 Time: 2.858
Run 4/10 Time: 2.513
Run 5/10 Time: 2.126
Run 6/10 Time: 2.093
Run 7/10 Time: 2.068
Run 8/10 Time: 2.067
Run 9/10 Time: 2.082
Run 10/10 Time: 2.067
Executed 51.95 billion instructions/second
Score: 1.726 Phenom's II's worth's

FLOPS
Run 1/10 Time: 0.358
Run 2/10 Time: 0.36
Run 3/10 Time: 0.364
Run 4/10 Time: 0.364
Run 5/10 Time: 0.356
Run 6/10 Time: 0.355
Run 7/10 Time: 0.357
Run 8/10 Time: 0.358
Run 9/10 Time: 0.364
Run 10/10 Time: 0.366
Executed 302.5 billion instructions/second
Score: 7.311 Phenom's II's worth's

IMUL REG, REG
Run 1/10 Time: 5.479
Run 2/10 Time: 4.988
Run 3/10 Time: 4.084
Run 4/10 Time: 4.112
Run 5/10 Time: 4.095
Run 6/10 Time: 4.084
Run 7/10 Time: 4.083
Run 8/10 Time: 4.077
Run 9/10 Time: 4.08
Run 10/10 Time: 4.074
Executed 26.36 billion instructions/second
Score: 5.087 Phenom's II's worth's

1 Core Unplugged

ADD REG, 1
Run 1/10 Time: 10.3
Run 2/10 Time: 7.884
Run 3/10 Time: 7.879
Run 4/10 Time: 7.875
Run 5/10 Time: 7.884
Run 6/10 Time: 7.878
Run 7/10 Time: 7.884
Run 8/10 Time: 7.881
Run 9/10 Time: 7.882
Run 10/10 Time: 7.876
Executed 13.63 billion instructions/second
Score: 1.808 Phenom's II's worth's

AND REG, REG
Run 1/10 Time: 10.16
Run 2/10 Time: 7.9
Run 3/10 Time: 7.884
Run 4/10 Time: 7.878
Run 5/10 Time: 7.883
Run 6/10 Time: 7.889
Run 7/10 Time: 7.88
Run 8/10 Time: 7.895
Run 9/10 Time: 7.88
Run 10/10 Time: 7.882
Executed 13.63 billion instructions/second
Score: 1.78 Phenom's II's worth's

SHR REG, CL
Run 1/10 Time: 18
Run 2/10 Time: 15.63
Run 3/10 Time: 15.64
Run 4/10 Time: 15.66
Run 5/10 Time: 15.65
Run 6/10 Time: 15.64
Run 7/10 Time: 15.64
Run 8/10 Time: 15.68
Run 9/10 Time: 15.67
Run 10/10 Time: 15.69
Executed 6.869 billion instructions/second
Score: 0.911 Phenom's II's worth's

PADDB MMX
Run 1/10 Time: 2.601
Run 2/10 Time: 2.596
Run 3/10 Time: 2.6
Run 4/10 Time: 2.406
Run 5/10 Time: 1.956
Run 6/10 Time: 1.957
Run 7/10 Time: 1.955
Run 8/10 Time: 1.956
Run 9/10 Time: 1.957
Run 10/10 Time: 1.963
Executed 54.92 billion instructions/second
Score: 2.653 Phenom's II's worth's

CMOVcc REG, REG
Run 1/10 Time: 18.04
Run 2/10 Time: 15.76
Run 3/10 Time: 15.76
Run 4/10 Time: 15.76
Run 5/10 Time: 15.78
Run 6/10 Time: 15.79
Run 7/10 Time: 15.76
Run 8/10 Time: 15.76
Run 9/10 Time: 15.79
Run 10/10 Time: 15.76
Executed 6.815 billion instructions/second
Score: 0.9043 Phenom's II's worth's

FLOPS
Run 1/10 Time: 2.966
Run 2/10 Time: 2.974
Run 3/10 Time: 2.974
Run 4/10 Time: 2.336
Run 5/10 Time: 2.24
Run 6/10 Time: 2.243
Run 7/10 Time: 2.24
Run 8/10 Time: 2.245
Run 9/10 Time: 2.241
Run 10/10 Time: 2.246
Executed 47.93 billion instructions/second
Score: 4.623 Phenom's II's worth's

IMUL REG, REG
Run 1/10 Time: 33.55
Run 2/10 Time: 31.26
Run 3/10 Time: 31.31
Run 4/10 Time: 31.25
Run 5/10 Time: 31.24
Run 6/10 Time: 31.31
Run 7/10 Time: 31.31
Run 8/10 Time: 31.36
Run 9/10 Time: 31.32
Run 10/10 Time: 31.29
Executed 3.437 billion instructions/second
Score: 2.652 Phenom's II's worth's

16 Cores Plugged In

ADD REG, 1
Run 1/10 Time: 0.89
Run 2/10 Time: 0.882
Run 3/10 Time: 0.884
Run 4/10 Time: 0.884
Run 5/10 Time: 0.893
Run 6/10 Time: 0.886
Run 7/10 Time: 0.887
Run 8/10 Time: 0.908
Run 9/10 Time: 0.907
Run 10/10 Time: 0.912
Executed 121.7 billion instructions/second
Score: 4.045 Phenom's II's worth's

AND REG, REG
Run 1/10 Time: 0.887
Run 2/10 Time: 0.897
Run 3/10 Time: 0.915
Run 4/10 Time: 0.913
Run 5/10 Time: 0.912
Run 6/10 Time: 0.894
Run 7/10 Time: 0.891
Run 8/10 Time: 0.892
Run 9/10 Time: 0.884
Run 10/10 Time: 0.89
Executed 121.5 billion instructions/second
Score: 3.974 Phenom's II's worth's

SHR REG, CL
Run 1/10 Time: 1.72
Run 2/10 Time: 1.729
Run 3/10 Time: 1.735
Run 4/10 Time: 1.73
Run 5/10 Time: 1.731
Run 6/10 Time: 1.743
Run 7/10 Time: 1.734
Run 8/10 Time: 1.741
Run 9/10 Time: 1.733
Run 10/10 Time: 1.729
Executed 62.43 billion instructions/second
Score: 2.074 Phenom's II's worth's

PADDB MMX
Run 1/10 Time: 0.22
Run 2/10 Time: 0.223
Run 3/10 Time: 0.228
Run 4/10 Time: 0.226
Run 5/10 Time: 0.225
Run 6/10 Time: 0.228
Run 7/10 Time: 0.228
Run 8/10 Time: 0.24
Run 9/10 Time: 0.229
Run 10/10 Time: 0.228
Executed 488.1 billion instructions/second
Score: 5.91 Phenom's II's worth's

CMOVcc REG, REG
Run 1/10 Time: 1.747
Run 2/10 Time: 1.741
Run 3/10 Time: 1.744
Run 4/10 Time: 1.763
Run 5/10 Time: 1.743
Run 6/10 Time: 1.746
Run 7/10 Time: 1.742
Run 8/10 Time: 1.76
Run 9/10 Time: 1.751
Run 10/10 Time: 1.756
Executed 61.67 billion instructions/second
Score: 2.05 Phenom's II's worth's

FLOPS
Run 1/10 Time: 0.221
Run 2/10 Time: 0.225
Run 3/10 Time: 0.225
Run 4/10 Time: 0.225
Run 5/10 Time: 0.228
Run 6/10 Time: 0.226
Run 7/10 Time: 0.23
Run 8/10 Time: 0.227
Run 9/10 Time: 0.228
Run 10/10 Time: 0.227
Executed 485.9 billion instructions/second
Score: 11.74 Phenom's II's worth's

IMUL REG, REG
Run 1/10 Time: 3.44
Run 2/10 Time: 3.435
Run 3/10 Time: 3.44
Run 4/10 Time: 3.438
Run 5/10 Time: 3.468
Run 6/10 Time: 3.444
Run 7/10 Time: 3.463
Run 8/10 Time: 3.443
Run 9/10 Time: 3.453
Run 10/10 Time: 3.452
Executed 31.26 billion instructions/second
Score: 6.033 Phenom's II's worth's

1 Core Plugged In

ADD REG, 1
Run 1/10 Time: 6.221
Run 2/10 Time: 6.219
Run 3/10 Time: 6.203
Run 4/10 Time: 6.171
Run 5/10 Time: 6.175
Run 6/10 Time: 6.173
Run 7/10 Time: 6.175
Run 8/10 Time: 6.176
Run 9/10 Time: 6.173
Run 10/10 Time: 6.164
Executed 17.42 billion instructions/second
Score: 2.31 Phenom's II's worth's

AND REG, REG
Run 1/10 Time: 6.163
Run 2/10 Time: 6.154
Run 3/10 Time: 6.154
Run 4/10 Time: 6.153
Run 5/10 Time: 6.163
Run 6/10 Time: 6.157
Run 7/10 Time: 6.157
Run 8/10 Time: 6.157
Run 9/10 Time: 6.162
Run 10/10 Time: 6.149
Executed 17.46 billion instructions/second
Score: 2.281 Phenom's II's worth's

SHR REG, CL
Run 1/10 Time: 12.2
Run 2/10 Time: 12.28
Run 3/10 Time: 12.24
Run 4/10 Time: 12.22
Run 5/10 Time: 12.25
Run 6/10 Time: 12.23
Run 7/10 Time: 12.18
Run 8/10 Time: 12.17
Run 9/10 Time: 12.17
Run 10/10 Time: 12.17
Executed 8.826 billion instructions/second
Score: 1.171 Phenom's II's worth's

PADDB MMX
Run 1/10 Time: 1.525
Run 2/10 Time: 1.523
Run 3/10 Time: 1.53
Run 4/10 Time: 1.521
Run 5/10 Time: 1.529
Run 6/10 Time: 1.527
Run 7/10 Time: 1.526
Run 8/10 Time: 1.524
Run 9/10 Time: 1.525
Run 10/10 Time: 1.525
Executed 70.59 billion instructions/second
Score: 3.41 Phenom's II's worth's

CMOVcc REG, REG
Run 1/10 Time: 12.29
Run 2/10 Time: 12.3
Run 3/10 Time: 12.31
Run 4/10 Time: 12.29
Run 5/10 Time: 12.4
Run 6/10 Time: 12.41
Run 7/10 Time: 12.53
Run 8/10 Time: 12.54
Run 9/10 Time: 12.43
Run 10/10 Time: 12.35
Executed 8.736 billion instructions/second
Score: 1.159 Phenom's II's worth's

FLOPS
Run 1/10 Time: 1.747
Run 2/10 Time: 1.751
Run 3/10 Time: 1.748
Run 4/10 Time: 1.746
Run 5/10 Time: 1.748
Run 6/10 Time: 1.746
Run 7/10 Time: 1.748
Run 8/10 Time: 1.75
Run 9/10 Time: 1.751
Run 10/10 Time: 1.75
Executed 61.5 billion instructions/second
Score: 5.931 Phenom's II's worth's

IMUL REG, REG
Run 1/10 Time: 24.89
Run 2/10 Time: 24.66
Run 3/10 Time: 24.52
Run 4/10 Time: 24.5
Run 5/10 Time: 24.51
Run 6/10 Time: 24.43
Run 7/10 Time: 24.56
Run 8/10 Time: 24.34
Run 9/10 Time: 24.32
Run 10/10 Time: 24.34
Executed 4.415 billion instructions/second
Score: 3.407 Phenom's II's worth's

AMD Ryzen 9 7950X

Everything is better, so I would say they are getting better, just not as much as people think :(
And I believe FLOPS are so high, that the benchmark might be even limited by threading :D (did not do any tests to verify, how many % of time is wasted on threading)

AVX CPU detected!
SSE CPU detected!
Threads available: 32 vs. 4 for Phenom II

Select a benchmark (or 0 to quit):
1. ADD REG, 1           (GPR arithmetic)
2. AND REG, REG         (GPR Boolean)
3. SHR REG, CL          (Variable shifts - Phenom's phorte)
4. PADDB MMX            (Obsolete instruction set)
5. CMOVcc REG, REG      (Branchless programming)
6. FLOPS                (Floating point with best set)
7. IMUL REG, REG        (GPR Multiplication)
8. Toggle Multi vs. Single Threads (Current=32)
0. Quit
1
Run 1/10 Time: 0.417
Run 2/10 Time: 0.418
Run 3/10 Time: 0.415
Run 4/10 Time: 0.414
Run 5/10 Time: 0.417
Run 6/10 Time: 0.417
Run 7/10 Time: 0.418
Run 8/10 Time: 0.419
Run 9/10 Time: 0.416
Run 10/10 Time: 0.418
Executed 259.4 billion instructions/second
Score: 8.617 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=32)
2
Run 1/10 Time: 0.418
Run 2/10 Time: 0.414
Run 3/10 Time: 0.41
Run 4/10 Time: 0.401
Run 5/10 Time: 0.418
Run 6/10 Time: 0.414
Run 7/10 Time: 0.418
Run 8/10 Time: 0.416
Run 9/10 Time: 0.419
Run 10/10 Time: 0.416
Executed 267.8 billion instructions/second
Score: 8.761 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=32)
3
Run 1/10 Time: 0.802
Run 2/10 Time: 0.82
Run 3/10 Time: 0.8
Run 4/10 Time: 0.793
Run 5/10 Time: 0.811
Run 6/10 Time: 0.811
Run 7/10 Time: 0.82
Run 8/10 Time: 0.819
Run 9/10 Time: 0.81
Run 10/10 Time: 0.805
Executed 135.4 billion instructions/second
Score: 4.497 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=32)
4
Run 1/10 Time: 0.102
Run 2/10 Time: 0.103
Run 3/10 Time: 0.105
Run 4/10 Time: 0.103
Run 5/10 Time: 0.104
Run 6/10 Time: 0.103
Run 7/10 Time: 0.103
Run 8/10 Time: 0.104
Run 9/10 Time: 0.104
Run 10/10 Time: 0.104
Executed 1053 billion instructions/second
Score: 12.75 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=32)
5
Run 1/10 Time: 0.758
Run 2/10 Time: 0.782
Run 3/10 Time: 0.787
Run 4/10 Time: 0.77
Run 5/10 Time: 0.762
Run 6/10 Time: 0.778
Run 7/10 Time: 0.766
Run 8/10 Time: 0.769
Run 9/10 Time: 0.781
Run 10/10 Time: 0.767
Executed 141.7 billion instructions/second
Score: 4.707 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=32)
6
Run 1/10 Time: 0.096
Run 2/10 Time: 0.095
Run 3/10 Time: 0.095
Run 4/10 Time: 0.092
Run 5/10 Time: 0.094
Run 6/10 Time: 0.096
Run 7/10 Time: 0.092
Run 8/10 Time: 0.093
Run 9/10 Time: 0.098
Run 10/10 Time: 0.093
Executed 1167 billion instructions/second
Score: 28.21 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=32)
7
Run 1/10 Time: 1.472
Run 2/10 Time: 1.505
Run 3/10 Time: 1.549
Run 4/10 Time: 1.473
Run 5/10 Time: 1.598
Run 6/10 Time: 1.494
Run 7/10 Time: 1.557
Run 8/10 Time: 1.459
Run 9/10 Time: 1.443
Run 10/10 Time: 1.453
Executed 74.41 billion instructions/second
Score: 14.36 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=1)
1
Run 1/10 Time: 5.1
Run 2/10 Time: 7.813
Run 3/10 Time: 6.999
Run 4/10 Time: 5.066
Run 5/10 Time: 5.157
Run 6/10 Time: 5.127
Run 7/10 Time: 5.131
Run 8/10 Time: 6.578
Run 9/10 Time: 9.14
Run 10/10 Time: 9.022
Executed 21.2 billion instructions/second
Score: 2.811 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=1)
2
Run 1/10 Time: 5.131
Run 2/10 Time: 5.13
Run 3/10 Time: 5.13
Run 4/10 Time: 5.131
Run 5/10 Time: 5.131
Run 6/10 Time: 5.13
Run 7/10 Time: 5.132
Run 8/10 Time: 5.141
Run 9/10 Time: 5.132
Run 10/10 Time: 5.133
Executed 20.93 billion instructions/second
Score: 2.734 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=1)
3
Run 1/10 Time: 10.11
Run 2/10 Time: 14.89
Run 3/10 Time: 15.97
Run 4/10 Time: 13.76
Run 5/10 Time: 16.46
Run 6/10 Time: 13.56
Run 7/10 Time: 12.46
Run 8/10 Time: 11.6
Run 9/10 Time: 10.1
Run 10/10 Time: 10.11
Executed 10.63 billion instructions/second
Score: 1.41 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=1)
4
Run 1/10 Time: 1.265
Run 2/10 Time: 1.268
Run 3/10 Time: 1.264
Run 4/10 Time: 1.264
Run 5/10 Time: 1.3
Run 6/10 Time: 1.507
Run 7/10 Time: 1.486
Run 8/10 Time: 1.643
Run 9/10 Time: 2.067
Run 10/10 Time: 1.704
Executed 84.95 billion instructions/second
Score: 4.103 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=1)
5
Run 1/10 Time: 12.93
Run 2/10 Time: 14.25
Run 3/10 Time: 12.14
Run 4/10 Time: 11.74
Run 5/10 Time: 12.71
Run 6/10 Time: 12.55
Run 7/10 Time: 11.92
Run 8/10 Time: 11.86
Run 9/10 Time: 13.22
Run 10/10 Time: 11.39
Executed 9.426 billion instructions/second
Score: 1.251 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=1)
6
Run 1/10 Time: 1.265
Run 2/10 Time: 1.263
Run 3/10 Time: 1.263
Run 4/10 Time: 1.263
Run 5/10 Time: 1.263
Run 6/10 Time: 1.264
Run 7/10 Time: 1.263
Run 8/10 Time: 1.256
Run 9/10 Time: 1.256
Run 10/10 Time: 1.253
Executed 85.69 billion instructions/second
Score: 8.265 Phenom's II's worth's

Select a benchmark (or 0 to quit):
8. Toggle Multi vs. Single Threads (Current=1)
7
Run 1/10 Time: 20.2
Run 2/10 Time: 20.2
Run 3/10 Time: 22.59
Run 4/10 Time: 26.31
Run 5/10 Time: 21.15
Run 6/10 Time: 20.21
Run 7/10 Time: 20.21
Run 8/10 Time: 25.09
Run 9/10 Time: 26.48
Run 10/10 Time: 26.32
Executed 5.316 billion instructions/second
Score: 4.102 Phenom's II's worth's

macOS compilation

Minimal changes for macOS:

  • We need g++ from brew, I could not make the XCode accept the pthread syntax. After installing g++ with brew, edit linux_src_bin and use that instead of the default g++.
  • nasm needs -fmacho64 instead of -felf64
  • nasm needs --prefix _

I also added a "clean:" rule.

CC = /usr/local/opt/gcc/bin/g++-10

phenom2_benchmark: main.cpp asm.o
	$(CC) main.cpp asm.o -lpthread -ffast-math -msse3 -O3 -o phenom2_benchmark

asm.o: asm.asm AND_REG_REG.asm CMOVcc_REG_REG.asm PADDB_MMX.asm ADD_REG_1.asm SHR_REG_CL.asm AVXChecker.asm FLOPS.asm IMUL_REG_REG.asm
	nasm asm.asm -fmacho64 --prefix _ -o asm.o

clean:
	rm -f *.o phenom2_benchmark

Ryzen 3600 test

hi, as attachment the result for a ryzen 3600, stock clock,
both single and multicore. Did not recompile your binary (seems make clean does not work) but should not be an issue since those are hardcrafted assembly.
Would be mayne interesting to compare with an compiler's optimized code..
3600single.txt
3600multi.txt

Need update README for build under Linux (Ubuntu Mate 20.04)

Try to run from linux_src_bin

$sudo ./phenom2_benchmark sudo: ./phenom2_benchmark: command not found
or
$sudo sh phenom2_benchmark phenom2_benchmark: 1: Syntax error: ")" unexpected

$uname -a Linux igaveluyk-DS3 5.4.0-40-generic #44-Ubuntu SMP Tue Jun 23 00:01:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Install as follow
$sudo apt-get install build-essential
$pwd ~/Downloads/Phenom-II-Benchmark-master/linux_src_bin$
$make
$make: 'phenom2_benchmark' is up to date.

  • Remove phenom2_benchmark and asm.o
    sudo apt-get install nasm
    $make nasm asm.asm -felf64 -o asm.o g++ main.cpp asm.o -lpthread -ffast-math -msse3 -O3 -o phenom2_benchmark
  • new phenom2_benchmark and asm.o files created

  • Does new file will be compiled the same way?, can upload new binary if needed (no idea how to check, but OLD binary not working)

Ryzen 1700 (non-X) results

Ryzen-1700-non-X.txt

Attached are my benchmark results for my Ryzen 1700, includes all tests, as well as multithreaded and single-threaded. I did not, however, attempt to assign core priority and this was plainly running at the whim of Windows 10's scheduler.

SMT was enabled (8C/16T), and RAM is running at ~2133 MHz, in the event you want to factor in any sort of Infinity Fabric variable.

AMD EPYC 7452

Test Multithread IPS Multithread Phenoms Singlethread IPS Singlethread Phenoms
ADD REG, 1 415.8B 13.82 13.16B 1.745
AND REG, REG 419.8B 13.73 13.1B 1.712
SHR REG, CL 427.1B 14.19 13.1B 1.738
PADDB MMX 1308B 15.84 31.66B 1.529
CMOVcc REG, REG 437.8B 14.55 13.01B 1.727
FLOPS 1747B 42.23 53.4B 5.15
IMUL REG, REG 119.4B 119.4 3.341B 3.341

Phenom vs Phenom

I found this and your video very interesting due to me having a Phenom computer I use daily since I built it back in 2010.

I ran your benchmark to see just how much difference my processor was since I have a Phenom II X6 1100T.

I had trouble getting the benchmark to run. I wasn't able to get the release to run, but it would run from the debugger so I'm hoping that didn't mess with the results any.

Here is my results.
Phenom-II-X6-1100T.txt

Intel test results

For the interested, this is the test results from a Intel(R) Xeon(R) CPU E3-1245 v5 @ 3.50GHz running FreeBSD (not that the OS should make any difference).

E3-1245v5-FreeBSD.txt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.