FAQ

⚓ Neptune    📅 2024-12-19    👤 aszepieniec    👁️ 40      

aszepieniec

This thread collects frequently asked questions (and answers).

🏷️ faq

aszepieniec    2024-12-19 👍 1 👎 [op]

How does mining work? What resources are required?

In Neptune, mining consists of two steps: composing and guessing. The composer assembles a block by aggregating transactions and producing a proof of correctness of the entire batch. The guesser supplies the nonce such that the block’s hash is smaller than the target.

Proving is expensive and if you want to do it fast you need a lot of RAM. Think 50+ cores and 150+ GB of RAM. Also: up to a limit, composing is faster when you throw more cores at it. To enable composing, start neptune-core with the flag --compose.

In contrast, guessing can be done on any machine that’s capable of synchronizing to the network. By default, it will use all the available cores. Guessing is stateless, meaning that it doesn’t make any sense to buy half the number of computers (or cores) that work at twice the speed. What matters is the total number of hash trials per second. To enable guessing, run neptune-core with the --guess flag.

The producer of a new block is entitled to any transaction fees of transactions confirmed in it as well as the block subsidy. The composer allocates to himself a proportion of this reward at his discretion; the remainder goes to the guesser. By default, composers are configured to broadcast their proposals but people who aren’t afraid of digging into the source code might change this configuration.

One last point: all mining rewards are split into two parts. Half is liquid immediately. The other half is time-locked for three years. This dynamic aligns miners’ incentives with the long-term success of the project.

1