Commit Graph
132 Commits
Author SHA1 Message Date
cohcho 7b98814d02 uv: fix performance issue
unix implementation of uv_async_t has been wasting cpu cycles for nothing since 1.29.0 release
implement efficient callback scheduling for linux
2020-10-12 04:09:09 +00: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
SChernykh 6a25fa75c7 RandomX: allocate 2 MB pages for generated code, if possible
+0.2% boost on Ryzen 7 3700X
2020-10-07 10:35:10 +02:00
cohcho e6e4519d96 RxVm: fix randomx_create_vm call
randomx_create_vm requires either cache or dataset, but not both
2020-10-06 19:45:43 +00:00
xmrig 3f85d142d9 Merge pull request #1864 from cohcho/soft_aes_optimization2
soft_aes: fix previous optimization
2020-10-05 12:20:41 +07:00
cohcho a5f4548b27 soft_aes: fix previous optimization
Previously removed unrolled variant is faster on some CPUs
Some CPUs are faster with added unrolled variant
The best variant depends on number of threads on some CPUs
2020-10-04 14:47:58 +00:00
SChernykh d5dd4ce89f RandomX: removed rx/loki
Loki forks to PoS on October 9th.
2020-10-02 17:02:52 +02:00
XMRig 92835b608f Renamed WITH_SSE to WITH_SSE4_1 and make it work on all platforms. 2020-10-01 11:00:08 +07:00
SChernykh 3ef7c9b5e6 RandomX: returned old soft AES impl and auto-select between the two 2020-09-15 20:48:27 +02:00
SChernykh f126fa112e RandomX: added performance profiler (for developers)
Also optimized Blake2b SSE4.1 code size to avoid code cache pollution.
2020-09-12 23:07:52 +02: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
SChernykh f26d4274fc RandomX: added parameter for scratchpad prefetch mode
`scratchpad_prefetch_mode` can have 4 values:
0: off
1: use `prefetcht0` instruction (default, same as previous XMRig versions)
2: use `prefetchnta` instruction (faster on Coffee Lake and a few other CPUs)
3: use `mov` instruction
2020-09-04 16:16:07 +02:00
XMRig 42576e91dc Fix compile warning. 2020-08-23 14:22:08 +07:00
XMRig d3ddb76962 Fixed RandomX cache initialization if 1GB pages fails to allocate on a first NUMA node. 2020-08-01 12:30:02 +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
XMRig da244e7acf Fixed build without MSR support. 2020-07-16 05:15:35 +07:00
SChernykh e8dbb8ca9f Removed cache QoS warning at exit on unsupported CPUs 2020-07-13 20:43:49 +02:00
SChernykh a3f4d91ad7 Cache QoS: fix for seting MSR 2020-07-13 20:30:44 +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
SChernykh 038629c093 Print error message when MSR mod fails
Make sure user knows that hashrate is worse than it could be.
2020-06-26 19:54:06 +02:00
XMRig 306dfe8d6a Use long tags. 2020-05-28 20:32:41 +07:00
XMRig b81a80c26e Merge branch 'dev' 2020-05-23 11:08:53 +07:00
Bohan Yu 134a6f2321 Change cases of Windows include file and link library
When cross-compiling on case sensitive systems, such as Linux, there will be an Error.
2020-05-13 21:00:52 +08:00
XMRig 2771cf3582 Add 3rdparty prefix to all rapidjson includes. 2020-04-29 14:55:04 +07:00
SChernykh c43a848415 Fix code style 2020-04-09 14:31:42 +02:00
SChernykh fe96036607 RandomX JIT refactoring
- Smaller memory footprint
- A bit faster overall
2020-04-09 14:24:54 +02:00
SChernykh 5449dfbc91 Use node number instead of affinity 2020-04-07 18:46:22 +02:00
SChernykh e5d43089df 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 ea14d937f8 Activate MSR mod only for RandomX algorithms 2020-03-09 19:10:26 +01:00
XMRig ed44b0c009 Move files. 2020-03-09 01:22:34 +07:00
kevacoin b02cc24ae1 Added Keva. 2020-03-04 16:23:33 -08:00
XMRig 5eed25d4aa Update year. 2020-02-01 20:24:00 +07:00
SChernykh fda20ff798 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 efdbda40f0 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 aac5ce39a4 MSR preset for Bulldozer CPUs
Also fixed verbose output for MSR presets with masks.
2020-01-14 19:27:34 +01:00
SChernykh b4b2a19b33 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 07e36a6cf0 Refactor Ryzen fix to fix compilation issues 2019-12-31 11:55:07 +02:00
XMRig 82d4a1b3c9 Fix build. 2019-12-28 02:00:08 +07:00
XMRig cbcf033ebe Code style cleanup. 2019-12-28 01:45:54 +07:00
SChernykh a1f223dcb0 Fix for 1st-gen Ryzen crashes 2019-12-27 12:40:38 +02:00
XMRig a46c4f02e8 Removed "rx/v" algorithm. 2019-12-26 22:34:19 +07:00
XMRig e7c4b1d0c2 Fixed memory allocation checks. 2019-12-25 04:39:21 +07:00
XMRig a5d13c4e64 Allow use old CUDA plugin. 2019-12-20 21:10:13 +07:00
XMRig f2f610f0f5 Fix OpenCL. 2019-12-20 04:05:09 +07:00
Tony Butler 4c4b29d45c Add MoneroV (rx/v) algorithm [based on MoneroOcean/master] 2019-12-18 16:17:22 -07:00
XMRig 66a4586559 Fixed MsrItem serialization. 2019-12-19 03:49:32 +07:00
XMRig 80688c52ec Allow number value for "wrmsr" option only for Intel. 2019-12-19 03:28:05 +07:00
XMRig ddcc9852f7 Use MsrItem::kNoMask. 2019-12-19 03:20:48 +07:00
SChernykh fc3c995ec2 Added bit masks for MSR registers 2019-12-17 23:55:22 +01:00