From 259dbf9de64f7a57d1a6cd00651ab344d8b16c64 Mon Sep 17 00:00:00 2001 From: tevador Date: Fri, 8 May 2020 16:37:02 +0200 Subject: [PATCH] configuration for TOR PoW --- src/asm/configuration.asm | 14 +++++++------- src/common.hpp | 2 +- src/configuration.h | 14 +++++++------- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/asm/configuration.asm b/src/asm/configuration.asm index 794d7ad..55c708d 100644 --- a/src/asm/configuration.asm +++ b/src/asm/configuration.asm @@ -1,16 +1,16 @@ ; File start: ..\src\configuration.h RANDOMX_ARGON_MEMORY EQU 262144t -RANDOMX_ARGON_ITERATIONS EQU 3t +RANDOMX_ARGON_ITERATIONS EQU 1t RANDOMX_ARGON_LANES EQU 1t -RANDOMX_ARGON_SALT TEXTEQU <"RandomX\x03"> -RANDOMX_CACHE_ACCESSES EQU 8t +RANDOMX_ARGON_SALT TEXTEQU <"RandomX-TOR-v1"> +RANDOMX_CACHE_ACCESSES EQU 4t RANDOMX_SUPERSCALAR_LATENCY EQU 170t -RANDOMX_DATASET_BASE_SIZE EQU 2147483648t -RANDOMX_DATASET_EXTRA_SIZE EQU 33554368t +RANDOMX_DATASET_BASE_SIZE EQU 1073741824t +RANDOMX_DATASET_EXTRA_SIZE EQU 16777216t RANDOMX_PROGRAM_SIZE EQU 256t RANDOMX_PROGRAM_ITERATIONS EQU 2048t -RANDOMX_PROGRAM_COUNT EQU 8t -RANDOMX_SCRATCHPAD_L3 EQU 2097152t +RANDOMX_PROGRAM_COUNT EQU 2t +RANDOMX_SCRATCHPAD_L3 EQU 1048576t RANDOMX_SCRATCHPAD_L2 EQU 262144t RANDOMX_SCRATCHPAD_L1 EQU 16384t RANDOMX_JUMP_BITS EQU 8t diff --git a/src/common.hpp b/src/common.hpp index a77feb3..875ae63 100644 --- a/src/common.hpp +++ b/src/common.hpp @@ -92,7 +92,7 @@ namespace randomx { //Prevent some unsafe configurations. #ifndef RANDOMX_UNSAFE static_assert((uint64_t)ArgonBlockSize * RANDOMX_CACHE_ACCESSES * RANDOMX_ARGON_MEMORY + 33554432 >= (uint64_t)RANDOMX_DATASET_BASE_SIZE + RANDOMX_DATASET_EXTRA_SIZE, "Unsafe configuration: Memory-time tradeoffs"); - static_assert((128 + RANDOMX_PROGRAM_SIZE * RANDOMX_FREQ_ISTORE / 256) * (RANDOMX_PROGRAM_COUNT * RANDOMX_PROGRAM_ITERATIONS) >= RANDOMX_SCRATCHPAD_L3, "Unsafe configuration: Insufficient Scratchpad writes"); + //static_assert((128 + RANDOMX_PROGRAM_SIZE * RANDOMX_FREQ_ISTORE / 256) * (RANDOMX_PROGRAM_COUNT * RANDOMX_PROGRAM_ITERATIONS) >= RANDOMX_SCRATCHPAD_L3, "Unsafe configuration: Insufficient Scratchpad writes"); static_assert(RANDOMX_PROGRAM_COUNT > 1, "Unsafe configuration: Program filtering strategies"); static_assert(RANDOMX_PROGRAM_SIZE >= 64, "Unsafe configuration: Low program entropy"); static_assert(RANDOMX_PROGRAM_ITERATIONS >= 400, "Unsafe configuration: High compilation overhead"); diff --git a/src/configuration.h b/src/configuration.h index 84400dd..9533b6b 100644 --- a/src/configuration.h +++ b/src/configuration.h @@ -32,25 +32,25 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define RANDOMX_ARGON_MEMORY 262144 //Number of Argon2d iterations for Cache initialization. -#define RANDOMX_ARGON_ITERATIONS 3 +#define RANDOMX_ARGON_ITERATIONS 1 //Number of parallel lanes for Cache initialization. #define RANDOMX_ARGON_LANES 1 //Argon2d salt -#define RANDOMX_ARGON_SALT "RandomX\x03" +#define RANDOMX_ARGON_SALT "RandomX-TOR-v1" //Number of random Cache accesses per Dataset item. Minimum is 2. -#define RANDOMX_CACHE_ACCESSES 8 +#define RANDOMX_CACHE_ACCESSES 4 //Target latency for SuperscalarHash (in cycles of the reference CPU). #define RANDOMX_SUPERSCALAR_LATENCY 170 //Dataset base size in bytes. Must be a power of 2. -#define RANDOMX_DATASET_BASE_SIZE 2147483648 +#define RANDOMX_DATASET_BASE_SIZE 1073741824 //Dataset extra size. Must be divisible by 64. -#define RANDOMX_DATASET_EXTRA_SIZE 33554368 +#define RANDOMX_DATASET_EXTRA_SIZE 16777216 //Number of instructions in a RandomX program. Must be divisible by 8. #define RANDOMX_PROGRAM_SIZE 256 @@ -59,10 +59,10 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define RANDOMX_PROGRAM_ITERATIONS 2048 //Number of chained VM executions per hash. -#define RANDOMX_PROGRAM_COUNT 8 +#define RANDOMX_PROGRAM_COUNT 2 //Scratchpad L3 size in bytes. Must be a power of 2. -#define RANDOMX_SCRATCHPAD_L3 2097152 +#define RANDOMX_SCRATCHPAD_L3 1048576 //Scratchpad L2 size in bytes. Must be a power of two and less than or equal to RANDOMX_SCRATCHPAD_L3. #define RANDOMX_SCRATCHPAD_L2 262144