XMRig
bd82b3c852
Added GpuWorker class.
2020-12-04 22:25:28 +07:00
XMRig
8686e08336
Fixed, benchmark validation on NUMA hardware produced incorrect results in some conditions.
2020-11-25 09:35:11 +07:00
XMRig
75f18c9b31
Use static RandomX seed for benchmark.
2020-11-20 08:15:04 +07:00
XMRig
a2a0defeef
Submit top benchmark diff.
2020-11-17 07:33:20 +07:00
XMRig
c1d99bfa09
Benchmark refactoring, zero delay submit and unified HTTP layer.
2020-11-16 16:22:34 +07:00
XMRig
926871cbe1
Removed non thread safe access to config.
2020-11-16 07:58:28 +07:00
SChernykh
c10ec90b60
Make single thread bench cheat-resistant
...
Each hash is dependent on the previous hash to make multi-threaded cheating impossible.
2020-11-15 20:38:27 +01:00
XMRig
7fc7b976bf
Removed m_bench field from Job class.
2020-10-16 20:29:11 +07:00
XMRig
a152d6be42
Added CMake option WITH_BENCHMARK.
2020-10-16 02:18:07 +07:00
SChernykh
2ecece7b3d
Added benchmark and stress test
...
Easy to use and zero configuration embedded benchmark/stress test.
2020-10-14 19:45:05 +02:00
xmrig
581d004568
Merge pull request #1890 from SChernykh/dev
...
Added argon2/chukwav2 algorithm
2020-10-13 14:54:34 +07:00
SChernykh
4f7186cb0e
Added argon2/chukwav2 algorithm
...
New Turtlecoin algorithm. Source: https://github.com/turtlecoin/turtlecoin/blob/development/src/crypto/hash.h#L57
2020-10-12 08:26:57 +02:00
cohcho
4a74ce3242
CPU: use raw counter
2020-10-10 13:28:14 +00:00
SChernykh
3fbf2ac3d4
More precise hashrate calculation
...
- Use only steady timestamp counters to guarantee correctness
- CPU backend: directly measure total hashrate using raw hash counters from each thread; update data more often on ARM CPUs because they're slower
- GPU backends: directly measure total hashrate too, but use interpolator with 4 second lag to fix variance from batches of hashes
Total hashrate is now measured directly (realtime for CPU, 4 seconds lag for GPU), so it might differ a bit from the sum of all thread hashrates because data points are taken at different moments in time.
Overhead is reduced a lot since it doesn't have to go through all threads to calculate max total hashrate on every timer tick (2 times a second).
2020-10-10 11:18:01 +02:00
cohcho
a705ab775b
RandomX: align args
...
tempHash/output must be 16-byte aligned for randomx_calculate_hash{,_first,_next}
2020-10-07 14:47:18 +00:00
SChernykh
abb78302b8
Try to allocate scratchpad from dataset's 1 GB huge pages, if normal huge pages are not available
2020-07-31 13:37:22 +02:00
SChernykh
7f00cb59d2
Conceal (CCX) support
2020-06-07 01:01:45 +02:00
SChernykh
22b937cc1c
KawPow WIP
2020-05-27 16:19:57 +02:00
SChernykh
680e4dd865
Fix code style
2020-04-09 14:31:42 +02:00
SChernykh
abb3340cc7
RandomX JIT refactoring
...
- Smaller memory footprint
- A bit faster overall
2020-04-09 14:24:54 +02:00
SChernykh
69cbfd682a
Use node number instead of affinity
2020-04-07 18:46:22 +02:00
SChernykh
6ae37a9519
Pooled allocation of RandomX VMs
...
+0.5% speedup on Zen2 when the whole L3 cache is used (16 threads on 3700X/3800X, 32 threads on 3950X).
2020-04-07 18:31:35 +02:00
XMRig
92a258f142
Added command line option --astrobwt-avx2
2020-03-12 00:04:07 +07:00
SChernykh
e22f798085
AVX2 optimized code for AstroBWT
...
Added "astrobwt-avx2" parameter in config.json, it's turned off ("false") by default.
4-5% speedup on CPUs with proper AVX2 support (AMD Ryzen starting with Zen2, Intel Core starting with Haswell).
There will be no speedup on the following CPUs:
- Intel Pentium/Celeron don't support AVX2
- AMD Zen/Zen+ have only half-speed AVX
GCC compiled version is faster without AVX2, MSVC compiled version is faster with AVX2
2020-03-10 22:35:14 +01:00
XMRig
6a45d5dcc9
Update year.
2020-03-06 12:57:21 +07:00
SChernykh
eeadea53e2
AstroBWT 20-50% speedup
...
Skips hashes with large stage 2 size. Added configurable `astrobwt-max-size` parameter, default value is 550, min 400, max 1200, optimal value ranges from 500 to 600 depending on CPU.
- Intel CPUs get 20-25% speedup
- 1st- and 2nd-gen Ryzens get 30% speedup
- 3rd-gen Ryzens get up to 50% speedup
2020-03-05 12:20:21 +01:00
SChernykh
14ef99ca67
AstroBWT algorithm (DERO) support
...
To test:
- Download https://github.com/deroproject/derosuite/releases/tag/AstroBWT
- Run daemon with `--testnet` in command line
In config.json:
- "coin":"dero"
- "url":"127.0.0.1:30306"
- "daemon:"true"
2020-02-29 22:41:24 +01:00
XMRig
c307433900
Fixed nicehash nonce overflow for CPU backend.
2020-02-06 17:19:08 +07:00
XMRig
402c44b547
Added "cn-pico/tlo".
2019-12-29 00:29:19 +07:00
XMRig
d32df84ca5
Memory allocation refactoring.
2019-12-08 23:17:39 +07:00
SChernykh
d0df824599
Optimized dataset read for Ryzen CPUs
...
Removed register dependency in dataset read, +0.8% speedup on average.
2019-12-08 16:14:02 +01:00
XMRig
c3fd5835c3
Added CPU option "yield".
2019-12-03 09:04:20 +07:00
SChernykh
84d7eb05f3
RandomX fixes
...
Intel JCC erratum fix and various other improvements, see more here: https://www.phoronix.com/scan.php?page=article&item=intel-jcc-microcode&num=1
2019-12-01 08:46:35 +01:00
XMRig
23ebcfb2db
Display backend for shares.
2019-10-29 15:43:13 +07:00
XMRig
0e0a26f644
Fixed Linux build.
2019-10-07 13:37:12 +07:00
XMRig
68d77b02d7
Added initial memory pool support.
2019-10-07 12:36:40 +07:00
XMRig
d5af5cf8f8
Fixed exit.
2019-10-05 11:24:22 +07:00
XMRig
95daab4bc0
Implemented VM mode for OpenCL RandomX.
2019-09-12 00:01:03 +07:00
XMRig
eef5d91606
Implemented verification on CPU.
2019-09-01 19:31:25 +07:00
XMRig
b541960611
Implemented cn0 kernel launch.
2019-09-01 07:05:49 +07:00
XMRig
71329718e4
Merge branch 'dev' into feature-opencl
2019-08-30 16:47:51 +07:00
SChernykh
d5e7ab4985
Fixed race condition in RandomX thread init
...
Thread could deadlock if it started before dataset struct was allocated.
2019-08-28 18:28:04 +02:00
XMRig
aa294ff066
Initial stub for setting job in OpenCL backend.
2019-08-28 02:05:19 +07:00
XMRig
82696000e4
Removed cn/wow algorithm (coin forked to rx/wow).
2019-08-27 09:34:08 +07:00
XMRig
ec1839d580
Restored OclCache.
2019-08-27 06:31:40 +07:00
XMRig
0c25424a3e
Added generic Argon2 implementation (conflicts with RandomX).
2019-08-16 00:31:29 +07:00
XMRig
5896b27bf3
Added L2 information to Algorithm.
2019-08-08 14:03:52 +07:00
XMRig
84ff8af4bd
Optimized RandomX initialization and switching.
2019-08-01 20:37:05 +07:00
XMRig
828fc065b0
Added support for allocate RandomX dataset on each NUMA node.
2019-07-27 19:41:59 +07:00
XMRig
d4772cbd5d
Fixed dataset initialization speed on Linux if thread affinity was used.
2019-07-25 19:11:07 +07:00