Module basic_algorithm

Module basic_algorithm 

Source

Structs§

Kiss99State

Constants§

PROGPOW_CACHE_BYTES
Total number of bytes in the ProgPoW cache.
PROGPOW_CACHE_WORDS
Total number of 32-bit words in the ProgPoW cache.
PROGPOW_CNT_CACHE
Number of cache accesses per loop.
PROGPOW_CNT_DAG
Number of DAG accesses per computation.
PROGPOW_CNT_MATH
Number of mathematical operations per loop.
PROGPOW_DAG_LOADS
Number of DAG loads performed per loop.
PROGPOW_LANES
Number of parallel lanes in ProgPoW.
PROGPOW_MIX_BYTES
Number of bytes in the ProgPoW mix buffer.
PROGPOW_PERIOD_LENGTH
Length of the period for block processing.
PROGPOW_REGS
Number of registers in each lane.

Functions§

fill_mix
Fills the mix registers for a given lane with random values.
fnv1a
Computes the FNV-1a hash.
higher32
Extracts the higher 32 bits of a 64-bit integer.
kiss99
Generates a pseudo-random number using the KISS99 algorithm.
lower32
Extracts the lower 32 bits of a 64-bit integer.
progpow_init
Initializes the ProgPoW random state and sequence.
progpow_loop
Executes a single loop of the ProgPoW computation.
rotl32
Performs a left rotation on a 32-bit integer.
rotr32
Performs a right rotation on a 32-bit integer.