tevador / RandomX

Proof of work algorithm based on random code execution
BSD 3-Clause "New" or "Revised" License
1.43k stars 307 forks source link

Performance and portability testing #25

Closed tevador closed 5 years ago

tevador commented 5 years ago

Please post:

  1. Your CPU, RAM parameters, operating system and compiler (if you compiled yourself).
  2. Verification mode results.
  3. Mining mode results (optional).

Precompiled binaries are available for Windows 64-bit and Ubuntu/Debian x86-64. Download the latest release here: https://github.com/tevador/RandomX/releases

Verification mode

Run as:

randomx --verify --softAes

Mining mode

Mining mode is currently only supported on 64-bit x86 CPUs. Requires at least 2.25 GiB of RAM. Run as:

randomx --mine --init Q --threads T --nonces N
tevador commented 5 years ago

I have checked 50 million nonces to see if verification and mining mode give the same results.

Verification mode (~70 hours)

> bin/randomx --verify --largePages --threads 16 --nonces 50000000
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 0.669315 s
Initializing 16 virtual machine(s) ...
Running benchmark (50000000 nonces) ...
Calculated result: 56be950794d1d9c047010052bdfd0035143f3f2896d7de6c0423e1df7d228d25
Performance: 5.01106 ms per hash

Mining mode (~3.5 hours)

> bin/randomx --mine --largePages --init 16 --threads 8 --nonces 50000000
RandomX - mining mode
Initializing (16 threads) ...
Dataset (4 GiB) initialized in 9.46321 s
Initializing 8 virtual machine(s) ...
Running benchmark (50000000 nonces) ...
Calculated result: 56be950794d1d9c047010052bdfd0035143f3f2896d7de6c0423e1df7d228d25
Performance: 4194.5 hashes per second
hyc commented 5 years ago

AMD A10-4600M APU @ 2.3GHz, 2x8GB DDR3-3200 Arch Linux gcc (GCC) 8.1.1 20180531

bin/randomx --largePages --verify --threads 4
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 1.85078 s
Initializing 4 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 31.7535 ms per hash
bin/randomx --largePages --mine --threads 4 --nonces 1000000
RandomX - mining mode
Initializing (1 thread) ...
Dataset (4 GiB) initialized in 170.613 s
Initializing 4 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 552.24 hashes per second
SChernykh commented 5 years ago

Intel Pentium G5400 (Coffee Lake 3.7 GHz, 2 cores, 4 MB cache) Ubuntu 16.04

root@user-System-Product-Name:~/RandomX/bin# ./randomx --verify --softAes
Using software AES.
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 0.632181 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 34.939 ms per hash
root@user-System-Product-Name:~/RandomX/bin# ./randomx --mine --threads 2 --init 4 --nonces 100000
RandomX - mining mode
Initializing (4 threads) ...
Dataset (4 GiB) initialized in 25.6913 s
Initializing 2 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2
Performance: 768.405 hashes per second

Same PC, Windows 10 (with large pages):

c:\Temp>randomx --verify --softAes
Using software AES.
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 0.70969 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 35.9885 ms per hash

c:\Temp>randomx --mine --threads 2 --init 4 --nonces 100000 --largePages
RandomX - mining mode
Initializing (4 threads) ...
Dataset (4 GiB) initialized in 24.0918 s
Initializing 2 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2
Performance: 867.127 hashes per second
hyc commented 5 years ago

AMD Opteron 8354 @2.2GHz x4, (HP DL585 G5), 32x4GB DDR2-533 Debian gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516

 bin/randomx --largePages --softAes --verify --threads 16                                                    Using software AES.
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 2.40209 s
Initializing 16 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 12.807 ms per hash
seq 0 3 | xargs -P 0 -I node numactl -N node bin/randomx --largepages --softAes --mine --nonces 1000000 --init 4 --threads 4
Using software AES.
RandomX - mining mode
Initializing (4 threads) ...
Using software AES.
RandomX - mining mode
Initializing (4 threads) ...
Using software AES.
RandomX - mining mode
Initializing (4 threads) ...
Using software AES.
RandomX - mining mode
Initializing (4 threads) ...
Dataset (4 GiB) initialized in 57.3206 s
Initializing 4 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 57.4228 s
Initializing 4 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 57.533 s
Initializing 4 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 57.9007 s
Initializing 4 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 265.288 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 264.983 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 264.926 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 264.132 hashes per second

~1060H/s

tevador commented 5 years ago

@hyc Can you run just 1 thread for verification? What matters for verification is the single threaded performance more than multithreaded.

hyc commented 5 years ago

OK, rerunning. AMD A10-4600M

bin/randomx --largePages --verify
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 1.81849 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 106.876 ms per hash

AMD Opteron 8354

bin/randomx --largePages --softAes --verify
Using software AES.
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 2.42726 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 125.102 ms per hash
tevador commented 5 years ago

AMD Sempron 2800+ (socket 754, 1600 MHz, K8 architecture), 2 GB of DDR-333

$ bin/randomx --verify --softAes
Using software AES.
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 3.82781 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 180.809 ms per hash
hyc commented 5 years ago

