SChernykh
8af8df25aa
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
XMRig
b1e14dc1d3
Always disable kawpow for CPU backend.
2021-02-07 18:49:54 +07:00
XMRig
2c8d8ee2ab
Fixed macOS build and compile warning.
2021-02-02 13:53:45 +07:00
XMRig
09624c4f9b
Added support for flexible huge page sizes on Linux.
2021-01-31 23:38:57 +07:00
XMRig
8faef28e7d
Detect Apple M1 on Linux.
2021-01-31 05:41:32 +07:00
XMRig
62450f4ed8
Update ARM CPUs names.
2021-01-31 03:53:22 +07:00
XMRig
2c52a5a352
#2066 Fixed AMD GPUs health data readings.
2021-01-30 02:42:59 +07:00
XMRig
9ca1a6129b
#2066 Quick fix for AMD GPUs health data.
2021-01-29 01:23:35 +07:00
XMRig
b9081e992b
Code cleanup
2021-01-25 22:00:42 +07:00
XMRig
0fa5db8fa3
Code cleanup.
2021-01-24 15:02:22 +07:00
XMRig
9dae559b73
Added RxMsr class.
2021-01-23 23:23:39 +07:00
SChernykh
2f2b33c82b
AstroBWT OpenCL fixes
...
- Rewrote main BWT kernel to work properly on Navi
- Fixed nonce iterations in OclWorker
- Fixed memory allocation for AstroBWT
2020-12-27 16:44:35 +01:00
SChernykh
410313d933
Auto-detect the fastest code for dataset init
2020-12-19 13:59:28 +01:00
SChernykh
515a85e66c
Dataset initialization with AVX2 (WIP)
2020-12-18 14:53:54 +01:00
XMRig
5a846ebd58
Merge branch '64bit-is-not-x64' of https://github.com/rivoreo/xmrig into dev
2020-12-15 17:28:36 +07:00
WHR
15168950e5
Don't use team 'x64' for '64-bit'
2020-12-15 14:56:06 +08:00
XMRig
cc5c2c41be
Hardcode L2 cache size for Apple M1.
2020-12-13 20:09:29 +07:00
XMRig
643142dc30
Update user agent for macOS and fix compile warnings
2020-12-13 13:57:12 +07:00
XMRig
a36fb7e728
More correct CPU affinity support for macOS.
2020-12-13 01:20:31 +07:00
XMRig
ec62ded279
Added generic secure JIT support for RandomX.
2020-12-11 23:17:54 +07:00
SChernykh
0da3390d09
More static analysis fixes
2020-12-08 16:05:58 +01:00
SChernykh
cafd868773
Fixed errors found by static analysis
2020-12-08 12:16:59 +01:00
SChernykh
41a9bddd59
Added virtual machine detection
2020-12-06 17:34:01 +01:00
XMRig
ab45794b7c
Removed libcpuid support.
2020-12-06 21:51:24 +07:00
XMRig
acf7ec8355
Restore Hashrate class interface.
2020-12-05 11:09:25 +07:00
XMRig
bd82b3c852
Added GpuWorker class.
2020-12-04 22:25:28 +07:00
XMRig
daf08fcf9a
Cleanup
2020-12-04 19:52:53 +07:00
XMRig
c8ee6f7db8
Move Profiler and more cleanup.
2020-12-04 09:23:40 +07:00
XMRig
3055e03b7e
Cleanup
2020-12-03 19:45:16 +07:00
XMRig
8686e08336
Fixed, benchmark validation on NUMA hardware produced incorrect results in some conditions.
2020-11-25 09:35:11 +07:00
XMRig
09b68f3cdb
Added BenchStatePrivate class.
2020-11-24 17:59:40 +07:00
XMRig
edf7885172
Fixed benchmark progress logging.
2020-11-23 21:41:51 +07:00
XMRig
75f18c9b31
Use static RandomX seed for benchmark.
2020-11-20 08:15:04 +07:00
XMRig
a2a0defeef
Submit top benchmark diff.
2020-11-17 07:33:20 +07:00
XMRig
e2ea11ffeb
Remove benchmark size from Job class.
2020-11-17 05:28:42 +07:00
XMRig
d8f9501ac8
Added DNS cache for online benchmark.
2020-11-17 04:59:26 +07:00
XMRig
f7f07ce42c
Fixed build.
2020-11-16 16:37:57 +07:00
XMRig
c1d99bfa09
Benchmark refactoring, zero delay submit and unified HTTP layer.
2020-11-16 16:22:34 +07:00
XMRig
be8245fc92
Unlock benchmark size for debug builds.
2020-11-16 08:56:35 +07:00
XMRig
926871cbe1
Removed non thread safe access to config.
2020-11-16 07:58:28 +07:00
SChernykh
ee677ef5c9
Added reference hashes for 1T offline benchmark
2020-11-16 00:57:00 +01:00
SChernykh
c10ec90b60
Make single thread bench cheat-resistant
...
Each hash is dependent on the previous hash to make multi-threaded cheating impossible.
2020-11-15 20:38:27 +01:00
XMRig
aa284c6a3a
Added warning about libcpuid deprecation.
2020-11-15 04:23:59 +07:00
XMRig
6379d1f90e
Add static_assert
2020-11-15 04:13:40 +07:00
SChernykh
9a1e867da2
Fixed MSR mod names in JSON API
2020-11-14 19:55:43 +01:00
XMRig
e3727f01b8
Added 250K and 500K offline benchmarks.
2020-11-12 11:15:43 +07:00
XMRig
f08887180d
Added --token command line option.
2020-11-10 21:29:13 +07:00
SChernykh
44054ac7eb
Added CPUID info to JSON report
2020-11-10 12:15:52 +01:00
SChernykh
c8c0abdb00
Separate MSR mod for Zen/Zen2 and Zen3
...
Another +0.5% speedup for Zen2
2020-11-08 19:40:44 +01:00
XMRig
99e9073993
Fixed build without HTTP.
2020-11-03 00:21:22 +07:00
XMRig
51690ebad6
#1918 Fixed check for 1GB huge pages on ARM Linux.
2020-11-02 21:26:35 +07:00
XMRig
3910cf9e69
Added vendor to ARM CPUs name and added "arch" field.
2020-11-01 12:06:35 +07:00
XMRig
5f314edb2f
Print benchmark url
2020-10-30 23:24:01 +07:00
XMRig
4914fefb1f
Added "msr" field for CPU backend.
2020-10-25 16:36:37 +07:00
XMRig
03cd56ed73
Implemented PATCH requests.
2020-10-25 13:41:39 +07:00
XMRig
79c96418c7
Implemented BenchClient.
2020-10-24 19:43:23 +07:00
XMRig
36c1cb23e0
Implemented static benchmark verification (--bench --seed --hash)
2020-10-24 13:53:49 +07:00
XMRig
6860450147
Removed legacy CUDA plugin API.
2020-10-20 18:04:56 +07:00
XMRig
328f985e07
Added Benchmark class.
2020-10-17 04:03:42 +07:00
XMRig
7fc7b976bf
Removed m_bench field from Job class.
2020-10-16 20:29:11 +07:00
XMRig
36b1523194
Code cleanup.
2020-10-16 19:35:36 +07:00
XMRig
5155139e9a
Improve some benchmark log messages.
2020-10-16 04:11:50 +07:00
XMRig
a152d6be42
Added CMake option WITH_BENCHMARK.
2020-10-16 02:18:07 +07:00
cohcho
5b4648339a
WorkerJob: fix calls of add/nextRound
...
WorkerJob::nextRound() doesn't require roundSize to be power of 2
Use CudaWorker::intensity(), OclWorker::intensity() to get device batch size
Sync nonce and device iteration
2020-10-15 14:56:37 +00:00
SChernykh
8c45e3226d
Fixed roundSize() usage in OCL/CUDA
2020-10-15 14:39:54 +02:00
SChernykh
c4db1435b2
Make round size power of 2
2020-10-15 14:29:15 +02:00
SChernykh
722e468bd9
Benchmark: added more check hashes and a progress indicator
2020-10-15 08:23:47 +02:00
SChernykh
144f9c4409
Fixed compile errors in Linux
2020-10-14 21:03:21 +02:00
SChernykh
2ecece7b3d
Added benchmark and stress test
...
Easy to use and zero configuration embedded benchmark/stress test.
2020-10-14 19:45:05 +02:00
xmrig
581d004568
Merge pull request #1890 from SChernykh/dev
...
Added argon2/chukwav2 algorithm
2020-10-13 14:54:34 +07:00
SChernykh
4f7186cb0e
Added argon2/chukwav2 algorithm
...
New Turtlecoin algorithm. Source: https://github.com/turtlecoin/turtlecoin/blob/development/src/crypto/hash.h#L57
2020-10-12 08:26:57 +02:00
xmrig
f85efd163c
Merge pull request #1887 from SChernykh/dev
...
Fixed total hashrate update
2020-10-10 22:07:37 +07:00
SChernykh
793a2454ad
Fixed total hashrate update
...
Don't add data points where one of the threads doesn't have hashrate data yet.
2020-10-10 17:00:30 +02:00
cohcho
4a74ce3242
CPU: use raw counter
2020-10-10 13:28:14 +00:00
SChernykh
22a69f70da
Fix HashrateInterpolator::addDataPoint
2020-10-10 11:22:19 +02:00
SChernykh
3fbf2ac3d4
More precise hashrate calculation
...
- Use only steady timestamp counters to guarantee correctness
- CPU backend: directly measure total hashrate using raw hash counters from each thread; update data more often on ARM CPUs because they're slower
- GPU backends: directly measure total hashrate too, but use interpolator with 4 second lag to fix variance from batches of hashes
Total hashrate is now measured directly (realtime for CPU, 4 seconds lag for GPU), so it might differ a bit from the sum of all thread hashrates because data points are taken at different moments in time.
Overhead is reduced a lot since it doesn't have to go through all threads to calculate max total hashrate on every timer tick (2 times a second).
2020-10-10 11:18:01 +02:00
cohcho
17795e3d7b
Worker: specify default value
2020-10-09 14:28:36 +00:00
SChernykh
858463ceba
Change to fetch_xor to make code simpler
2020-10-09 11:50:11 +02:00
SChernykh
a4550f55ea
Fix possible race condition in hashrate counting code
...
Use single atomic operation to switch between data points.
2020-10-09 10:29:18 +02:00
xmrig
1289942567
Merge pull request #1876 from SChernykh/dev
...
RandomX: added `huge-pages-jit` config parameter
2020-10-07 22:48:57 +07:00
SChernykh
44dcded866
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
cohcho
a705ab775b
RandomX: align args
...
tempHash/output must be 16-byte aligned for randomx_calculate_hash{,_first,_next}
2020-10-07 14:47:18 +00:00
SChernykh
ebf259fa7c
RandomX: removed rx/loki
...
Loki forks to PoS on October 9th.
2020-10-02 17:02:52 +02:00
SChernykh
bef9031b03
KawPow: fixed OpenCL memory leak
2020-09-25 10:53:24 +02:00
SChernykh
768a4581e0
Fixed Cryptonight OpenCL for AMD 20.7.2 drivers
...
Vega 64 + Windows 10 + AMD 20.7.2 drivers were broken on Cryptonight algorithms.
2020-09-19 23:12:05 +02:00
SChernykh
c7476e076b
RandomX refactoring, moved more stuff to compile time
...
Small x86 JIT compiler speedup.
2020-09-18 20:51:25 +02:00
cohcho
30be1cd102
reserve at most 1 bit for wrapping detection
2020-09-13 18:42:16 +00:00
xmrig
adf833b60a
Merge pull request #1827 from cohcho/nonce_iteration_without_tests
...
nonce iteration optimization
2020-09-10 19:33:23 +07:00
SChernykh
4a9db89527
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
060c1af4c4
fix nonce mask
2020-09-09 19:39:52 +00:00
cohcho
b826985d05
nonce iteration optimization
...
efficient and correct nonce iteration without duplicates
2020-09-09 10:03:37 +00:00
XMRig
ff13675d31
Improved CUDA loader error reporting and fixed plugin load on Linux.
2020-08-23 21:30:12 +07:00
XMRig
4b682b6633
Better scripts/build.*.sh compatibility.
2020-08-23 15:46:56 +07:00
XMRig
a354e9d217
Fixed tag in OclLib.
2020-08-21 08:21:51 +07:00
XMRig
950b5fa75e
Disable GPU backends with static build on Linux.
2020-08-20 15:02:31 +07:00
XMRig
206b675892
Always use all available threads on ARM.
2020-08-16 17:36:38 +07:00
XMRig
cac48cdd27
Added ARM CPU name detection based on lscpu code.
2020-08-16 15:47:29 +07:00
SChernykh
abb78302b8
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
1acd88ed39
Cleanup
2020-07-22 21:27:40 +07:00
SChernykh
bd8cf54a0b
Cryptonight OpenCL: fix for long input data
2020-07-16 10:39:32 +02:00