I have been trying to calculate hashrates but it is a little confusing.
I just want to get a general idea. What CPU / GPU would be required to solo mine 1 coin a day?
This answer will attempt to answer the question at multiple levels, as follows:
Enjoy :)
Some basics:
Okay, putting it all together, where your share of the hashrate is "n":
daily reward ≈ (720 * Avg Block Reward * n)/(Network Hashrate)
Since the question was for a reward of 1 XMR per day, using the numbers above:
1 XMR ≈ (720 * 11.0 * n)/(23300000)
and solving for n:
n ≈ 23300000 / (720 * 11.0)
n ≈ 2942 H/s
which is pretty close to @villabacho's answer.
I just want to get a general idea.
Generally speaking, the formula to determine the hashrate needed to mine 1 XMR per day is:
n = (Network Hashrate) / (720 * Avg Block Reward)
What CPU / GPU would be required to solo mine 1 coin a day?
The most energy efficient GPU that I know of for mining XMR is the GTX 750 Ti, which gets approximately 250 H/s for a little more than $100/GPU. 12 of these GPUs would give you 3000 H/s, or a little more than 1 XMR per day at the current mining and reward levels.
Using our formula n = (Network Hashrate) / (720 * Avg Block Reward)
:
n = 87400000 / (720 * 7.2)
n = 16812 H/s, or 16.81 kH/s to mine 1 XMR per day.
You would need approximately 67 GTX 750 Ti's at 250 H/s each, OR approximately 28 RX 470's at 600 H/s each, OR approximately 22 RX 480's at 750 H/s each.
A more general formula can be developed that calculates the Average Block Reward used above from the total coins in circulation.
The base block reward is calculated by
Reward = (M - A) * 2^(-19) * 10^(-12)
where M = 2^64
and A
is the current amount of XMR in circulation (in terms of atomic units, where 1 XMR = 10^12 atomic units). We can reduce this for ease of use to be as follows:
Reward = (18446744.073709551616 - a) * 2^(-19)
where a = A * 10^(-12)
and represents XMR "coins" in circulation as we traditionally think of them.
From this formula, it should be clear that the base reward for each block is progressively decreasing. However, we can consider it roughly constant in the short term for our purposes here, as over a 720 block period (one day) the reward drops ~0.01 XMR at today's rate. Therefore, we can substitute this Reward value as an approximation of the Avg Block Reward over a relatively short period with an error of much less than 1%. Combining our two formulas:
n = (Network Hashrate) / (720 * Avg Block Reward)
and
Reward = (18446744.073709551616 - Coins in Circulation) * 2^(-19)
and reducing gives
n = (Network Hashrate * 2^19) / (720 * (18446744.073709551616 - Coins in Circulation))
or more simply
n = (728 * Network Hashrate) / (18446744.073709551616 - Coins in Circulation)
According to https://www.monero.how/ at the current block height of 1336863,
Substituting these values into our formula
n = (728 * 87400) / (18446744.073709551616 - 14658448) [kH/s]
and noting that n
is in kH/s, we would need 16.796 kH/s of hashing power to mine 1 XMR today.
Note: This calculation does not include fees, so you should actually mine slightly more than 1 XMR today with that hashrate. But you will have to pay pool fees, account for variance, etc, so it's a fairly good approximation still.
n = (Network Hashrate) / (720 * Avg Block Reward)
or
n = (728 * Network Hashrate) / (18446744.073709551616 - Coins in Circulation)
According to https://www.cryptocompare.com/mining/calculator/xmr you need 2910 H/s at the moment to mine 1 XMR per day.
Here's a Google doc with a comparison of various hardware (CPU and GPU) for Monero mining: https://docs.google.com/spreadsheets/d/1E0GqJdLhMmeO5BW3RBcIpftMR_BJhnyUS464ZO_EYGQ/edit?pref=2&pli=1#gid=1
From that you can figure out how many cores or GPU's of a specific type you need to get the required hash rate.
According to mineXMR, you need 58.81 KH/s for 1 XMR per day for their pool. I picked a pool with the greatest aggregate hash rate so that your hashing power is not wasted on unsolved blocks.
Difficulty: 30794551795
Network
Hash Rate: 256.62 MH/sec
Block Found: 8 minutes ago
Pool Stats
Hash Rate: 60.67 MH/sec
Block Found: 6 minutes ago