Commit Graph

25 Commits

Author SHA1 Message Date
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
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
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 e0484dfb99 Automatic detection of CPU capabilities 2019-10-08 23:09:35 +02:00
tevador 900a936816 Optimized Argon2 (SSSE3/AVX2) 2019-10-06 18:07:23 +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 67010ab554
Optional W^X policy for JIT pages (#112) 2019-08-25 13:47:40 +02:00
tevador 47ade5e894
Do not attempt to allocate >= 4 GiB on 32-bit systems (#99)
+ Cache size limited to 2 GiB
2019-07-09 20:26:50 +02:00
tevador aaa6e4e881
Sanity checks (#88) 2019-06-29 18:53:49 +02:00
tevador 2706a8b753 Relicensed under the 3-clause BSD license 2019-05-18 14:21:47 +02:00
tevador 3dd21ea93d Prepare for JIT compiler support for other platforms 2019-05-12 22:31:48 +02:00
tevador c87dcc8ae5 Cache seed renamed to key 2019-05-01 14:40:13 +02:00
tevador 22a3aa8d79 randomx_cache and randomx_dataset changed to standard-layout structs 2019-04-28 12:44:28 +02:00
tevador 270a4f97fe Dataset size increased to 2080 MiB
Implemented dataset base offset
Tweaked SuperscalarHash constants to prevent register collisions
2019-04-26 16:05:30 +02:00
tevador b4dca14f0c Added a function to access the dataset memory buffer
Number of dataset items changed from a macro to a getter function.
2019-04-23 22:15:55 +02:00
tevador 87b8253374 API documentation
'dataset block' -> 'dataset item'
customizable benchmark seed
2019-04-22 15:13:41 +02:00
tevador bc78b628ea Flags ordered by their impact on performance
Additional error handling
2019-04-21 23:23:13 +02:00
tevador a8c7137873 Linux makefile
Exception handling
2019-04-21 15:04:17 +02:00
tevador 41557ce010 randomx project changed to a static library
separate benchmark project
API usage examples
2019-04-21 00:20:21 +02:00
tevador d7eefce583 Removed capital letters from filenames 2019-04-20 16:53:06 +02:00
tevador d7276d5786 Reduced the number of virtual calls per hash 2019-04-20 12:49:24 +02:00
tevador 296e77eebc C API - first working version 2019-04-20 11:08:01 +02:00