Commit graph

273 commits

Author SHA1 Message Date
tevador
30969c0e25 Benchmark version 2019-12-01 21:07:13 +01:00
tevador
aa19c5b9b6 Disable thread affinity on FreeBSD and Android 2019-12-01 20:41:20 +01:00
tevador
3910d49b49 Hide tempHash from the public API 2019-12-01 18:19:09 +01:00
SChernykh
219c02e1e5 Combined hash and fill AES loop (#166)
Adds more parallelizm into AES loop so modern CPUs can take advantage of it. Also, scratchpad data moves between L1 and L3 caches only one time which saves time and energy per hash.
2019-12-01 16:58:38 +01:00
Vladimir
01914b49cd Fixes for cmake build with visual studio (#144)
* Fixed CMake configuration for visual studio build

Added proper asm source and set correct type.

* Disabled stadard layout check of randomx_cache for visual studio debug

Required to silence static_assert which fails on Visual Studio Debug
configuation.

* Fixed warning message and defines check

* Removed unsupported flags for MSVC compiler

* Enabled AVX2 for msvc

* Fixed formatting in CmakeLists

* Added generation of configuration.asm by CMake for MSVC
2019-11-22 18:24:16 +01:00
tevador
7e20c8e56e
Merge pull request #161 from tevador/pr-struct
Fix inconsistent class/struct usage
2019-11-22 18:23:11 +01:00
tevador
88268ae325 Improved benchmark instructions 2019-11-22 18:16:58 +01:00
tevador
57545d1c53 Fix inconsistent class/struct usage 2019-11-19 23:17:55 +01:00
SChernykh
e43267fa86 Fix function names for clang on Apple 2019-11-12 13:04:11 +01:00
tevador
7567cef4c6
Fix symbol collisions with blake2b (#145) 2019-10-30 20:09:27 +01:00
tevador
53af68c34a Benchmark v1.1.5 2019-10-23 17:02:22 +02:00
tevador
e3c5ab7002 Merge branch 'master' of git@github.com:tevador/RandomX.git 2019-10-23 16:57:44 +02:00
tevador
a1f0f90ac2 randomx-tests: do not run unsupported tests 2019-10-23 16:57:25 +02:00
tevador
34aba9dc8a
Merge pull request #142 from ston1th/fix_openbsd_tests
Fixed tests on OpenBSD
2019-10-23 16:48:13 +02:00
tevador
4a97ce9a4c
Merge pull request #141 from SChernykh/master
Fix alignment for ARMv8 code
2019-10-23 16:47:48 +02:00
ston1th
5c0486bd33 Fixed tests on OpenBSD
Since OpenBSD 6.0 W^X is enforced.
Added `RANDOMX_FLAG_SECURE` in tests and benchmarks.
Updated comment.

Excluded `cpu_set_t` since it is not defined on OpenBSD.
2019-10-20 14:23:33 +02:00
ston1th
f3ded36061 Fixed mmap on OpenBSD
OpenBSD's mmap does not support `MAP_HUGETLB` and `MAP_POPULATE`.
2019-10-20 10:36:46 +02:00
SChernykh
9a5d504bb3 Fix alignment for ARMv8 code 2019-10-19 00:20:09 +02:00
tevador
b53f0ed145 Benchmark v1.1.4 2019-10-11 12:37:17 +02:00
tevador
5570c698e7 Fix superscalar-stats generator initialization 2019-10-11 12:04:55 +02:00
tevador
be810aca0a Fix a possible out-of-bounds access in superscalar generator 2019-10-11 11:31:05 +02:00
tevador
4296c35d79 switch on int 2019-10-10 07:48:03 +02:00
tevador
abf2a5034e Make sure AES code is present when setting RANDOMX_FLAG_HARD_AES 2019-10-09 22:06:04 +02:00
tevador
fc892fc5c0 Select AVX2 if both AVX2 and SSSE3 flags are set 2019-10-09 21:37:14 +02:00
tevador
ebbe7696c7 Fix examples 2019-10-09 19:49:54 +02:00
tevador
e0484dfb99 Automatic detection of CPU capabilities 2019-10-08 23:09:35 +02:00
tevador
eda3603bf3 Undefine _mm_roti_epi64 if defined 2019-10-08 22:39:34 +02:00
tevador
cce53cb582 use SSSE3 consistently as opposed to SSE3 2019-10-06 23:46:49 +02:00
tevador
900a936816 Optimized Argon2 (SSSE3/AVX2) 2019-10-06 18:07:23 +02:00
tevador
298cc77095 Benchmark v1.1.3 2019-10-04 08:47:57 +02:00
tevador
0dc104ff7e Simplify cache init in tests 2019-10-04 08:44:06 +02:00
hyc
01648b3bd6 Remember cache input data (#133)
Make init_cache and set_cache no-ops if fed the same data as before
2019-10-04 08:31:32 +02:00
tevador
519b9cf705 Benchmark v1.1.2 2019-09-25 22:24:08 +02:00
tevador
a70dfd8df7
Merge pull request #130 from hyc/gccwin32
Fix for win32 build with gcc
2019-09-25 15:23:03 +02:00
tevador
7c405a7dc4 Fix tests without JIT support 2019-09-25 15:15:39 +02:00
Howard Chu
1694aa825d Fix for win32 build with gcc 2019-09-25 14:01:47 +01:00
SChernykh
457c0e4a54 Workaround for gcc 8.3 on Arch Linux (ARM)
ldr/madd instruction sequence makes compiled binary crash, so separate them.
2019-09-23 22:23:23 +02:00
SChernykh
9e7ae84de4 Set scratchpad pointer to null by default 2019-09-23 15:56:14 +02:00
tevador
2441730203 Update --jit flag description 2019-09-22 22:29:48 +02:00
tevador
eef87a0f63 Documentation updates 2019-09-22 22:18:28 +02:00
SChernykh
c6468a3816 JIT compiler for ARMv8 (#125)
JIT compiler for ARMv8
2019-09-22 21:06:22 +02:00
tevador
5fb26fc607
Merge pull request #124 from SChernykh/master
Optimized loading from scratchpad
2019-09-18 23:45:30 +02:00
SChernykh
93fec18991 Optimized loading from scratchpad 2019-09-11 11:48:22 +02:00
Jethro Grassie
73021b89e0
fix MSYS thread handle cast 2019-08-30 17:27:06 -04:00
tevador
f1ff014bca Fix JIT fallback 2019-08-30 11:29:09 +02:00
tevador
bd8ef0375a Update benchmark 2019-08-30 09:53:22 +02:00
tevador
eee355d85b Fixed tests 2019-08-30 09:44:24 +02:00
tevador
22689eda49
Increase the frequency of CBRANCH (#118) 2019-08-30 09:28:18 +02:00
tevador
67010ab554
Optional W^X policy for JIT pages (#112) 2019-08-25 13:47:40 +02:00
tevador
971f10c9c2
Changes recommended by Quarkslab (#111)
* Corrected bounds for some configuration parameters
* Clarifications in the specification
* Check validity of Argon2 parameters
2019-08-25 13:47:21 +02:00