Everything that I am talking about here is related to these two Reddit threads:
I got a response from Eric J Korpela, a leader on the [email protected]
Project. Here was his response:
At least one person (Henri Heinonen) there is working on a bitcoin mining project to raise funds for other BOINC projects. He might be intrigued by in primecoin.
I posted a message on the BOINC developers mailing list, so hopefully Henri will see it, and hopefully he WILL be intrigued by Primecoin.
Here was my response to one of the comments posted to the second reddit thread above. I don't know if what I am proposing is technically possible, but I just wanted to throw this idea out there, and see if it sticks:
What if each individual work unit was a certain number of primes?
The BOINC client would keep keep track of the average prime rate of each member PC. Let's say that user A joins BOINC and starts mining via the Primecoin project. The goal of BOINC Primecoin would be to maintain a certain percentage of the total primes per second on the Primecoin network (for the sake of this argument, let's say 20%). So let us assume that the total network primes/second at a given moment in time is 1 billion pps => the BOINC primecoin project would try to maintain 200 million pps. This means that the project should statistically have a 20% chance of winning any given Primecoin block.
1 minute is an extremely short period of time, so the BOINC client might work in 60 minute increments. Here is how it would work: 200 million pps x 3600 seconds/hour = 7.2 x 10^11 pph
Let us assume that at a given instant in time, there are 1 million computers running BOINC primecoin. Assuming that all 1 million computers are exactly equal, each would be assigned 7.2 E 11 pph/1 E 6 = 7.2 E 5 pph. However, we know that all of the computers are not equal, so BOINC would assign individual work units to each computer based on its average prime rate, as shown in the example below:
User A's computer averages 500 pps. For convenience, let us say that each individual work unit (IWU) is 1000 primes. So User A could complete 1 IWU in 2 seconds. BOINC knows this, so at the top of the hour, BOINC sends user A the number of IWUs that he could typically complete in one hour: 1 IWU/2 sec * 3600 sec/1 hr = 1800 IWU/hr.
User B has a much more powerful computer: 5000 pps => 5 IWU/sec * 3600 sec/1 hr = 18,000 IWU/ hr.
So, let us assume that the current payout per block is 10 XPM. Let us assume that BOINC primecoin wins 20% of the blocks => 10 XPM/block * 0.2 x 60 blocks/hr = 120 XPM/hr.
Let us assume that User A's computer is running a little bit more slowly than normal, so he only completes 1500 of the 1800 IWU. His payout is proportional to what he actually completed in one hour: 120 XPM * [(1500/1800)/(7.2 x 1011 primes * 1 IWU/1000 primes)] = 1.52 X 10-9 XPM
I choose a very large number of computers on the network. In reality, there may be far less than 1 million. So User A's payout may be much higher. User B's payout is 10 times as large as User A's on average since his system is 10 times as powerful.