AMD Opteron 6274 @2.2GHz x4, (SuperMicro H8QG6), 256GB DDR3-1333 gcc (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0

bin/randomx --largePages --verify
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 1.82662 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 102.342 ms per hash
seq 0 7 | xargs -P 0 -I node numactl -N node bin/randomx --largepages --mine --nonces 1000000 --init 8 --threads 8
RandomX - mining mode
Initializing (8 threads) ...
RandomX - mining mode
Initializing (8 threads) ...
RandomX - mining mode
Initializing (8 threads) ...
RandomX - mining mode
Initializing (8 threads) ...
RandomX - mining mode
Initializing (8 threads) ...
RandomX - mining mode
Initializing (8 threads) ...
RandomX - mining mode
Initializing (8 threads) ...
RandomX - mining mode
Initializing (8 threads) ...
Dataset (4 GiB) initialized in 24.0109 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 24.2557 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 24.2744 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 24.4155 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 24.7356 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 24.7534 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 25.5245 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Dataset (4 GiB) initialized in 25.6272 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 888.996 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 888.437 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 887.666 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 887.677 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 887.142 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 885.901 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 885.807 hashes per second
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 881.962 hashes per second

~7094H/s

OpticFlowX commented 5 years ago

CPU: i7-4790k, auto boost (4.4 GHz?) Memory: DD3-2400, dual channel RandomX-windows-x64-v0.3.2-beta

$ ./randomx.exe --verify --largePages
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 0.59107 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 23.6291 ms per hash

$ ./randomx --mine --largePages --nonces 1000000 --init 8 --threads 4
RandomX - mining mode
Initializing (8 threads) ...
Dataset (4 GiB) initialized in 12.1867 s
Initializing 4 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 2515.21 hashes per second

Same as above + CPU manually overclocked to 4.7 GHz:

$ ./randomx --mine --largePages --nonces 1000000 --init 8 --threads 4
RandomX - mining mode
Initializing (8 threads) ...
Dataset (4 GiB) initialized in 11.8758 s
Initializing 4 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d
Performance: 2633.4 hashes per second
jbgetho commented 5 years ago

Dual EPYC 7601

seq 0 7 | xargs -P 0 -I node numactl -N node ./randomx --mine --init 8 --largepages --threads 8 100000

[root@localhost ~]# seq 0 7 | xargs -P 0 -I node numactl -N node ./randomx --mine --init 8 --largepages --threads 8 --nonces 100000 RandomX - mining mode Initializing (8 threads) ... RandomX - mining mode Initializing (8 threads) ... RandomX - mining mode Initializing (8 threads) ... RandomX - mining mode Initializing (8 threads) ... RandomX - mining mode Initializing (8 threads) ... RandomX - mining mode Initializing (8 threads) ... RandomX - mining mode Initializing (8 threads) ... RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 14.6201 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Dataset (4 GiB) initialized in 14.6833 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Dataset (4 GiB) initialized in 14.6908 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Dataset (4 GiB) initialized in 14.7495 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Dataset (4 GiB) initialized in 14.7686 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Dataset (4 GiB) initialized in 14.83 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Dataset (4 GiB) initialized in 14.9138 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Dataset (4 GiB) initialized in 14.9339 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2 Performance: 3567.14 hashes per second Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2 Performance: 3574.49 hashes per second Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2 Performance: 3582.15 hashes per second Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2 Performance: 3565.04 hashes per second Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2 Performance: 3388.92 hashes per second Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2 Performance: 3378.35 hashes per second Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2 Performance: 3374 hashes per second Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2 Performance: 3374.16 hashes per second

tevador commented 5 years ago

@jbgetho So around 28 KH/s, impressive.

Gingeropolous commented 5 years ago

model name : Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ddr4 3600 32 gb

after some fiddling with governors and bios settings, i could manage to get things running at 4.2 Ghz constantly.... but can't get ubuntu to get any faster cpu freqs

fastpc@fastpc-desktop:~/randomx_test_20190220/RandomX$ time bin/randomx --mine --largePages --init 4 --threads 4 --nonces 100000
RandomX - mining mode
Initializing (4 threads) ...
Dataset (4 GiB) initialized in 18.0579 s
Initializing 4 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2
Performance: 2464.65 hashes per second

real    0m58.636s
user    3m52.226s
sys 0m0.176s
fastpc@fastpc-desktop:~/randomx_test_20190220/RandomX$ time bin/randomx --mine --largePages --init 8 --threads 4 --nonces 100000
RandomX - mining mode
Initializing (8 threads) ...
Dataset (4 GiB) initialized in 18.1238 s
Initializing 4 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Calculated result: 6b75c9504202c15bc58d3579bb37f029c3fa711bad4a8182d7284ff612dc08f2
Performance: 2462.52 hashes per second

real    0m58.734s
user    3m52.401s
sys 0m0.172s
jbgetho commented 5 years ago

Dual Intel(R) Xeon(R) Gold 6138 CPU @ 2.00GHz

[root@localhost ~]# seq 0 1 | xargs -P 0 -I node numactl -N node ./randomx --mine --init 20 --largepages --threads 20 --nonces 1000000 RandomX - mining mode Initializing (20 threads) ... RandomX - mining mode Initializing (20 threads) ... Dataset (4 GiB) initialized in 6.50778 s Initializing 20 virtual machine(s) ... Running benchmark (1000000 nonces) ... Dataset (4 GiB) initialized in 6.52874 s Initializing 20 virtual machine(s) ... Running benchmark (1000000 nonces) ... Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d Performance: 8001.85 hashes per second Calculated result: 38f1097eb1f1a77973559d8142273db7de8e679303b6cdb6c46ea9e6420c5e8d Performance: 7770.24 hashes per second

nioroso-x3 commented 5 years ago

Tested it in big endian powerpc again, verify failed. This is the ASM output: https://pastebin.com/AhvfJEKY

tevador commented 5 years ago

@nioroso-x3 So the program matches. Can you please build the debug branch and run:

bin/randomx --verify --softAes > debug.txt

It will make 2 files: "scratchpad" and "debug.txt". Please upload both files somewhere so I can investigate. Thanks.

umma08 commented 5 years ago
erk@erk-PORTEGE-R830:~/Brain/RandomX/RandomX/bin$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    2
Core(s) per socket:    2
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 42
Model name:            Intel(R) Core(TM) i7-2620M CPU @ 2.70GHz
Stepping:              7
CPU MHz:               1126.331
CPU max MHz:           3400.0000
CPU min MHz:           800.0000
BogoMIPS:              5382.66
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              4096K
NUMA node0 CPU(s):     0-3
erk@erk-PORTEGE-R830:~/Brain/RandomX/RandomX/bin$ ./randomx --mine --init 4 --threads 2 --nonces 1000
RandomX - mining mode
Initializing (4 threads) ...
Dataset (4 GiB) initialized in 42.0237 s
Initializing 2 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 445.321 hashes per second
nioroso-x3 commented 5 years ago

@nioroso-x3 So the program matches. Can you please build the debug branch and run:

bin/randomx --verify --softAes > debug.txt

It will make 2 files: "scratchpad" and "debug.txt". Please upload both files somewhere so I can investigate. Thanks.

Here they are. debug.zip

Dadadah commented 5 years ago

Ryzen 7 2700 @ 3.3 GHz | 16 GB RAM Dual Channel @ 3.0 GHz

PS C:\Users\-----\Crypto\monero> .\randomx.exe --verify --largePages
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 0.615493 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 45.9168 ms per hash

Large Pages Disabled

PS C:\Users\-----\Crypto\monero> .\randomx.exe --mine --init 16 --threads 8 --nonces 250000
RandomX - mining mode
Initializing (16 threads) ...
Dataset (4 GiB) initialized in 8.87431 s
Initializing 8 virtual machine(s) ...
Running benchmark (250000 nonces) ...
Calculated result: 0e9c9e9b75a59ce6bc62efbca285a74f71972f461db50e9db70711bab7c0fc7e
Performance: 2219.83 hashes per second

Large Pages Enabled

PS C:\Users\-----\Crypto\monero> .\randomx.exe --mine --init 16 --threads 8 --nonces 500000 --largePages
RandomX - mining mode
Initializing (16 threads) ...
Dataset (4 GiB) initialized in 8.05422 s
Initializing 8 virtual machine(s) ...
Running benchmark (500000 nonces) ...
Calculated result: e58819dd83dbde217a0d87f260d4dc5837677ada56b7c474df4e2c613543929b
Performance: 4138.1 hashes per second
ghost commented 5 years ago

AMD Ryzen 3 2200G

Clocked at 3.20 GHz (Turbo disabled), 16 GB of DDR4-2133 (single channel), NixOS kernel 5.0.2, compiled with clang 7.

bin/randomx --verify                                                             
RandomX - verification mode                                                                                   
Initializing ...                                                                  
Cache (256 MiB) initialized in 0.829629 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 62.0525 ms per hash
bin/randomx --mine --largePages --init 4 --threads 4 --nonces 20000             
RandomX - mining mode
Initializing (4 threads) ...
Dataset (4 GiB) initialized in 28.2178 s
Initializing 4 virtual machine(s) ...
Running benchmark (20000 nonces) ...
Calculated result: 16d75ae74f027acd2e7946f107157cea6e1eda6379d41e6de7e284629a45c584
Performance: 1116.48 hashes per second

Threads with 3, 6 gave similar results.

MaxelsS commented 5 years ago

Intel i7-4700HQ and dependency from clock L3 cache

Clocked at 4.0 GHz, L3 cache 6MB. RAM 16 Gb DDR3L-1600 (dual channel). Windows 7 64-bit. Used precompiled binaries.

L3 cache at 4.0 GHZ

C:\RandomX>randomx.exe --largePages --verify RandomX - verification mode Initializing ... Cache (256 MiB) initialized in 0.632676 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 28.2852 ms per hash

C:\RandomX>randomx.exe --largePages --mine --threads 3 --init 8 RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 14.992 s Initializing 3 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 1740.47 hashes per second

L3 cache at 2.0 GHZ

C:\RandomX>randomx.exe --largePages --verify RandomX - verification mode Initializing ... Cache (256 MiB) initialized in 0.650704 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 30.5441 ms per hash

-8%

C:\RandomX>randomx.exe --largePages --mine --threads 3 --init 8 RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 15.723 s Initializing 3 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 1451.14 hashes per second

-16.6%

L3 cache at 1.0 GHZ

C:\RandomX>randomx.exe --largePages --verify RandomX - verification mode Initializing ... Cache (256 MiB) initialized in 0.739273 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 37.8631 ms per hash

-33.9%

C:\RandomX>randomx.exe --largePages --mine --threads 3 --init 8 RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 19.7411 s Initializing 3 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 1025.11 hashes per second

-41.1%

MaxelsS commented 5 years ago

Intel i7-4700HQ and dependency from speed RAM

Clocked at 4.0 GHz, L3 cache 6MB. RAM 16 Gb DDR3L-1600 (dual channel). Windows 7 64-bit. Used precompiled binaries

RAM DDR3L-1600 dual channel (11-11-11-28): -read = 24083 MB/s -write = 24985 MB/s -copy = 23412 MB/s -latency = 60.5 ns

C:\RandomX>randomx.exe --largePages --verify RandomX - verification mode Initializing ... Cache (256 MiB) initialized in 0.633251 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 28.3744 ms per hash

C:\RandomX>randomx.exe --mine --threads 3 --init 8 RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 14.9807 s Initializing 3 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 1049.22 hashes per second

C:\RandomX>randomx.exe --largePages --mine --threads 3 --init 8 RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 14.8926 s Initializing 3 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 1673.67 hashes per second

RAM DDR3L-1333 dual channel (9-9-9-24): -read = 20229 MB/s (-16%) -write = 20995 MB/s (-16%) -copy = 20009 MB/s (-15%) -latency = 63.7 ns (+5.3%)

C:\RandomX>randomx.exe --largePages --verify RandomX - verification mode Initializing ... Cache (256 MiB) initialized in 0.654412 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 29.274 ms per hash

-3.2%

C:\RandomX>randomx.exe --mine --threads 3 --init 8 RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 15.9637 s Initializing 3 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 1001.37 hashes per second

-4.6%

C:\RandomX>randomx.exe --largePages --mine --threads 3 --init 8 RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 15.7647 s Initializing 3 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 1562.3 hashes per second

-6.7%

RAM DDR3L-1066 dual channel (7-7-7-19): -read = 16281 MB/s (-32.4%) -write = 16826 MB/s (-32.7%) -copy = 16127 MB/s (-31.1%) -latency = 69.1 ns (+14.2%)

C:\RandomX>randomx.exe --largePages --verify RandomX - verification mode Initializing ... Cache (256 MiB) initialized in 0.694731 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 30.8027 ms per hash

-8.6%

C:\RandomX>randomx.exe --mine --threads 3 --init 8 RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 17.5772 s Initializing 3 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 934.691 hashes per second

-10.9%

C:\RandomX>randomx.exe --largePages --mine --threads 3 --init 8 RandomX - mining mode Initializing (8 threads) ... Dataset (4 GiB) initialized in 17.3435 s Initializing 3 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Reference result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006 Performance: 1532.6 hashes per second

-8.4%

antanst commented 5 years ago

Macbook Pro 2017 MacOS Mojave Intel(R) Core(TM) i5-7267U CPU @ 3.10GHz (2 Cores, 4 threads, boost up to 3.50Ghz) 16 GB 2133 MHz LPDDR3 Used self-compiled binary with Apple LLVM version 10.0.0 (clang-1000.11.45.5)

$ ./bin/randomx --verify
RandomX - verification mode
Initializing ...
Cache (268435456 bytes) initialized in 0.838668 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: 84f37cc43cb21eabf1d5b9def462060cd24218290678dd80a8ea2f663892629e
Reference result:  84f37cc43cb21eabf1d5b9def462060cd24218290678dd80a8ea2f663892629e
Performance: 46.6449 ms per hash

$ ./bin/randomx --mine --init 2 --threads 1 --nonces 10000
RandomX - mining mode
Initializing (2 threads) ...
Dataset (4294967296 bytes) initialized in 66.5982 s
Initializing 1 virtual machine(s) ...
Running benchmark (10000 nonces) ...
Calculated result: e8b04e6642948231680af1ba11b747091d93420bc0194dd02e30570e55fb243a
Performance: 356.777 hashes per second

$ ./bin/randomx --mine --init 2 --threads 2 --nonces 10000
RandomX - mining mode
Initializing (2 threads) ...
Dataset (4294967296 bytes) initialized in 99.4383 s
Initializing 2 virtual machine(s) ...
Running benchmark (10000 nonces) ...
Calculated result: e8b04e6642948231680af1ba11b747091d93420bc0194dd02e30570e55fb243a
Performance: 484.56 hashes per second

$ ./bin/randomx --mine --init 2 --threads 3 --nonces 10000
RandomX - mining mode
Initializing (2 threads) ...
Dataset (4294967296 bytes) initialized in 63.9503 s
Initializing 3 virtual machine(s) ...
Running benchmark (10000 nonces) ...
Calculated result: e8b04e6642948231680af1ba11b747091d93420bc0194dd02e30570e55fb243a
Performance: 833.236 hashes per second

$ ./bin/randomx --mine --init 2 --threads 4 --nonces 10000
RandomX - mining mode
Initializing (2 threads) ...
Dataset (4294967296 bytes) initialized in 65.803 s
Initializing 4 virtual machine(s) ...
Running benchmark (10000 nonces) ...
Calculated result: e8b04e6642948231680af1ba11b747091d93420bc0194dd02e30570e55fb243a
Performance: 831.493 hashes per second
ghost commented 5 years ago

Intel Celeron G3900 @ 2.80GHz

8 GB of DDR3-1333 (dual channel), NixOS kernel 4.19.29, compiled with gcc-7.4.0

bin/randomx --verify                                                                                                                                                                           
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 0.835769 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Reference result:  e1b4144293ff9ab5aa4c98f2389bb18950d8c3fd874891ac64628e028a286006
Performance: 45.6325 ms per hash
bin/randomx --mine --init 2 --threads 2 --nonces 10000
RandomX - mining mode
Initializing (2 threads) ...
Dataset (4 GiB) initialized in 62.699 s
Initializing 2 virtual machine(s) ...
Running benchmark (10000 nonces) ...
Calculated result: 8a96fad48ff1859a02e8217650aa117f7cc8a6ce2e1a5e03223a097290b1f821
Performance: 511.433 hashes per second
tevador commented 5 years ago

I have pushed a new release 0.3.3: https://github.com/tevador/RandomX/releases/tag/0.3.3-beta

This release has a lot faster verification mode. Use the --jit option for verification on x86-64 systems. Dataset size has been reduced from 4 GiB to 2 GiB.

AMD Ryzen 1700:

> bin/randomx --verify --largePages --jit
RandomX - verification mode
Initializing ...
Cache (268435456 bytes) initialized in 0.611602 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Reference result:  83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Performance: 14.7429 ms per hash
> bin/randomx --mine --init 16 --threads 8 --largePages --nonces 1000000
RandomX - mining mode
Initializing (16 threads) ...
Dataset (2147483648 bytes) initialized in 2.95131 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Calculated result: 48f61081409ac4df5ac69d4f7486e43f0baec6b64487eaa2068223002353d659
Performance: 4234.53 hashes per second

Please retest at least your verification performance and also list your CNv4 CPU hashrate if possible.

MaxelsS commented 5 years ago

Intel i7-4700HQ Clocked at 4.0 GHz, L3 cache 6MB. RAM 16 Gb DDR3L-1600 (dual channel). Windows 7 64-bit. Used precompiled binaries ver. 0.3.3

Hashrate CryptonightR:

HASHRATE REPORT - CPU | ID | 10s | 60s | 15m | ID | 10s | 60s | 15m | | 0 | 73.7 | 71.9 | 73.3 | 1 | 75.4 | 74.5 | 75.3 | | 2 | 75.4 | 74.4 | 75.2 | Totals (CPU): 224.5 220.9 223.8 H/s Highest: 227.5 H/s

Retest:

C:\RandomX_0.3.3>randomx.exe --largePages --verify --jit RandomX - verification mode Initializing ... Cache (268435456 bytes) initialized in 0.601715 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Reference result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Performance: 10.6856 ms per hash

C:\RandomX_0.3.3>randomx.exe --largePages --mine --threads 3 --init 8 --nonces 1000000 RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 3.84475 s Initializing 3 virtual machine(s) ... Running benchmark (1000000 nonces) ... Calculated result: 48f61081409ac4df5ac69d4f7486e43f0baec6b64487eaa2068223002353d659 Performance: 1797.28 hashes per second

ghost commented 5 years ago

Intel Core i5-8250U CPU @ 1.60GHz 8GB DDR4, L3 Cache 6 MB

./randomx --verify --jit
RandomX - verification mode
Initializing ...
Cache (268435456 bytes) initialized in 0.767079 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Reference result:  83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Performance: 17.7319 ms per hash

./randomx --mine --init 8 --threads 6 --nonces 100000
RandomX - mining mode
Initializing (8 threads) ...
Dataset (2147483648 bytes) initialized in 5.66271 s
Initializing 6 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160
Performance: 1018.72 hashes per second

Compiled latest commit 2bb4263, Arch Linux, gcc 8.2.1 20181127

xmrig

 * ABOUT        XMRig/2.14.1 gcc/8.2.1
 * LIBS         libuv/1.26.0 OpenSSL/1.1.1b microhttpd/0.9.63 
 * CPU          Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz (1) x64 AES AVX2
 * CPU L2/L3    1.0 MB/6.0 MB
 * THREADS      6, cryptonight, av=0, donate=1%
 * ASSEMBLY     auto:intel
 * POOL #1      donate.v2.xmrig.com:3333 variant auto
 * COMMANDS     hashrate, pause, resume
[2019-03-22 21:59:53] new job from donate.v2.xmrig.com:3333 diff 1000225 algo cn/r height 1796490
[2019-03-22 22:00:24] speed 10s/60s/15m 63.3 63.2 63.7 H/s max 66.2 H/s

Compiled latest commit 08ef944

JustFranz commented 5 years ago

i7 3770K default clocks/ pre-compiled windows

randomx --jit --largepages --verify RandomX - verification mode Initializing ... Cache (268435456 bytes) initialized in 0.826405 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Reference result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Performance: 14.0342 ms per hash

randomx --mine --init 8 --threads 4 --nonces 100000 --largepages RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 5.21822 s Initializing 4 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 1130.71 hashes per second

randomx --mine --init 8 --threads 5 --nonces 100000 --largepages RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 4.94119 s Initializing 5 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 1237.48 hashes per second

randomx --mine --init 8 --threads 6 --nonces 100000 --largepages RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 4.91763 s Initializing 6 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 1299.86 hashes per second

randomx --mine --init 8 --threads 7 --nonces 100000 --largepages RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 4.89745 s Initializing 7 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 1321.23 hashes per second

randomx --mine --init 8 --threads 8 --nonces 100000 --largepages RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 4.91558 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 1319.53 hashes per second

XMRig 4 threads and large pages

~260 H/s

CNV-4 is fastest at 4 threads, RandomX is fastest at 7 and 8 threads (equal). 4 threads of CNV-4 uses about 50% of the CPU.

Reported CPU usages:

8T 105% 7T 96% (jumps to 100-105%) 6T 83% 5T 70-73% (jumps to 75%) 4T 58% (jumps to 61% and some to 65%) (reported by windows resource monitor) Don't know how it translates to actual power draw. The total hash rate fluctuates by 30-40 H/s

MaxelsS commented 5 years ago

@JustFranz Please try running mine:

randomx --mine --init 8 --threads 4 --nonces 100000 --largepages

and immediately after start in the task manager, set affinity at threads 0,2,4,6 and set priority at high. The hashrate should be around 1400 H/s (i think).

ghost commented 5 years ago

AMD Ryzen 3 2200G

Clocked at 3.20 GHz (Turbo disabled), 16 GB of DDR4-2133 (single channel), NixOS kernel 5.0.2.

with clang 7

bin/randomx --verify --jit
RandomX - verification mode
Initializing ...
Cache (268435456 bytes) initialized in 0.912884 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Reference result:  83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Performance: 20.1592 ms per hash
bin/randomx --mine --largePages --init 4 --threads 4 --nonces 20000
RandomX - mining mode
Initializing (4 threads) ...
Dataset (2147483648 bytes) initialized in 8.07381 s
Initializing 4 virtual machine(s) ...
Running benchmark (20000 nonces) ...
Calculated result: e2c59dfa0ebbc406c254d2dc4786aadd6f51d5db9f9042a7315ff9068ce29214
Performance: 1025.28 hashes per second

with gcc 7.4

bin/randomx --verify --jit
RandomX - verification mode
Initializing ...
Cache (268435456 bytes) initialized in 0.792237 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Reference result:  83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Performance: 18.7633 ms per hash
bin/randomx --mine --largePages --init 4 --threads 4 --nonces 20000
RandomX - mining mode
Initializing (4 threads) ...
Dataset (2147483648 bytes) initialized in 7.84895 s
Initializing 4 virtual machine(s) ...
Running benchmark (20000 nonces) ...
Calculated result: e2c59dfa0ebbc406c254d2dc4786aadd6f51d5db9f9042a7315ff9068ce29214
Performance: 1046.7 hashes per second

Intel Celeron G3900 @ 2.80GHz

8 GB of DDR3-1333 (dual channel), NixOS kernel 4.19.29.

with clang 7

bin/randomx --verify --jit
RandomX - verification mode
Initializing ...
Cache (268435456 bytes) initialized in 0.931093 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Reference result:  83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Performance: 19.5338 ms per hash
bin/randomx --mine --init 2 --threads 2 --nonces 20000
RandomX - mining mode
Initializing (2 threads) ...
Dataset (2147483648 bytes) initialized in 17.1746 s
Initializing 2 virtual machine(s) ...
Running benchmark (20000 nonces) ...
Calculated result: e2c59dfa0ebbc406c254d2dc4786aadd6f51d5db9f9042a7315ff9068ce29214
Performance: 506.463 hashes per second

with gcc 7.4

bin/randomx --verify --jit
RandomX - verification mode
Initializing ...
Cache (268435456 bytes) initialized in 0.797594 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Reference result:  83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Performance: 19.5869 ms per hash
bin/randomx --mine --init 2 --threads 2 --nonces 20000
RandomX - mining mode
Initializing (2 threads) ...
Dataset (2147483648 bytes) initialized in 17.483 s
Initializing 2 virtual machine(s) ...
Running benchmark (20000 nonces) ...
Calculated result: e2c59dfa0ebbc406c254d2dc4786aadd6f51d5db9f9042a7315ff9068ce29214
Performance: 522.471 hashes per second
JustFranz commented 5 years ago

@MaxelsS

1 mil nonce, high priority and 0 2 4 6 affinity

--mine --init 8 --threads 4 --nonces 1000000 --largepages RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 5.19807 s Initializing 4 virtual machine(s) ... Running benchmark (1000000 nonces) ... Calculated result: 48f61081409ac4df5ac69d4f7486e43f0baec6b64487eaa2068223002353d659 Performance: 1306.89 hashes per second

tevador commented 5 years ago

@nioroso-x3 Can you please retest the latest master on big endian? I have fixed some bugs thanks to your test files. If the result still doesn't match the reference, please repeat the same steps as before on the debug branch and send me the 2 files.

nioroso-x3 commented 5 years ago

Still doesn't match the reference. Attached the debug output.

debug_2.zip

potatored commented 5 years ago

AMD FX(tm)-8320 8 core 4.00 GHz 8 GB RAM Windows 10

randomx.exe --verify --jit RandomX - verification mode Initializing ... Cache (268435456 bytes) initialized in 1.31985 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Reference result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Performance: 17.9803 ms per hash

randomx.exe --mine --largePages --init 8 --threads 8 --nonces 100000 RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 4.976 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 1911.04 hashes per second

tevador commented 5 years ago

@nioroso-x3 I have pushed a possible fix directly into the debug branch. Please run it and see if the final hash at the bottom is aaa98cb5e9dcfc7e398057d842951a18. If not, please post again the two files. Thanks!

nioroso-x3 commented 5 years ago

Nope, still doesn't match LE x86 debug_3.zip

dfg3hz5zqtwz46hw6 commented 5 years ago

Intel i7-4790K CPU @ 4.00GHz 16 GB DDR3-1866 RAM Windows Version 10.0.17134 Build 17134

randomx --verify RandomX - verification mode Initializing ... Cache (268435456 bytes) initialized in 0.684272 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Reference result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Performance: 25.7942 ms per hash

randomx --mine RandomX - mining mode Initializing (1 thread) ... Dataset (2147483648 bytes) initialized in 21.8691 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Reference result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Performance: 531.434 hashes per second

randomx.exe --mine --largePages --nonces 1000000 --init 8 --threads 4 RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 3.64585 s Initializing 4 virtual machine(s) ... Running benchmark (1000000 nonces) ... Calculated result: 48f61081409ac4df5ac69d4f7486e43f0baec6b64487eaa2068223002353d659 Performance: 2458.7 hashes per second

MoneroChan commented 5 years ago

Noob Question: Does Hashing in 'Verify mode' earn you any Moneroj ? or is it just for client/nodes, etc?

tevador commented 5 years ago

@MoneroChan 'Verification mode' produces the same results as 'mining mode', it's just much slower. So you could theoretically mine with it, but it would be very inefficient.

miki-bgd-011 commented 5 years ago

How far are we from the final release and testnet launch?

SChernykh commented 5 years ago

@miki-bgd-011 Code freeze will happen in the end of April. We need to fix #34 and #35 first. After that, only critical bugs/weaknesses will be fixed and some parameter tuning might also happen. Pool/miner implementations can already be started in May.

miki-bgd-011 commented 5 years ago

Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz (8 cores/16 threads) Ubuntu 18.10 64GB DDR4 2400 MT/s

./randomx --verify RandomX - verification mode Initializing ... Cache (268435456 bytes) initialized in 0.475186 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Reference result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Performance: 42.8106 ms per hash

root@public ~/randomx # ./randomx --mine --largePages --init 8 --threads 8 --nonces 100000 RandomX - mining mode Initializing (8 threads) ... Dataset (2147483648 bytes) initialized in 3.19008 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 3553.58 hashes per second

miki-bgd-011 commented 5 years ago

Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz (10 cores/20 threads) Ubuntu 18.04.2 LTS 32GB DDR4 2133 MT/s

./randomx --verify RandomX - verification mode Initializing ... Cache (268435456 bytes) initialized in 0.647607 s Initializing 1 virtual machine(s) ... Running benchmark (1000 nonces) ... Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Reference result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597 Performance: 24.2587 ms per hash

./randomx --mine --largePages --init 10 --threads 10 --nonces 100000 RandomX - mining mode Initializing (10 threads) ... Dataset (2147483648 bytes) initialized in 3.3176 s Initializing 10 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 4346.47 hashes per second

MoneroChan commented 5 years ago

Intel Core 2 Duo E8400: CPU Utilization: 47% @ 2.76Ghz RAM: 8GB Dual Channel DDR3 1333Mhz

randomx.exe --mine --init 1 --threads 1 --largePages --softAes --nonces 100000 Using software AES. RandomX - mining mode Initializing (1 thread) ... Dataset (2147483648 bytes) initialized in 41.765 s Initializing 1 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 169.612 hashes per second

MoneroChan commented 5 years ago

Single Channel DDR4 Bottleneck Experiment RAM: SINGLE Channel 4GB DDR4 2472Mhz, CMD 2T, CL14,14,14, 36 (3% Chipset OC) CPU: Ryzen 1700 : CPU Utilization: 50% @ 3.50Ghz (17% OC) Wall Power Draw: 113 Watts., Idle 53W

randomx.exe --mine --init 2 --threads 8 --largePages --nonces 100000 RandomX - mining mode Initializing (2 threads) ... Dataset (2147483648 bytes) initialized in 11.9769 s Initializing 8 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160 Performance: 3834.15 hashes per second

Note: CPU Utilization says 50% probably as it's just an artifact due to hyperthreading.

@tevador I suspect DDR4 can hit 4000H/s single channel with good OC as I didn't even try to OC the Ram properly (just dropped CAS -1).

SChernykh commented 5 years ago

Ryzen 7 1700 @ 3.6 GHz, dual channel DDR4-2666, 14-16-16-35

RandomX - mining mode
Initializing (16 threads) ...
Dataset (2147483648 bytes) initialized in 2.38846 s
Initializing 8 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160
Performance: 4848.21 hashes per second
dan0v commented 5 years ago

Windows 10 Pro Intel i5-4670k @4.4GHz 16gb DDR3 dual channel 1600MHz Verification mode:

>randomx --verify --softAes --jit

RandomX - verification mode
Initializing ...
Cache (268435456 bytes) initialized in 0.695326 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: 83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Reference result:  83875c55fb9ff4a75205a744b82926ebbe23219c6291889c9ee91603c845c597
Performance: 16.1504 ms per hash

Mining mode:

>randomx --mine --init 4 --threads 3 --nonces 100000

RandomX - mining mode
Initializing (4 threads) ...
Dataset (2147483648 bytes) initialized in 7.14755 s
Initializing 3 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Calculated result: 6ec7cc7d58d6519de63ae4440e81b8c1db6335c032f229373e02bdd81a24b160
Performance: 1037 hashes per second
jbgetho commented 5 years ago

Dual 7501 64 core 2GHz

seq 0 7 | xargs -P 0 -I node numactl -N node ./benchmark --mine --init 8 --largePages --threads 8 --nonces 100000 --jit

<..cut..>

Memory initialized in 5.89165 s
Initializing 8 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 3135.7 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 3129.64 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 3127.32 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 3128.92 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2963.62 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2954.26 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2950.27 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2945.87 hashes per second
jbgetho commented 5 years ago

Dual 7601 64 core 2.2GHz ( slower than 7501 probably due to host memory configuration )

seq 0 7 | xargs -P 0 -I node numactl -N node ./benchmark --mine --init 8 --largePages --threads 8 --nonces 100000 --jit

<..cut..>

Memory initialized in 6.64818 s
Initializing 8 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Performance: 3119.66 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2983.64 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2968.91 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2927.5 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2793 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2723.59 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2692.86 hashes per second
Calculated result: 47aa6b64fd89069a4decfa9bda2d618ab15cfd112d310e0ac17a6c6c1b94a253
Performance: 2438.53 hashes per second
toweryu commented 5 years ago

Raspberry Pi 3

ARM Cortex-A53, 1.2 GHz, 1 GB LPDDR2, Ubuntu 16.04 armv7l (32-bit), compiled with GCC 8.1.0

> bin/randomx --verify --softAes
Using software AES.
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 8.55579 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: fe31e8fd7ed1cec773e87c0684b66b38e58b23ab255e8f9c6b62745e43a26851
Reference result:  fe31e8fd7ed1cec773e87c0684b66b38e58b23ab255e8f9c6b62745e43a26851
Performance: 578.734 ms per hash

AMD Ryzen 7 1700

Clocked at 3.35 GHz (Turbo disabled), 16 GB of DDR4-2933 (dual channel), Ubuntu 16.04 x86_64, compiled with GCC 8.1.0

> bin/randomx --verify --largePages
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 0.6282 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: fe31e8fd7ed1cec773e87c0684b66b38e58b23ab255e8f9c6b62745e43a26851
Reference result:  fe31e8fd7ed1cec773e87c0684b66b38e58b23ab255e8f9c6b62745e43a26851
Performance: 55.5542 ms per hash
> bin/randomx --mine --largePages --init 16 --threads 8 --nonces 1000000
RandomX - mining mode
Initializing (16 threads) ...
Dataset (4 GiB) initialized in 9.40938 s
Initializing 8 virtual machine(s) ...
Running benchmark (1000000 nonces) ...
Calculated result: 9979734c3f8a2f665810851050aaf8a63d6bc9810cfecee9d55a3706a81266fd
Performance: 4124.02 hashes per second

Intel Core i7-8550U

Boosts to ~3.5 GHz at the beginning, then throttles down to ~2.4 GHz (mining mode). 16 GB of DDR4-2400 (dual channel), Windows 10 64-bit, compiled with Visual Studio 2017 15.8.3

>randomx.exe --verify --largePages
RandomX - verification mode
Initializing ...
Cache (256 MiB) initialized in 0.576263 s
Initializing 1 virtual machine(s) ...
Running benchmark (1000 nonces) ...
Calculated result: fe31e8fd7ed1cec773e87c0684b66b38e58b23ab255e8f9c6b62745e43a26851
Reference result:  fe31e8fd7ed1cec773e87c0684b66b38e58b23ab255e8f9c6b62745e43a26851
Performance: 28.8373 ms per hash
>randomx.exe --mine --largePages --init 8 --threads 4 --nonces 100000
RandomX - mining mode
Initializing (8 threads) ...
Dataset (4 GiB) initialized in 14.2439 s
Initializing 4 virtual machine(s) ...
Running benchmark (100000 nonces) ...
Calculated result: abe4b79b0439e54e2896e0134cc89c8bb1b7a378192095efc690f8f85699a225
Performance: 1678.74 hashes per second

Why my laptop hashrate is so low?(Intel Core i7-8550U 16 GB of DDR4-2400 Win10 home edition ) D:>randomx.exe --mine --init 8 --threads 4 --nonces 100000 RandomX benchmark

full memory mode (2080 MiB) interpreted mode hardware AES mode small pages mode Initializing (8 threads) ... Memory initialized in 174.068 s Initializing 4 virtual machine(s) ... Running benchmark (100000 nonces) ... Calculated result: 9b22794882187000d62c6d2b228fab5e585767aaaa5eb74905b0c7c00fcbdad8 Performance: 123.671 hashes per second

And largePages parameter is failed on my laptop。 D:>randomx.exe --verify --largePages RandomX benchmark

tevador commented 5 years ago

Why my laptop hashrate is so low?

It's because you are running the interpreter mode. Add the --jit option to use the compiled VM.

And largePages parameter is failed on my laptop

You need to enable the "Lock Pages in Memory" policy for your account. Use google search if you don't know how to do it.