mirror of
				https://git.wownero.com/wownero/RandomWOW.git
				synced 2024-08-15 00:23:14 +00:00 
			
		
		
		
	Decrease the frequency of FADD/FSUB in favor of FMUL (#77)
* this better matches CPU capabilities since execution ports are usually split 1:1 between fadd and fmul * the frequency of FSWAP_R decreased from 8 to 4 (it's ASIC-friendly) * activate IROL_R instruction
This commit is contained in:
		
							parent
							
								
									83498cddf2
								
							
						
					
					
						commit
						91cd35ff13
					
				
					 3 changed files with 13 additions and 13 deletions
				
			
		|  | @ -29,16 +29,16 @@ RANDOMX_FREQ_IMUL_RCP EQU 8t | ||||||
| RANDOMX_FREQ_INEG_R EQU 2t | RANDOMX_FREQ_INEG_R EQU 2t | ||||||
| RANDOMX_FREQ_IXOR_R EQU 15t | RANDOMX_FREQ_IXOR_R EQU 15t | ||||||
| RANDOMX_FREQ_IXOR_M EQU 5t | RANDOMX_FREQ_IXOR_M EQU 5t | ||||||
| RANDOMX_FREQ_IROR_R EQU 10t | RANDOMX_FREQ_IROR_R EQU 8t | ||||||
| RANDOMX_FREQ_IROL_R EQU 0t | RANDOMX_FREQ_IROL_R EQU 2t | ||||||
| RANDOMX_FREQ_ISWAP_R EQU 4t | RANDOMX_FREQ_ISWAP_R EQU 4t | ||||||
| RANDOMX_FREQ_FSWAP_R EQU 8t | RANDOMX_FREQ_FSWAP_R EQU 4t | ||||||
| RANDOMX_FREQ_FADD_R EQU 20t | RANDOMX_FREQ_FADD_R EQU 16t | ||||||
| RANDOMX_FREQ_FADD_M EQU 5t | RANDOMX_FREQ_FADD_M EQU 5t | ||||||
| RANDOMX_FREQ_FSUB_R EQU 20t | RANDOMX_FREQ_FSUB_R EQU 16t | ||||||
| RANDOMX_FREQ_FSUB_M EQU 5t | RANDOMX_FREQ_FSUB_M EQU 5t | ||||||
| RANDOMX_FREQ_FSCAL_R EQU 6t | RANDOMX_FREQ_FSCAL_R EQU 6t | ||||||
| RANDOMX_FREQ_FMUL_R EQU 20t | RANDOMX_FREQ_FMUL_R EQU 32t | ||||||
| RANDOMX_FREQ_FDIV_M EQU 4t | RANDOMX_FREQ_FDIV_M EQU 4t | ||||||
| RANDOMX_FREQ_FSQRT_R EQU 6t | RANDOMX_FREQ_FSQRT_R EQU 6t | ||||||
| RANDOMX_FREQ_CBRANCH EQU 16t | RANDOMX_FREQ_CBRANCH EQU 16t | ||||||
|  |  | ||||||
|  | @ -61,7 +61,7 @@ namespace randomx { | ||||||
| 	constexpr int wtSum = RANDOMX_FREQ_IADD_RS + RANDOMX_FREQ_IADD_M + RANDOMX_FREQ_ISUB_R + \ | 	constexpr int wtSum = RANDOMX_FREQ_IADD_RS + RANDOMX_FREQ_IADD_M + RANDOMX_FREQ_ISUB_R + \ | ||||||
| 		RANDOMX_FREQ_ISUB_M + RANDOMX_FREQ_IMUL_R + RANDOMX_FREQ_IMUL_M + RANDOMX_FREQ_IMULH_R + \ | 		RANDOMX_FREQ_ISUB_M + RANDOMX_FREQ_IMUL_R + RANDOMX_FREQ_IMUL_M + RANDOMX_FREQ_IMULH_R + \ | ||||||
| 		RANDOMX_FREQ_IMULH_M + RANDOMX_FREQ_ISMULH_R + RANDOMX_FREQ_ISMULH_M + RANDOMX_FREQ_IMUL_RCP + \ | 		RANDOMX_FREQ_IMULH_M + RANDOMX_FREQ_ISMULH_R + RANDOMX_FREQ_ISMULH_M + RANDOMX_FREQ_IMUL_RCP + \ | ||||||
| 		RANDOMX_FREQ_INEG_R + RANDOMX_FREQ_IXOR_R + RANDOMX_FREQ_IXOR_M + RANDOMX_FREQ_IROR_R + RANDOMX_FREQ_ISWAP_R + \ | 		RANDOMX_FREQ_INEG_R + RANDOMX_FREQ_IXOR_R + RANDOMX_FREQ_IXOR_M + RANDOMX_FREQ_IROR_R + RANDOMX_FREQ_IROL_R + RANDOMX_FREQ_ISWAP_R + \ | ||||||
| 		RANDOMX_FREQ_FSWAP_R + RANDOMX_FREQ_FADD_R + RANDOMX_FREQ_FADD_M + RANDOMX_FREQ_FSUB_R + RANDOMX_FREQ_FSUB_M + \ | 		RANDOMX_FREQ_FSWAP_R + RANDOMX_FREQ_FADD_R + RANDOMX_FREQ_FADD_M + RANDOMX_FREQ_FSUB_R + RANDOMX_FREQ_FSUB_M + \ | ||||||
| 		RANDOMX_FREQ_FSCAL_R + RANDOMX_FREQ_FMUL_R + RANDOMX_FREQ_FDIV_M + RANDOMX_FREQ_FSQRT_R + RANDOMX_FREQ_CBRANCH + \ | 		RANDOMX_FREQ_FSCAL_R + RANDOMX_FREQ_FMUL_R + RANDOMX_FREQ_FDIV_M + RANDOMX_FREQ_FSQRT_R + RANDOMX_FREQ_CBRANCH + \ | ||||||
| 		RANDOMX_FREQ_CFROUND + RANDOMX_FREQ_ISTORE + RANDOMX_FREQ_NOP; | 		RANDOMX_FREQ_CFROUND + RANDOMX_FREQ_ISTORE + RANDOMX_FREQ_NOP; | ||||||
|  |  | ||||||
|  | @ -96,18 +96,18 @@ Total sum of frequencies must be 256 | ||||||
| #define RANDOMX_FREQ_INEG_R         2 | #define RANDOMX_FREQ_INEG_R         2 | ||||||
| #define RANDOMX_FREQ_IXOR_R        15 | #define RANDOMX_FREQ_IXOR_R        15 | ||||||
| #define RANDOMX_FREQ_IXOR_M         5 | #define RANDOMX_FREQ_IXOR_M         5 | ||||||
| #define RANDOMX_FREQ_IROR_R        10 | #define RANDOMX_FREQ_IROR_R         8 | ||||||
| #define RANDOMX_FREQ_IROL_R         0 | #define RANDOMX_FREQ_IROL_R         2 | ||||||
| #define RANDOMX_FREQ_ISWAP_R        4 | #define RANDOMX_FREQ_ISWAP_R        4 | ||||||
| 
 | 
 | ||||||
| //Floating point instructions
 | //Floating point instructions
 | ||||||
| #define RANDOMX_FREQ_FSWAP_R        8 | #define RANDOMX_FREQ_FSWAP_R        4 | ||||||
| #define RANDOMX_FREQ_FADD_R        20 | #define RANDOMX_FREQ_FADD_R        16 | ||||||
| #define RANDOMX_FREQ_FADD_M         5 | #define RANDOMX_FREQ_FADD_M         5 | ||||||
| #define RANDOMX_FREQ_FSUB_R        20 | #define RANDOMX_FREQ_FSUB_R        16 | ||||||
| #define RANDOMX_FREQ_FSUB_M         5 | #define RANDOMX_FREQ_FSUB_M         5 | ||||||
| #define RANDOMX_FREQ_FSCAL_R        6 | #define RANDOMX_FREQ_FSCAL_R        6 | ||||||
| #define RANDOMX_FREQ_FMUL_R        20 | #define RANDOMX_FREQ_FMUL_R        32 | ||||||
| #define RANDOMX_FREQ_FDIV_M         4 | #define RANDOMX_FREQ_FDIV_M         4 | ||||||
| #define RANDOMX_FREQ_FSQRT_R        6 | #define RANDOMX_FREQ_FSQRT_R        6 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue