cohcho
6f29a548e0
RxVM: fix compilation error
2020-10-07 09:27:25 +00: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
xmrig
e99806f109
Merge pull request #1870 from cohcho/fix_miner_state_machine
...
Miner: fix state machine
2020-10-07 12:25:17 +07: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
cohcho
6627c1472e
Nonce: refactor static init
2020-10-06 13:34:19 +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
d498274ca9
RandomX: optimized soft AES code
...
Unrolled loop was 5-10% slower depending on CPU.
2020-09-29 21:22:11 +02:00
xmrig
c0c0e61f5e
Merge pull request #1858 from SChernykh/dev
...
RandomX: removed duplicate constants in Blake2b
2020-09-27 16:51:03 +07:00
SChernykh
fbb8e955aa
RandomX: removed duplicate constatns in Blake2b
2020-09-27 11:50:08 +02:00
xmrig
a860d88378
Merge pull request #1857 from SChernykh/dev
...
RandomX: isolate SSE4.1 code to fix crashes on old CPUs
2020-09-27 16:47:56 +07:00
SChernykh
36592c2fe0
RandomX: isolate SSE4.1 code to fix crashes on old CPUs
2020-09-27 11:46:32 +02:00
cohcho
37a47652b9
soft_aes: fix previous optimization
...
the best order of hash/fill/prefetch depends on hw/soft AES
only hw AES is faster after previous optimization
2020-09-25 15:26:19 +00:00
SChernykh
c4a083aa8c
Fix for ARM compilation
2020-09-23 11:44:08 +02:00
SChernykh
b8d604bec4
RandomX improved performance of GCC compiled binaries
...
JIT compilator was slower compared to MSVC compiled binary. Up to +0.1% speedup on rx/wow in Linux.
2020-09-22 13:48:11 +02:00
SChernykh
60faba76e8
RandomX: AES improvements
...
- A bit faster hardware AES code when compiled with MSVC
- More reliable software AES benchmark
2020-09-21 17:51:08 +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
SChernykh
3ef7c9b5e6
RandomX: returned old soft AES impl and auto-select between the two
2020-09-15 20:48:27 +02:00
cohcho
3068b7adbe
reserve at most 1 bit for wrapping detection
2020-09-13 18:42:16 +00: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
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
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
e254283089
Fix compile warnings.
2020-08-24 10:04:46 +07:00
XMRig
42576e91dc
Fix compile warning.
2020-08-23 14:22:08 +07:00
XMRig
3baf926bb7
Fix compile warning
2020-08-17 06:08:14 +07:00
XMRig
e5e5b48216
Fixed compile warning and updated build.uv.sh.
2020-08-16 16:03:27 +07:00
SChernykh
07d9abc90e
RandomX JIT: optimized address mask calculation
2020-08-12 16:45:16 +02: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
SChernykh
5aae95eddc
Force 2 MB pages size in allocateLargePagesMemory() on Linux
2020-07-31 09:55:49 +02:00
XMRig
b2b54cbe82
Cleanup
2020-07-22 21:27:40 +07:00
SChernykh
51370682f3
Fixed RandomX initialization for VS debug builds
2020-07-21 10:10:07 +02:00
XMRig
3526c1335d
Added command line options --cache-qos (--randomx-cache-qos) and --argon2-impl (--cpu-argon2-impl).
2020-07-20 09:17:59 +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
Jim Huang
3343e373e8
Adopt new SSE2NEON and reduce ARM-specific changes
...
This patch updated SSE2NEON [1], which contains more functions
provided by Intel intrinsics, only implemented with NEON-based
counterparts to produce the exact semantics of the intrinsics.
Consequently, ARM-specific changes against CryptoNight_arm can
be reduced as well.
[1] https://github.com/DLTcollab/sse2neon/
2020-07-11 01:55:11 +08:00
SChernykh
08d71d5144
RandomX: tweaked Ryzen code
...
Very small speedup
2020-07-05 16:06:59 +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
SChernykh
683ca745a8
KawPow: optimized CPU share verification
...
- 2 times faster CPU share verification (11 -> 5 ms)
- 1.5 times faster light cache initialization
2020-06-26 12:31:26 +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
a4032b9f4f
Merge branch 'dev' into evo
2020-06-07 21:25:31 +07:00
SChernykh
63dd56831e
Fixed GCC 10.1 issues
...
- Fixed uninitialized `state->x` warning
- Fixed broken code with `-O3` or `-Ofast`
2020-06-07 16:23:17 +02:00
XMRig
6fde2cc703
Merge branch 'dev' into evo
2020-06-07 20:15:12 +07:00