Commit Graph

556 Commits

Author SHA1 Message Date
SChernykh
b3d14f51b9 Added support for Uplexa (cn/upx2 algorithm) 2021-04-17 14:53:42 +02:00
SChernykh
97525616d6 Fixed cn-heavy for GCC-8 2021-04-04 10:18:27 +02:00
SChernykh
0b8f89890c Fixed compilation for ARM 2021-04-03 17:50:52 +02:00
xmrig
28b9f07a3c Merge pull request #2228 from esrrhs/dev
remove useless v4_random_math_init if algo is not cn/r
2021-04-02 15:49:53 +07:00
SChernykh
2ef064da60 Don't use RandomX JIT if WITH_ASM=OFF
Because RandomX JIT use asm code
2021-04-02 10:05:46 +02:00
esrrhs
43a586ce7a remove useless v4_random_math_init if algo is not cn/r 2021-04-02 14:59:09 +08:00
SChernykh
f6232d0753 Optimize cn-heavy in GCC builds
+0.7% in GCC builds, but GCC is still slower than MSVC on cn-heavy.
2021-03-28 16:12:09 +02:00
SChernykh
f4a43bb4b0 Optimized cn-heavy
- Remove unnecessary type conversion when doing `idx0 = d ^ q;`
- Saves 1 CPU cycle in the main loop
- 0.2% speedup on Ryzen 5 5600X, results on other CPUs may vary
2021-03-27 22:21:01 +01:00
SChernykh
4b270047fe Fix vld1q_u8_x4 compilation error with GCC 10.2 2021-03-12 16:26:02 +01:00
TheGreatMcPain
97908e081f Update sse2neon.h to the latest master. Fixes build on armv7.
A few days after this header was introduced. Upstream updated it with
armv7 versions of `_mm_aesenc_si128` which allows xmrig to build
on armv7.
2021-03-02 01:33:25 -06:00
SChernykh
83ccef753a Fixed crash when GPU mining cn-heavy on Zen3 system 2021-02-18 14:49:37 +01:00
SChernykh
f36b4e36b1 Cryptonight: add prefetching to interleaved mode 2021-02-07 23:29:54 +01:00
SChernykh
3e9755c8c8 Optimized cn-heavy for Zen3
- Uses scratchpad interleaving to access only the closest L3 slice from each CPU core.
- Also activates MSR mod for cn-heavy because CPU prefetchers get confused with interleaving
- 7-8% speedup on Zen3
2021-02-07 22:05:11 +01:00
SChernykh
3f8732e593 Fix compile error in Termux 2021-02-03 19:05:05 +01:00
XMRig
465dc7edad Fixed macOS build and compile warning. 2021-02-02 13:53:45 +07:00
SChernykh
771fb40eca Update jit_compiler_a64.cpp 2021-02-01 22:52:02 +01:00
SChernykh
e92767eed5 ARM JIT: added missing cache flush 2021-02-01 22:42:35 +01:00
SChernykh
826e540f15 Fixed code allocation for ARM 2021-02-01 22:36:11 +01:00
xmrig
8a40921ab9 Merge pull request #2076 from xmrig/feature-flexible-hugepages
Added support for flexible huge page sizes on Linux.
2021-02-02 04:07:41 +07:00
SChernykh
e3828a13f9 Fixed crashes on ARM 2021-02-01 17:07:45 +01:00
XMRig
c92f9df8ab Added support for flexible huge page sizes on Linux. 2021-01-31 23:38:57 +07:00
xmrig
0da777bfe3 Merge pull request #2058 from SChernykh/dev
RandomX JIT x86: remove unnecessary instructions
2021-01-24 13:59:56 +07:00
SChernykh
787aad0d62 RandomX JIT x86: remove unnecessary instructions
Adopted from https://github.com/tevador/RandomX/pull/201
2021-01-23 22:28:50 +01:00
XMRig
0444103fba Fixed Cache QoS restore on exit where it not supported. 2021-01-24 02:23:27 +07:00
XMRig
61d5f1aacb Added RxMsr class. 2021-01-23 23:23:39 +07:00
XMRig
8a64a827f7 Move Ryzen related fixes to RxFix class. 2021-01-23 00:27:56 +07:00
XMRig
0273ea7140 Added new class Msr. 2021-01-22 23:50:25 +07:00
XMRig
5c7d9447ed Merge branch 'master' into feature-msr2 2021-01-22 16:55:57 +07:00
XMRig
647af97d75 #2043 Fix compile warning. 2021-01-17 17:48:35 +07:00
Richard Mitsuk Lavitt
a8cbc72fd1 fixed grammar in a couple of awkward error messages 2021-01-15 14:33:38 -06:00
SChernykh
fac3902ae1 RandomX x86 JIT: remove redundant CFROUND 2021-01-07 16:20:00 +01:00
SChernykh
90760db1c9 Fix GCC warning 2020-12-19 19:50:52 +01:00
SChernykh
7d92d57059 Another dataset AVX2 init speedup (+3.8% faster on Zen3) 2020-12-19 19:46:31 +01:00
SChernykh
0319b5b622 Added config option for AVX2 dataset init
-1 = Auto detect
0 = Always disabled
1 = Enabled if AVX2 is supported
2020-12-19 16:18:49 +01:00
SChernykh
eae3a62345 Auto-detect the fastest code for dataset init 2020-12-19 13:59:28 +01:00
SChernykh
aaf1ed1c99 Dataset initialization with AVX2 (WIP) 2020-12-18 14:53:54 +01:00
XMRig
f169227ebd Huge pages not supported by macOS ARM. 2020-12-16 01:59:20 +07:00
XMRig
e706936763 Reduce JIT memory for ARM. 2020-12-15 02:52:38 +07:00
SChernykh
b89d432b7d Fix alignment for Linux 2020-12-14 18:32:25 +01:00
SChernykh
e3dc83e383 Fix: secure JIT and huge pages are incompatible on Windows 2020-12-14 18:22:58 +01:00
XMRig
3b39725737 Fixed JIT on macOS. 2020-12-12 22:40:48 +07:00
XMRig
e7a26413a8 Fixed macOS build. 2020-12-12 22:15:15 +07:00
XMRig
ef691ee323 Alternative secure JIT for macOS. 2020-12-12 21:32:36 +07:00
XMRig
25a9fb2ab4 Fixed secure JIT on Linux and code cleanup. 2020-12-12 19:18:47 +07:00
XMRig
df3831d6f6 Remove duplicated code. 2020-12-12 12:39:11 +07:00
XMRig
84443a4e8b Added generic secure JIT support for RandomX. 2020-12-11 23:17:54 +07:00
SChernykh
83d152f557 More static analysis fixes 2020-12-08 16:05:58 +01:00
SChernykh
d5f84a813d Fixed errors found by static analysis 2020-12-08 12:16:59 +01:00
XMRig
4569eea6f6 Move Profiler and more cleanup. 2020-12-04 09:23:40 +07:00
XMRig
c8ebffd012 Added Cvt class. 2020-12-02 16:31:45 +07:00