XMRig
2bf5ffb2df
Class Mem replaced to VirtualMemory.
2019-07-17 04:57:58 +07:00
XMRig
20313cbc56
Implemented unified cryptonight and RandomX scratchpad memory.
2019-07-17 04:33:11 +07:00
XMRig
27f3008d79
Added initial support for new style threads launch method.
2019-07-16 22:10:50 +07:00
XMRig
dc87ef6062
Removed xmrig.h.
2019-07-13 19:10:17 +07:00
XMRig
6f27037f07
Added new nonce allocation method for dynamic/variable threads.
2019-07-11 16:15:51 +07:00
XMRig
8e2219b7c4
Fixed RandomX VM creation in some cases.
2019-07-10 10:26:10 +07:00
XMRig
270d3ba6a2
Added class RxVm.
2019-07-10 10:14:33 +07:00
XMRig
f42adafee0
Added classes Rx, RxAlgo, RxCache, RxDataset.
2019-07-10 01:53:05 +07:00
XMRig
ea1149a971
Added class JobResults.
2019-07-06 15:22:19 +07:00
XMRig
9bf4c2c98f
Generate "rx" and "rx/wow" sections of CPU threads.
2019-07-06 11:31:12 +07:00
XMRig
9b14caa9f9
Merge branch 'evo' into feature-per-pool-algo
2019-07-06 10:49:31 +07:00
XMRig
8c02e20828
Quick fixes.
2019-07-02 22:57:08 +07:00
XMRig
b92807e8d8
Added support for multi-algorithm CPU threads settings.
2019-07-02 22:56:28 +07:00
SChernykh
915729bec6
Fixed MingGW compilation
2019-07-01 20:48:51 +02:00
SChernykh
6eb9d0963b
Integrated RandomX, added RandomXL (Loki)
2019-07-01 20:11:51 +02:00
XMRig
62edb2fc0a
Move CPU information classes to new location.
2019-06-29 09:51:23 +07:00
XMRig
dd875c7c37
Added class CpuConfig.
2019-06-28 22:28:40 +07:00
XMRig
66d62de681
Merge Assembly enum and Asm class.
2019-06-28 13:08:08 +07:00
XMRig
188338c493
Merge branch 'evo' into feature-per-pool-algo
2019-06-26 15:44:52 +07:00
XMRig
f7f2c09e89
Move RandowWOW to new global algorithm.
2019-06-25 08:21:40 +07:00
XMRig
2a07cf391d
Allow disable RandomX support.
2019-06-18 06:11:53 +07:00
XMRig
3d17ba6af6
Merge branch 'feature-randomx' into evo
2019-06-18 05:33:30 +07:00
XMRig
b38e432647
Moved keccak files.
2019-06-17 04:06:38 +07:00
SChernykh
d0ce60a73a
Fixed auto-config
2019-06-15 23:50:31 +02:00
XMRig
6990324681
Allow null algorithm for pools.
2019-06-16 03:50:22 +07:00
XMRig
b73c204e73
Fixed ARM mining code.
2019-06-15 00:28:16 +07:00
XMRig
1f0e3e501c
Implemented new style algorithm definitions (except ARM), removed Algo and Variant enums.
2019-06-13 22:08:52 +07:00
XMRig
d7f42d54ad
Added initial support for per pool algo option (mining code is broken).
2019-06-10 20:46:29 +07:00
XMRig
b684150336
Moved Algorithm class.
2019-06-09 16:46:44 +07:00
XMRig
d9eb700e03
Renamed macros for enable/disable algorithms.
2019-06-09 15:29:26 +07:00
XMRig
09cdddc7f6
Fixed ARM build, again.
2019-06-04 19:49:54 +07:00
XMRig
d587eebaf2
Move files.
2019-06-04 19:20:33 +07:00
XMRig
ac43cd4f9c
Added unprotectExecutableMemory for future use.
2019-06-04 15:48:32 +07:00
XMRig
f620ffe899
#1026 Probably fixed iOS build.
2019-06-03 18:40:12 +07:00
XMRig
242ece7222
Simplified cn/r code.
2019-06-02 23:38:02 +07:00
XMRig
36fcdf3f9d
Fixed ARM build.
2019-06-02 21:06:30 +07:00
XMRig
ba94c08bf5
Moved mm_malloc.h
2019-06-02 20:57:49 +07:00
XMRig
8dc586283f
Fixed Linux build.
2019-06-02 19:58:16 +07:00
XMRig
fc655d1b8d
Moved common memory primitives to new VirtualMemory class.
2019-06-02 19:43:56 +07:00
XMRig
d77e404439
Merge branch 'dev' into evo
2019-04-17 17:42:22 +07:00
XMRig
f9f7ef26b8
#1012 Added checks for _rotr.
2019-04-16 01:20:50 +07:00
XMRig
933c0d40b7
Merge branch 'dev' into evo
2019-03-27 19:20:12 +07:00
Tony Butler
29373c4226
Fix compilation with Clang 3.5 for those with limited compiler choices
...
Performance similar to gcc7+ on systems where gcc4 is the only alternative
2019-03-15 07:19:47 -06:00
XMRig
d57b41c673
Sync changes.
2019-03-14 18:42:27 +07:00
SChernykh
1bb8f77b52
Unified ASM functions signature
2019-03-13 22:00:44 +01:00
XMRig
80a7aa2497
#975 Fixed crash on Linux if used double thread.
2019-03-07 14:52:40 +07:00
XMRig
0bbeafde65
Added "cn/zls" (Zelerius) and "cn/double" (X-CASH) algorithms.
2019-03-05 18:29:13 +07:00
XMRig
21d9ad6dbc
Fix MSYS2 build.
2019-03-05 02:11:34 +07:00
SChernykh
154806ac74
CryptoNight v8 ReverseWaltz (+asm code and all test vectors)
...
Co-Authored-By: Vitalius Parubochyi <eddragonwolf@users.noreply.github.com>
2019-03-04 19:57:33 +01:00
SChernykh
123e7cf0b8
Merge remote-tracking branch 'upstream/dev' into dev
2019-03-04 17:43:22 +01:00
SChernykh
9f2d821970
Optimized cn/r asm code
...
Average over 100 block heights:
Coffee Lake +0.1%
Ryzen +0.4%
Sandy Bridge +1.5%
2019-03-04 17:39:49 +01:00
XMRig
18a9803e5e
Removed unnecessary ASM files duplicates for MSYS2.
2019-03-04 14:40:22 +07:00
XMRig
f2574c2a41
Use machine friendly test data for cn/r and cn/wow algorithms.
2019-03-04 00:42:17 +07:00
XMRig
4ebfc135e0
Build whole CryptonightR_gen.cpp only if ASM used.
2019-03-03 17:33:27 +07:00
SChernykh
d4d0c69b5d
Fixed compilation error in Linux
2019-02-24 20:23:52 +01:00
SChernykh
488cec09dd
Optimized soft AES implementations
...
cn-pico: +6.7%
cn/half: +6.2%
cn/2: +4.3%
cn-heavy: +9.1%
cn/wow, cn/r: 2.4-2.6 times faster
2019-02-24 20:04:09 +01:00
XMRig
1bd51dcf2e
Fixed msvc2015/msys2 build & code cleanup.
2019-02-19 09:15:06 +07:00
SChernykh
764767d317
Support for Cryptonight variant 4 (Monero)
2019-02-17 18:17:14 +01:00
XMRig
33a3ae59bd
Removed "cn/r" alias and fixed build without ASM.
2019-02-13 00:18:40 +07:00
XMRig
a6813ef4f5
Temporary added "cn/r" alias for test pool.
2019-02-11 05:46:43 +07:00
SChernykh
36ce144d35
Fixed ARM code
2019-02-10 16:04:24 +01:00
SChernykh
65dab8371b
Removed unused variable
2019-02-10 15:46:55 +01:00
SChernykh
c2e15e2b86
Fixed ARM compilation
2019-02-10 15:34:31 +01:00
SChernykh
e3f2c38fff
CryptonightR support for Wownero
2019-02-10 15:21:17 +01:00
XMRig
aabdff2cc9
Fixed floating-point rounding, resolved conflict between cn/2 and cn/gpu. Thanks @SChernykh.
2019-02-06 00:38:55 +07:00
XMRig
3f8898f228
Sync changes.
2019-02-05 18:47:54 +07:00
XMRig
5f113a47cf
Fix typo.
2019-02-03 20:34:24 +07:00
XMRig
f4170ec7bc
Add ARM support for cn/gpu.
2019-02-03 20:28:13 +07:00
XMRig
eac6a97a2e
Fix Linux build.
2019-02-03 14:48:11 +07:00
XMRig
bd4bc9ba4d
Added reference implementation for cn/gpu (cn-gpu).
2019-02-03 14:44:23 +07:00
XMRig
bc26d2ede6
#904 Add ASM implementation.
2019-01-21 00:32:24 +07:00
XMRig
36b01f136f
#904 Initial support for "cn-pico/trtl".
2019-01-20 19:52:44 +07:00
SChernykh
e0f5066ded
Correct FP rounding mode for cn/half
2019-01-17 00:49:48 +01:00
SChernykh
d1f551da2c
Fixed compilation error on Windows
2019-01-16 00:24:34 +01:00
SChernykh
6425c53d61
Fixed crash in patchCode() on Linux
2019-01-16 00:09:00 +01:00
XMRig
a98c475a3c
Fixed wrong ASM code alignment on macOS, thanks @SChernykh.
2019-01-15 18:18:04 +07:00
XMRig
17f28667b3
Code-style/copyright cleanup.
2019-01-15 02:15:36 +07:00
SChernykh
56cacbd5bc
Fixes for Visual Studio
2019-01-14 16:38:28 +01:00
SChernykh
8b9d5cff91
Added ASM code patching when loading
...
For CNv2 variants with different iterations and memory size.
2019-01-14 15:34:55 +01:00
XMRig
492449e9fb
#899 Add ASM implementation for cn/half.
2019-01-14 18:09:16 +07:00
XMRig
b43336582d
Rename ASM files.
2019-01-13 23:00:41 +07:00
XMRig
67863a427d
Rename "cn/xtlv9" to "cn/half".
2019-01-13 19:42:27 +07:00
XMRig
1382857c83
#899 Fixed ARM build.
2019-01-13 15:24:04 +07:00
XMRig
84c2cadc50
#899 Initial support for "cn/xtlv9" (C++ only).
2019-01-13 15:03:36 +07:00
XMRig
735180ac04
Fixed MSVC 2015 build.
2018-10-22 23:17:54 +07:00
XMRig
06a84499d7
Fixed MSYS2 build & copyright
2018-10-22 23:08:29 +07:00
SChernykh
4b91978af6
Added asm optimized code for AMD Bulldozer
2018-10-21 18:29:03 +02:00
XMRig
152c4f2f1b
#768 Fixed build error with MSVC 2015 and enabled ASM code.
2018-10-02 17:50:19 +03:00
Roboto12
fbba3d1be6
Update Asm.cpp
...
parse(value.IsBool()) should be changed to parse(value.GetBool()), otherwise if the 'asm' parameter in config has a boolean value, it will be parse as 'true' even if it's actually 'false'.
2018-09-28 19:18:37 +03:00
XMRig
0d9db273a0
Fix template declaration.
2018-09-25 09:40:09 +03:00
XMRig
1a3de05096
Added ASM code for double hash mode, thanks @SChernykh.
2018-09-25 09:25:47 +03:00
XMRig
ebcdac7d13
Fixed crash when use ASM code for MSYS2, thanks @SChernykh.
2018-09-24 20:43:31 +03:00
XMRig
c2fcf23855
Implemented "asm" option.
2018-09-24 14:19:26 +03:00
XMRig
ba65a34a01
Initial ASM wrapper.
2018-09-24 09:51:21 +03:00
XMRig
f163aad38c
Fix macOS/Clang build.
2018-09-23 20:45:10 +03:00
XMRig
dd27c42293
Initial compile with ASM.
2018-09-23 20:16:33 +03:00
SChernykh
d8ca5ef205
Cryptonight variant 2 - final version
...
Reference code: https://github.com/monero-project/monero/pull/4404
I tested it on x86 with av=1-10 and on ARM with av=1-4, self test passed.
2018-09-22 17:21:32 +02:00
XMRig
93216a51f4
Fix compile error on macOS.
2018-09-14 22:04:52 +03:00
XMRig
23914e9a9f
"xmrig::cn_uses_variant1" replaced to "xmrig::cn_base_variant".
2018-09-10 18:35:12 +03:00
XMRig
b948474d01
Small fixes.
2018-09-01 00:00:38 +03:00
XMRig
075565e6fa
Fix invalid hashes with gcc 7.1.
2018-08-31 23:32:33 +03:00
XMRig
eef4d9b102
Fixed 32 bit support.
2018-08-31 23:19:10 +03:00
XMRig
f11aad515b
Fixed gcc build.
2018-08-31 21:51:34 +03:00
SChernykh
ea1658c818
Fixed spaces
2018-08-29 20:27:17 +02:00
SChernykh
7c4b718789
Fixed performance degradation for v0 & v1
2018-08-29 20:15:08 +02:00
SChernykh
f151c7131d
Removed excess code for v0 & v1
2018-08-29 19:52:33 +02:00
SChernykh
36a562e1f1
Cryptonight variant 2 support
...
Reference code: https://github.com/monero-project/monero/pull/4218
2018-08-28 23:42:15 +02:00
XMRig
0041e9f0c1
Add new algorithms for ARM.
2018-07-10 00:29:16 +07:00
XMRig
969a26fb5d
Optimize cn-heavy/tube.
2018-07-09 22:28:53 +07:00
XMRig
dac12a122f
Add cn-heavy/tube.
2018-07-09 20:21:53 +07:00
XMRig
2702b6ffc8
Add reference hashes for cn/xao and cn/rto.
2018-07-09 16:54:39 +07:00
XMRig
25bac30862
Added "cn/xao" and "cn/rto".
2018-07-09 16:12:45 +07:00
XMRig
a8de81a51b
#714 Simplify cn-heavy/xhv.
2018-07-09 00:23:27 +07:00
XMRig
6a7a7ada2e
Fix ARM build.
2018-06-11 15:44:45 +07:00
XMRig
dab4239aca
Added support for cn-heavy/xhv.
2018-06-11 12:00:59 +07:00
XMRig
8908c2c027
Added support for "cn/msr" also known as "cn-fast".
2018-06-10 19:48:34 +07:00
XMRig
1748a7bd57
Fix double hash mode too.
2018-06-03 05:42:10 +07:00
XMRig
6cf24936df
#551 Fixed cn-heavy for ARMv8.
2018-06-03 02:56:49 +07:00
XMRig
651637d637
#446 Better fix, second variable always aligned.
2018-06-03 00:22:26 +07:00
XMRig
26ee5028e1
Use native checks instead of XMRIG_ARMv8.
2018-06-03 00:09:59 +07:00
XMRig
d900a6d9dd
#446 Fixed SIGBUS error on 32 bit ARM CPUs.
2018-06-02 04:37:12 +07:00
XMRig
a00024cf51
Fixed ARMv8 build.
2018-05-05 22:44:20 +07:00
XMRig
3df99fbced
Add Stellite (XTL) support as cn/xtl.
2018-04-27 00:28:52 +07:00
XMRig
41e8c4f887
Send supported algorithms to pool in login request.
2018-04-26 15:02:01 +07:00
XMRig
ba5f92c6dd
Added support for cn-lite/ipbc.
2018-04-25 18:31:18 +07:00
XMRig
ca149d2eed
Sync changes with proxy.
2018-04-25 14:48:32 +07:00
XMRig
274992e50d
Basic cryptonight-ipbc definition.
2018-04-21 00:19:33 +07:00
XMRig
98e7308597
Move keccak to common code.
2018-04-20 14:45:51 +07:00
XMRig
2d2e60a197
Fix x86 build.
2018-04-20 10:14:33 +07:00
XMRig
14576f599c
Fix ARMv7 build.
2018-04-19 19:44:17 +07:00
XMRig
e119f7f402
Rearrange test vectors, for catch cn-heavy bug.
2018-04-19 13:50:06 +07:00
XMRig
ad94e9a7d2
Simplify ARM implementation.
2018-04-19 11:54:11 +07:00
XMRig
9e3f2ae9f9
Added x3 x4 x5 hashing modes.
2018-04-16 15:40:37 +07:00
XMRig
6b4f2d0a91
Fixed ARM build.
2018-04-15 12:58:17 +07:00
XMRig
9125b6c251
Rewrite memory allocation.
2018-04-15 11:08:47 +07:00
XMRig
51422f4b1e
Move xmrig.h to common/xmrig.h.
2018-04-13 07:00:51 +07:00
XMRig
b13640e4a1
Fixes for build without cn-lite and cn-heavy.
2018-04-12 11:38:43 +07:00
XMRig
ccbb78d4e9
Improved performance for cryptonight v7.
2018-04-09 21:56:15 +07:00
XMRig
3a67ee6d11
Small fixes.
2018-04-06 23:32:54 +07:00
XMRig
4e8ef7c6ed
Added cryptonight-heavy support for ARM
2018-04-03 17:51:06 +07:00
XMRig
26e1b14020
Added test hashes for self test.
2018-04-03 17:19:01 +07:00
XMRig
dd6bc339bf
First working cryptonight-heavy.
2018-04-03 16:55:41 +07:00
XMRig
5c6ec587ac
Move selfTest to threads, remove legacy CryptoNight.cpp.
2018-04-03 14:51:05 +07:00
XMRig
903b243308
New style function selector.
2018-04-03 02:55:28 +07:00
XMRig
a042cbf885
Added classes IThread, CpuThread and API endpoint "GET /1/threads".
2018-04-01 22:49:21 +07:00
XMRig
aac7b0404a
Options class replaced to xmrig::Config.
2018-03-31 16:29:47 +07:00
XMRig
1011fd4891
Partial fix for ARMv7
2018-03-24 10:14:21 +07:00
XMRig
2de5d92d3a
Removed unnecessary pointers cast.
2018-03-18 05:48:19 +07:00
XMRig
7adf30e326
Remove align.h.
2018-03-14 17:11:51 +07:00
XMRig
125072a30e
Added test hashes for AEON.
2018-03-13 01:29:31 +07:00
XMRig
aec31c43c0
Better v1 PoW implementation, added variant option.
2018-03-12 22:29:44 +07:00
XMRig
83e5832bc1
Some small fixes.
2018-03-12 14:44:23 +07:00
XMRig
79779b51da
Added reference hashes.
2018-03-07 15:32:44 +07:00
XMRig
8b60585004
PoW changes WIP
2018-03-06 21:34:20 +07:00
XMRig
df6a397e52
Update copyright and move version into Job class.
2018-03-06 17:06:07 +07:00
Lee Clagett
48b1de0b59
Changes for the Monero v1 PoW
2018-03-02 22:17:29 +00:00
XMRig
184f79ad3f
Fix code style, replace tabs to space #2 .
2018-02-08 17:21:12 +07:00
XMRig
e78e810cfe
Fix code style, replace tabs to space.
2018-02-08 17:02:32 +07:00
Foudge
9a28ad590c
up to 20% perf increase with Cryptonight with non-AES CPU
...
This time, the performance increase is got with MSVC and GCC. On non-AES CPU, there were an useless load/store SSE2 register. The last MSVC "hack" is replaced by a portable code and he's more complete (a load is saved).
On my C2Q6600, with 3 thread, I have +16% with MSVC2015 and +20% with GCC 7.3, compared to official 2.4.4 version.
2018-01-28 12:58:19 +01:00
Foudge
9bceb65ad8
+15% boost with non-AES CPU
...
Performance boost validated on Core 2 Quad processor under Windows 10.
But it's Windows/MS Visual C++ specific.
2018-01-20 10:43:56 +01:00
XMRig
aa4f8b6fa7
#216 Added ARMv7 support.
2017-11-26 22:23:23 +03:00
XMRig
6cc152e26f
Added ARMv8 (aarch64) support.
2017-11-06 03:11:35 +03:00
XMRig
d403dcf95c
Optimized software aes.
2017-11-03 05:35:29 +03:00
XMRig
4cf3bb9930
#111 Fixed build without AEON support.
2017-09-16 15:20:33 +03:00
XMRig
a07b0e5953
Fix Visual Studio warnings.
2017-08-14 09:30:41 +03:00
XMRig
30a7f9f7f5
Backport crypto changes from Dead2 xmr-stak-cpu fork.
2017-07-19 21:02:38 +03:00
XMRig
ccc7fba2c4
Fix software AES.
2017-06-17 15:23:25 +03:00
XMRig
5af169fd7b
Fix linux build.
2017-06-14 16:11:01 +03:00
XMRig
7c8a9677a1
Fix crash.
2017-06-13 20:03:43 +03:00
XMRig
981e043ada
Add DoubleWorker class.
2017-06-13 19:58:31 +03:00
XMRig
9580c30d8a
Fix cpuid stub for MSVC.
2017-06-12 16:55:21 +03:00
XMRig
3df545cfc5
Initial MSVC support.
2017-06-12 16:19:07 +03:00
XMRig
a0a8711dab
Add class JobResult.
2017-06-11 10:58:46 +03:00
XMRig
8b83a5fe2e
Implemented CryptoNight with C++ templates.
2017-06-08 23:31:42 +03:00
XMRig
878e021ff6
Initial CryptoNight.
2017-06-08 09:47:25 +03:00
XMRig
5a606be8be
Move crypto/*
2017-06-08 04:20:10 +03:00