Commit Graph

362 Commits

Author SHA1 Message Date
xmrig
0656390ce1 Merge pull request #1890 from SChernykh/dev
Added argon2/chukwav2 algorithm
2020-10-13 14:54:34 +07:00
SChernykh
f8a0aa06c8 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
xmrig
e2eb9f896b Merge pull request #1887 from SChernykh/dev
Fixed total hashrate update
2020-10-10 22:07:37 +07:00
SChernykh
1f489ee378 Fixed total hashrate update
Don't add data points where one of the threads doesn't have hashrate data yet.
2020-10-10 17:00:30 +02:00
cohcho
e29ffe7668 CPU: use raw counter 2020-10-10 13:28:14 +00:00
SChernykh
d21a911dd0 Fix HashrateInterpolator::addDataPoint 2020-10-10 11:22:19 +02:00
SChernykh
2af99c3d83 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
f76d355d41 Worker: specify default value 2020-10-09 14:28:36 +00:00
SChernykh
25d4142e39 Change to fetch_xor to make code simpler 2020-10-09 11:50:11 +02:00
SChernykh
151e1f7d77 Fix possible race condition in hashrate counting code
Use single atomic operation to switch between data points.
2020-10-09 10:29:18 +02:00
xmrig
10e3b91c41 Merge pull request #1876 from SChernykh/dev
RandomX: added `huge-pages-jit` config parameter
2020-10-07 22:48:57 +07:00
SChernykh
1865d31d0c RandomX: added huge-pages-jit config parameter
Set to false by default, gives 0.2% boost on Ryzen 7 3700X with 16 threads, but hashrate might be unstable on Ryzen between launches. Use with caution.
2020-10-07 17:42:55 +02:00
cohcho
e2184317af 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
d5dd4ce89f RandomX: removed rx/loki
Loki forks to PoS on October 9th.
2020-10-02 17:02:52 +02:00
SChernykh
c07ee768ed KawPow: fixed OpenCL memory leak 2020-09-25 10:53:24 +02:00
SChernykh
e94b92b2aa Fixed Cryptonight OpenCL for AMD 20.7.2 drivers
Vega 64 + Windows 10 + AMD 20.7.2 drivers were broken on Cryptonight algorithms.
2020-09-19 23:12:05 +02:00
SChernykh
1e38eb3f4f RandomX refactoring, moved more stuff to compile time
Small x86 JIT compiler speedup.
2020-09-18 20:51:25 +02:00
cohcho
3068b7adbe reserve at most 1 bit for wrapping detection 2020-09-13 18:42:16 +00:00
xmrig
09bffdfb47 Merge pull request #1827 from cohcho/nonce_iteration_without_tests
nonce iteration optimization
2020-09-10 19:33:23 +07:00
SChernykh
9a53285c5f RandomX: added SSE4.1-optimized Blake2b
+0.15% on `rx/0`
+0.3% on `rx/wow`
2020-09-10 14:28:40 +02:00
cohcho
b183af0953 fix nonce mask 2020-09-09 19:39:52 +00:00
cohcho
5cf1494401 nonce iteration optimization
efficient and correct nonce iteration without duplicates
2020-09-09 10:03:37 +00:00
XMRig
04f3abb4e2 Improved CUDA loader error reporting and fixed plugin load on Linux. 2020-08-23 21:30:12 +07:00
XMRig
eb9f98b8ce Better scripts/build.*.sh compatibility. 2020-08-23 15:46:56 +07:00
XMRig
1ca51c84e8 Fixed tag in OclLib. 2020-08-21 08:21:51 +07:00
XMRig
5850a2aa26 Disable GPU backends with static build on Linux. 2020-08-20 15:02:31 +07:00
XMRig
25d8c2f2f3 Always use all available threads on ARM. 2020-08-16 17:36:38 +07:00
XMRig
0f7ae874e0 Added ARM CPU name detection based on lscpu code. 2020-08-16 15:47:29 +07:00
SChernykh
3d78f30171 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
XMRig
b2b54cbe82 Cleanup 2020-07-22 21:27:40 +07:00
SChernykh
3180e242a9 Cryptonight OpenCL: fix for long input data 2020-07-16 10:39:32 +02:00
SChernykh
5af50b854c RandomX: added cache QoS support
False by default. If set to true, all non-mining CPU cores will not have access to L3 cache.
2020-07-13 17:23:18 +02:00
xmrig
7a8fc700a2 Merge pull request #1763 from SChernykh/dev
KawPow: fixed more duplicate share errors
2020-07-04 02:37:03 +07:00
SChernykh
bb87e9008c KawPow: fixed more duplicate share errors 2020-07-03 21:33:44 +02:00
XMRig
abdc3effb6 #1754 Fixed GPU health readings for pre Vega GPUs. 2020-07-03 21:14:21 +07:00
SChernykh
119a065424 Fix typo 2020-07-02 14:29:52 +02:00
SChernykh
d2d8fd48b9 KawPow: fixed rare duplicate share errors 2020-07-02 11:36:31 +02:00
SChernykh
aa48c64a05 Fixed DAG initialization on slower AMD GPUs
Display driver could reset on GPUs with screen connected.
2020-06-30 16:53:56 +02:00
XMRig
b439b9cfca Merge branch 'dev' of https://github.com/SChernykh/xmrig into dev 2020-06-23 19:12:34 +07:00
SChernykh
cf1ee9b3d4 Fixed AstroBWT OpenCL compilation on some systems 2020-06-23 13:55:43 +02:00
XMRig
7c624feb3f #1742 Fixed crash when use HTTP API. 2020-06-23 16:17:06 +07:00
XMRig
c166623419 Merge branch 'dev' into evo 2020-06-18 11:18:30 +07:00
XMRig
4a2940951c Fixed AMD GPU health readings on Linux. 2020-06-18 11:16:26 +07:00
SChernykh
5730b7fd27 Show GPU # when compute error happens 2020-06-11 19:48:53 +02:00
SChernykh
3292679e66 KawPow: fixed crash on old CPUs
- Use `popcnt` instruction only when it's supported
2020-06-10 21:49:43 +02:00
XMRig
e72a3ccb52 Merge branch 'dev' into evo 2020-06-10 00:58:29 +07:00
SChernykh
e6f454f37d Fixed detection of AVX2/AVX512 2020-06-09 17:47:23 +02:00
SChernykh
2ab164caf2 Conceal (CCX) support 2020-06-07 01:01:45 +02:00
XMRig
a5442dbcb2 Merge branch 'evo' of https://github.com/SChernykh/xmrig into pr1713 2020-06-05 19:17:01 +07:00
XMRig
21381c297a Add tag to error message. 2020-06-05 19:02:32 +07:00