mirror of
				https://git.wownero.com/wownero/RandomWOW.git
				synced 2024-08-15 00:23:14 +00:00 
			
		
		
		
	Updated Dataset block generation algorithm specification
This commit is contained in:
		
							parent
							
								
									edde7672e0
								
							
						
					
					
						commit
						6061848444
					
				
					 1 changed files with 9 additions and 6 deletions
				
			
		
							
								
								
									
										15
									
								
								doc/specs.md
									
										
									
									
									
								
							
							
						
						
									
										15
									
								
								doc/specs.md
									
										
									
									
									
								
							|  | @ -626,12 +626,15 @@ Dataset blocks are numbered sequentially with `blockNumber` starting from 0. Eac | |||
| 
 | ||||
| The block data is arranged into 8 columns of 64-bit unsigned integers: `c0`-`c7`. | ||||
| 
 | ||||
| 1. Set `c0`to `4 * blockNumber`,  | ||||
| 1. Set `c1`-`c7` to zero. | ||||
| 1. Load a 64-byte block from the Cache. the block index is given by `c0` modulo the total number of blocks in Cache. | ||||
| 1. Set `c0 = SquareHash(c0)` | ||||
| 1. XOR all columns with the 64 bytes loaded in step 3 (8 bytes per column). | ||||
| 1. Repeat steps 3-5 total of `RANDOMX_CACHE_ACCESSES` times. | ||||
| 1. Set column `c0` to `blockNumber`. | ||||
| 1. Set columns `c1`-`c7` to zero. | ||||
| 1. Let `i = 0` | ||||
| 1. Let `currentColumn` be column with index `i` (wraps around if `i > 7`). | ||||
| 1. Let `nextColumn` be column with index `i + 1` (wraps around if `i > 6`). | ||||
| 1. Load a 64-byte block from the Cache. The block index is given by `currentColumn` modulo the total number of blocks in Cache. | ||||
| 1. Set `nextColumn = SquareHash(currentColumn + nextColumn)` | ||||
| 1. XOR all columns with the 64 bytes loaded in step 6 (8 bytes per column in order `c0`-`c7`). | ||||
| 1. Set `i = i + 1` and go back to step 4 if `i < RANDOMX_CACHE_ACCESSES`. | ||||
| 1. Concatenate columns `c0`-`c7` in little endian format to get the final block data. | ||||
| 
 | ||||
| ### 6.5 Dataset size | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue