Commit Graph

156 Commits

Author SHA1 Message Date
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
SChernykh
9405d8ed92 Activate MSR mod only for RandomX algorithms 2020-03-09 19:10:26 +01:00
XMRig
16a83a9f61
Move files. 2020-03-09 01:22:34 +07:00
kevacoin
0528ccd01e Added Keva. 2020-03-04 16:23:33 -08:00
XMRig
030d6e5962
Update year. 2020-02-01 20:24:00 +07:00
SChernykh
4571899664 Removed MSR mod for Bulldozer
It turned out to be useless: https://www.reddit.com/r/MoneroMining/comments/et7s7w/psa_amd_opteronfxa6a8a10_owners_needed_to_test/
2020-01-27 09:39:39 +01:00
SChernykh
f80177cbd3 Optimizations for AMD Bulldozer
- Added support for XOP instructions
- Enabled Ryzen code for Bulldozer because it's faster there too
2020-01-15 13:04:26 +01:00
SChernykh
665e43fecc MSR preset for Bulldozer CPUs
Also fixed verbose output for MSR presets with masks.
2020-01-14 19:27:34 +01:00
SChernykh
869209389e Update MSR preset for Intel
As per https://github.com/xmrig/xmrig/issues/1433#issuecomment-572126184
2020-01-09 08:10:36 +01:00
SChernykh
c9f90e6770 Refactor Ryzen fix to fix compilation issues 2019-12-31 11:55:07 +02:00
XMRig
ac4086b273
Fix build. 2019-12-28 02:00:08 +07:00
XMRig
f00769f758
Code style cleanup. 2019-12-28 01:45:54 +07:00
SChernykh
3a2941b719 Fix for 1st-gen Ryzen crashes 2019-12-27 12:40:38 +02:00
XMRig
dbb721cb5e
Removed "rx/v" algorithm. 2019-12-26 22:34:19 +07:00
XMRig
22eca8e0d5
Fixed memory allocation checks. 2019-12-25 04:39:21 +07:00
XMRig
449617d717
Allow use old CUDA plugin. 2019-12-20 21:10:13 +07:00
XMRig
2911bb3a81
Fix OpenCL. 2019-12-20 04:05:09 +07:00
Tony Butler
45412a2ace Add MoneroV (rx/v) algorithm [based on MoneroOcean/master] 2019-12-18 16:17:22 -07:00
XMRig
f4cedd7b63
Fixed MsrItem serialization. 2019-12-19 03:49:32 +07:00
XMRig
3e3d34b3ce
Allow number value for "wrmsr" option only for Intel. 2019-12-19 03:28:05 +07:00
XMRig
12fb27e2cf
Use MsrItem::kNoMask. 2019-12-19 03:20:48 +07:00
SChernykh
59e8fdb9ed Added bit masks for MSR registers 2019-12-17 23:55:22 +01:00
XMRig
5142a406b0
Less error prone log interface. 2019-12-18 02:20:31 +07:00
XMRig
f8865b1498
Added "verbose" option. 2019-12-17 21:46:11 +07:00
XMRig
969821296f
Merge branch 'feature-custom-msr' into dev 2019-12-17 16:53:28 +07:00
XMRig
a877b1d269
Added save/restore MSR registers on Linux. 2019-12-17 16:17:11 +07:00
XMRig
9cea70b77c
Rename Rx_windows.cpp to Rx_win.cpp. 2019-12-17 15:16:37 +07:00
XMRig
d2d501c821
Added RandomX option "rdmsr" and save/restore MSR registers on Windows. 2019-12-17 14:45:01 +07:00
XMRig
8bef964f68
Added support for write custom MSR. 2019-12-17 02:27:07 +07:00
SChernykh
4da37baf8c RandomSFX (Safex Cash variant) support 2019-12-16 19:36:29 +01:00
XMRig
1d4c8dda96
#1423 Implemented driver reuse. 2019-12-16 03:41:58 +07:00
XMRig
b633b593ad
Strict wrmsr error handling. 2019-12-16 02:45:07 +07:00
XMRig
8dbb83f99b
Revert changes. 2019-12-16 02:17:57 +07:00
SChernykh
2e001677df Use unique service name for WinRing0 driver
To avoid error 1072
2019-12-15 19:28:14 +01:00
XMRig
6adba6dad4
Removed unnecessary check. 2019-12-15 12:02:45 +07:00
XMRig
fb5b873524
Added missing tag. 2019-12-15 01:52:20 +07:00
XMRig
5d0fd2dc8e
Unified Linux/Windows MSR log messages. 2019-12-15 01:32:41 +07:00
SChernykh
222fcfae87 Fixed thread count for MSR mod 2019-12-14 16:30:46 +01:00
SChernykh
2e6523aa10 MSR mod for Windows 2019-12-14 16:04:37 +01:00
XMRig
7ff465053b
Added additional MSR registers for Ryzen CPUs. 2019-12-12 14:21:15 +07:00
XMRig
1c58e28124
Don't build Rx_linux.cpp on ARM. 2019-12-11 21:20:37 +07:00
XMRig
96ee721d21
Fixed MSR. 2019-12-11 20:09:25 +07:00
XMRig
de7ed2b968
Added support for AMD specific MSR registers. 2019-12-11 19:37:13 +07:00
XMRig
4fb3086c1c
Fixed --randomx-wrmsr option without parameters. 2019-12-11 19:16:01 +07:00
XMRig
96cfdda9a1
Added RandomX option "wrmsr" with command line equivalent --randomx-wrmsr=N. 2019-12-10 23:57:29 +07:00
SChernykh
9bc13813ba Fixed assembly selection for RandomX when it's on Auto 2019-12-09 18:59:49 +01:00
XMRig
3edaebb4cf
Move "1gb-pages" option to "randomx" object. 2019-12-09 21:42:40 +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
e9e747f0d1
#1385 "max-threads-hint" option now also limit RandomX dataset initialization threads. 2019-12-07 22:18:06 +07:00
XMRig
3a75f39935
#1386 Added priority for RandomX dataset initialization threads. 2019-12-06 22:17:04 +07:00
SChernykh
1fbbae1e4a Added 1GB hugepages support for Linux 2019-12-05 19:39:47 +01:00
XMRig
8791261220
Use total memory (Linux report low free memory) and fix typo. 2019-11-29 13:43:26 +07:00
XMRig
c529770d38
Use uv_get_free_memory. 2019-11-29 13:12:36 +07:00
XMRig
64fb4f265b
Added option "mode" (or --randomx-mode) for RandomX. 2019-11-29 13:00:17 +07:00
XMRig
48545c5916 Fixed compile warnings. 2019-10-22 13:09:58 +07:00
SChernykh
2b29a4c20f RandomX (Arqma variant) support 2019-10-08 19:00:19 +02:00
XMRig
2dc4ceae29 Added class NUMAMemoryPool. 2019-10-07 20:39:04 +07:00
XMRig
0a1836e5a8 Fixed exit condition for RxQueue. 2019-10-06 11:19:32 +07:00
XMRig
59b62dcb77 Added class RxQueue, class Rx now thin static wrapper on top of RxQueue. 2019-10-06 07:47:41 +07:00
XMRig
d5af5cf8f8 Fixed exit. 2019-10-05 11:24:22 +07:00
XMRig
05928ccc25 Implemented RxNUMAStorage. 2019-10-05 08:24:28 +07:00
XMRig
207dae418d Added RxNUMAStorage stub. 2019-10-04 18:43:03 +07:00
XMRig
7508411faf Extended "numa" option for RandomX. 2019-10-04 10:49:55 +07:00
XMRig
f34031a984 Added interface IRxStorage and RxBasicStorage class. 2019-10-04 08:45:13 +07:00
XMRig
d1aadc2e3b More cleanup. 2019-10-03 07:45:25 +07:00
XMRig
6d8cf91568 Added class RxSeed. 2019-10-03 04:48:36 +07:00
XMRig
42fd146c2b #1212 Fixed RandomX dataset re-initialization. 2019-10-02 06:35:49 +07:00
XMRig
34468782cd Merge branch 'dev' into evo 2019-10-01 07:26:18 +07:00
XMRig
3badeb56a0 Fixed support for systems where total count of NUMA nodes not equal usable count. 2019-10-01 07:19:13 +07:00
SChernykh
38f4f4f695 Added JIT compiler for RandomX on ARMv8 2019-09-21 10:10:52 +02:00
XMRig
8a69c23646 Use RxAlgo:base instead of switch. 2019-09-14 12:00:33 +07:00
XMRig
6f5d175d12 Fix compile warning, mostly struct/class inconsistency. 2019-09-13 18:21:05 +07:00
XMRig
7f0891a0f0 Merge branch 'dev' into feature-opencl 2019-09-12 13:16:42 +07:00
XMRig
04a4a6cadc Implemented OpenCL JIT mode. 2019-09-12 13:10:50 +07:00
XMRig
db79911c4b Fixed invalid shares. 2019-09-12 10:00:12 +07:00
XMRig
95daab4bc0 Implemented VM mode for OpenCL RandomX. 2019-09-12 00:01:03 +07:00
XMRig
4c90f9960e OpenCL RandomX WIP 2019-09-11 15:48:02 +07:00
SChernykh
edb2c98ad7 Fix for 272 initialization threads 2019-09-09 08:15:46 +02:00
XMRig
27e862da62 Added OpenCL source. 2019-08-25 23:06:04 +07:00
XMRig
2a5110aa04 Start mining threads only after RandomX dataset initialization. 2019-08-25 20:28:15 +07:00
XMRig
0c25424a3e Added generic Argon2 implementation (conflicts with RandomX). 2019-08-16 00:31:29 +07:00
XMRig
b41fd120d2 Uniform signature for hugePages method. 2019-08-10 13:14:20 +07:00
XMRig
feda02bf50 Disable HW AES for RandomX on ARM. 2019-08-09 15:36:34 +07:00
XMRig
4afc987111 Fix for previous commit. 2019-08-05 18:20:56 +07:00
XMRig
3543abcc3c Fixed crash and added error message about seed_hash field. 2019-08-05 17:48:12 +07:00
XMRig
044fbd7e82 Changed init signature. 2019-08-05 16:00:48 +07:00
XMRig
f7ea4b6dbd Always stop mining threads in RandomX dataset change upcoming. 2019-08-02 16:44:55 +07:00
XMRig
84ff8af4bd Optimized RandomX initialization and switching. 2019-08-01 20:37:05 +07:00
XMRig
962f0cdd8e Use std::thread and std:mutex instead of uv_thread_t and uv_mutex_t. 2019-07-30 21:25:27 +07:00
XMRig
2fb88f10b8 Fix hwloc deprecation warnings. 2019-07-28 10:15:20 +07:00
XMRig
d10527036e Added "randomx" object to config. 2019-07-28 07:46:59 +07:00
XMRig
9df9275120 Return correct hugePages count if NUMA mode used. 2019-07-27 21:31:11 +07:00
XMRig
828fc065b0 Added support for allocate RandomX dataset on each NUMA node. 2019-07-27 19:41:59 +07:00
XMRig
35d9c755e0 Special case for Intel CPUs with 1 MB L2 cache per core. 2019-07-26 16:22:44 +07:00
XMRig
a5e8b31d55 Fixed crash. 2019-07-25 19:27:12 +07:00
XMRig
d4772cbd5d Fixed dataset initialization speed on Linux if thread affinity was used. 2019-07-25 19:11:07 +07:00
XMRig
4a32494060 Added option "init-threads". 2019-07-25 12:20:59 +07:00