glongsword


August 25, 2013, 05:46:07 AM 

... secondly.. since we dont use the whole number of the diff, can I assume that the chainsperday calculation takes into account the whole number? ... what about "difficulty" : 10.68146938,? what am i missing?
I believe the chainsperday is the number of integerpartofthedifficultylength chains the miner expects to find each day. I have no idea how it actually works, so maybe this is a gross simplification, but I believe it finds about that number of 10 length chains in your example, but only (1.68146938)*100% of those chains that it finds are going to be accepted by the other miners (they have to have some property that only that fraction of the chains satisfy). At least that makes sense if the formula is correct, which I'm not sure of.




SlyWax


August 25, 2013, 07:35:44 AM 

If you want to get an estimation of your block/day : Take one minus the decimal part of the difficulty and multiply it with your chain/day.
block/day = (1  dec(difficulty) ) * chainsperday
From your example : "chainsperday" : 0.28633614, "difficulty" : 9.68146938, block/day = (1  0.68146938) * 0.28633614 = 0,091206828 = around one block every 11 days !
firstly, finally a forum search where i found what I was looking for secondly.. since we dont use the whole number of the diff, can I assume that the chainsperday calculation takes into account the whole number? with the example From your example : "chainsperday" : 0.28633614, "difficulty" : 9.68146938, block/day = (1  0.68146938) * 0.28633614 = 0,091206828 = around one block every 11 days !
what about "difficulty" : 10.68146938,? what am i missing? There is a small addon I should do here, is that the formula doest take into account the chain of higher length than the current. So to be exact you should add the difficulty difference between the two chain length times the chainsperday. After Sunny white paper the difficulty difference between the two chain length should be around 36x. I don't know if this number is still accurate between 9 and 10 chain length. Anyway you should add : chainsperday/36 (and again (chainsperday/36)/36 ) to your calculation, witch is not a big difference. From the example : 0,091206828 + 0.28633614 / 36 = 0,091206828 + 0,007953782 = 0,09916061 So well around one block every 10 days As for diff 10.68146938 the chainperday should not be the same.




Dumbo
Member
Offline
Activity: 114
Merit: 10


August 25, 2013, 07:36:56 AM 

so does anyone know how to replenish the keypool for solo mining on different servers?
I tried
Help>Debug>Console ...then Keypool = 1000
it threw a error  > "Method not found"
Next I made a primecoin.conf file and put setkeypool = 1000 in that...
How do I know if that worked?




Trillium


August 25, 2013, 08:21:26 AM 

Difficulty is clearly on the rise again !
http://192.241.170.170/Actually, the difficulty is CLEARLY stable at the moment. It has increased <5% over diff 9 in the last two weeks.The optimizations made in HP10 may or may not increase block rate and hence the network may increase the difficulty, although HP10 has been out for a while now and the diff has barely budged, so it's not looking like we'll see an increase.

BTC:1AaaAAAAaAAE2L1PXM1x9VDNqvcrfa9He6



Tamis


August 25, 2013, 08:26:47 AM 

What do you mean out for a while ?
It was released yesterday !




rdebourbon
Member
Offline
Activity: 65
Merit: 10


August 25, 2013, 08:29:10 AM 

What do you mean out for a while ?
It was released yesterday !
The major sieve updates were made about 10 days ago according to git.. So those who build from source have had the update for a while..

XPM:AUwKMCYCacE6Jq1rsLcSEHSNiohHVVSiWv LTC:LV7VHT3oGWQzG9EKjvSXd3eokgNXj6ciFE BTC:1Fph7y622HJ5Cwq4bkzfeZXWep2Jyi5kp7



Tamis


August 25, 2013, 08:31:20 AM 

Man were they quiet about it !




mikaelh (OP)


August 25, 2013, 08:54:42 AM 

I start primecoin and it crashes... Used to work fine and suddenly started acting out...replaced with the new hp10 and same thing. Gonna have to fiddle some more with it. ARGH I haven't seen a crash like that. Can you post your debug.log and primecoin.conf?




mikaelh (OP)


August 25, 2013, 09:01:37 AM 

If you want to get an estimation of your block/day : Take one minus the decimal part of the difficulty and multiply it with your chain/day.
block/day = (1  dec(difficulty) ) * chainsperday
From your example : "chainsperday" : 0.28633614, "difficulty" : 9.68146938, block/day = (1  0.68146938) * 0.28633614 = 0,091206828 = around one block every 11 days !
firstly, finally a forum search where i found what I was looking for secondly.. since we dont use the whole number of the diff, can I assume that the chainsperday calculation takes into account the whole number? The formula posted by SlyWax isn't accurate. He assumed that the decimal part would behave linearly while in reality it seems to behave logarithmically. The chains/day estimate does account for the integer part.




mikaelh (OP)


August 25, 2013, 09:36:08 AM 

Difficulty is clearly on the rise again !
http://192.241.170.170/Actually, the difficulty is CLEARLY stable at the moment. It has increased <5% over diff 9 in the last two weeks.The optimizations made in HP10 may or may not increase block rate and hence the network may increase the difficulty, although HP10 has been out for a while now and the diff has barely budged, so it's not looking like we'll see an increase. Well, I'm pretty impressed with the difficulty increase so far. You have to remember that it's scaling logarithmically which means that a 5% increase is pretty big at this point. HP10 is probably still being deployed so the difficulty will keep going up. Also ypool seems to be down which means the network may have lost quite a lot of power at the same time. If ypool really is down and difficulty is still going up, I'll be very impressed.




mikaelh (OP)


August 25, 2013, 09:45:19 AM 

What do you mean out for a while ?
It was released yesterday !
The major sieve updates were made about 10 days ago according to git.. So those who build from source have had the update for a while.. 10 days ago was when I wrote most of the code but I didn't push it. I wanted to test it first but due to my lack of time it took a few days. So in the end it was only me benefiting from the optimization unless someone else also implemented jh00's idea (which was out at least a couple of days before I wrote my version of it).




Tamis


August 25, 2013, 09:53:29 AM 

Ah that's better ! Perfectly normal you use your code before anyone else, but I was surprised to hear that some others were using it and keeping it "secret". Thanks again for your work, haven't donated yet but will ypool is down indeed, I wanted to check their stats since i'm pretty sure hp10 is going to hit them pretty hard, site is down. So the current difficulty increase is hp10 only !




mikaelh (OP)


August 25, 2013, 10:08:54 AM 

Well, testing the code ahead of time obviously does help to pay for the development. My testing started around Aug 19th so I did probably contribute a bit to the difficulty spike there. I am a bit surprised that nobody was paying attention to jh00's idea of extending the sieve. It's the biggest optimization in weeks and I only saw a few forum posts about it. It was only included in the official jhPrimeminer and none of the popular forks had it. But then again the mining code in the forks is based on my code and the original jhPrimeminer is different.




SlyWax


August 25, 2013, 10:11:48 AM 

If you want to get an estimation of your block/day : Take one minus the decimal part of the difficulty and multiply it with your chain/day.
block/day = (1  dec(difficulty) ) * chainsperday
From your example : "chainsperday" : 0.28633614, "difficulty" : 9.68146938, block/day = (1  0.68146938) * 0.28633614 = 0,091206828 = around one block every 11 days !
firstly, finally a forum search where i found what I was looking for secondly.. since we dont use the whole number of the diff, can I assume that the chainsperday calculation takes into account the whole number? The formula posted by SlyWax isn't accurate. He assumed that the decimal part would behave linearly while in reality it seems to behave logarithmically. Well it's not linear. If you plot the number of days to find a block VS fractional difficulty with my formula ( with chains/day=1 ), you get : http://fooplot.com/plot/84iljd7anqThen you have to add the chance of next length chain to the number as stated in my previous post (chainPerDay/36) The chains/day estimate does account for the integer part.
Do you mean that the chains/day change with the fractional difficulty ? If it's the case, then to compare two chains/day number we would have to account for the respective difficulty.




Lauda
Legendary
Offline
Activity: 2674
Merit: 2965
Terminated.


August 25, 2013, 10:38:27 AM 

Good work. Difficulty going up

"The Times 03/Jan/2009 Chancellor on brink of second bailout for banks" 😼 Bitcoin Core ( onion)



cabin


August 25, 2013, 12:21:16 PM 

The formula posted by SlyWax isn't accurate. He assumed that the decimal part would behave linearly while in reality it seems to behave logarithmically. The chains/day estimate does account for the integer part.
Looking at the code, unless there is a bug in the algorithm that is say rejecting 10.5 length chains at the moment, it *should* behave linearly. Diff 9.999 should be same as 10, but but from the charts it is obviously not. I wonder if this is because all the current miners are optimized to sieve for 9 chains at the moment? I wonder if the the difficulty would look more linear if miners switch to sieving for 10 chains now that most 9 chains won't solve a block. I would love for a sievelength param to be added to the build that would sieve for chains of a set length. I would do it myself and experiment but I am having some difficulty building the project on windows, and I suspect it is at least as hard as bitcoin to build. I can build the ypool miner easily and from those experiments the sieve length is quite effective at optimizing for chains of a desired length.




binaryFate
Legendary
Offline
Activity: 1512
Merit: 1012
Still wild and free


August 25, 2013, 12:24:36 PM 

I would love for a sievelength param to be added to the build that would sieve for chains of a set length.
+1

Monero's privacy and therefore fungibility are MUCH stronger than Bitcoin's. This makes Monero a better candidate to deserve the term "digital cash".



mikaelh (OP)


August 25, 2013, 12:39:04 PM 

Looking at the code, unless there is a bug in the algorithm that is say rejecting 10.5 length chains at the moment, it *should* behave linearly. Diff 9.999 should be same as 10, but but from the charts it is obviously not. I think the distribution of the Fermat's remainder is skewed. Sunny mentioned that briefly in his paper too. The skewed distribution is probably caused by the repeated exponentiation done during the Fermat's test. I wonder if this is because all the current miners are optimized to sieve for 9 chains at the moment? I wonder if the the difficulty would look more linear if miners switch to sieving for 10 chains now that most 9 chains won't solve a block. I would love for a sievelength param to be added to the build that would sieve for chains of a set length. I would do it myself and experiment but I am having some difficulty building the project on windows, and I suspect it is at least as hard as bitcoin to build.
I can build the ypool miner easily and from those experiments the sieve length is quite effective at optimizing for chains of a desired length. I'm a bit doubtful that switching the target difficulty to 10 would be beneficial at this point. It might become beneficial when difficulty is around 9.9 but I haven't really investigated that. Also it's good to remember that optimal mining parameters are probably not the same for ypool and solo mining. Ypool miners are concerned with maximizing the value of their shares. Previously that system was exploited using shorter chains. Now that the system was changed radically it could be possible to exploit it with longer chains. The building procedure for the stock Primecoin client should be the same as for Bitcoin. For my version you also need libgmp on top of that.




cabin


August 25, 2013, 01:13:00 PM 

Looking at the code, unless there is a bug in the algorithm that is say rejecting 10.5 length chains at the moment, it *should* behave linearly. Diff 9.999 should be same as 10, but but from the charts it is obviously not. I think the distribution of the Fermat's remainder is skewed. Sunny mentioned that briefly in his paper too. The skewed distribution is probably caused by the repeated exponentiation done during the Fermat's test. I wonder if this is because all the current miners are optimized to sieve for 9 chains at the moment? I wonder if the the difficulty would look more linear if miners switch to sieving for 10 chains now that most 9 chains won't solve a block. I would love for a sievelength param to be added to the build that would sieve for chains of a set length. I would do it myself and experiment but I am having some difficulty building the project on windows, and I suspect it is at least as hard as bitcoin to build.
I can build the ypool miner easily and from those experiments the sieve length is quite effective at optimizing for chains of a desired length. I'm a bit doubtful that switching the target difficulty to 10 would be beneficial at this point. It might become beneficial when difficulty is around 9.9 but I haven't really investigated that. Also it's good to remember that optimal mining parameters are probably not the same for ypool and solo mining. Ypool miners are concerned with maximizing the value of their shares. Previously that system was exploited using shorter chains. Now that the system was changed radically it could be possible to exploit it with longer chains. The building procedure for the stock Primecoin client should be the same as for Bitcoin. For my version you also need libgmp on top of that. Ah ok, if the distribution is heavily skewed, and the number of miners was increasing rapidly, that could explain some of it. Well, if the parameter is added I would try it out now even if it is too early and see what happens.




hasle2


August 25, 2013, 02:16:18 PM 

Looking at the code, unless there is a bug in the algorithm that is say rejecting 10.5 length chains at the moment, it *should* behave linearly. Diff 9.999 should be same as 10, but but from the charts it is obviously not. I think the distribution of the Fermat's remainder is skewed. Sunny mentioned that briefly in his paper too. The skewed distribution is probably caused by the repeated exponentiation done during the Fermat's test. I wonder if this is because all the current miners are optimized to sieve for 9 chains at the moment? I wonder if the the difficulty would look more linear if miners switch to sieving for 10 chains now that most 9 chains won't solve a block. I would love for a sievelength param to be added to the build that would sieve for chains of a set length. I would do it myself and experiment but I am having some difficulty building the project on windows, and I suspect it is at least as hard as bitcoin to build.
I can build the ypool miner easily and from those experiments the sieve length is quite effective at optimizing for chains of a desired length. I'm a bit doubtful that switching the target difficulty to 10 would be beneficial at this point. It might become beneficial when difficulty is around 9.9 but I haven't really investigated that. Also it's good to remember that optimal mining parameters are probably not the same for ypool and solo mining. Ypool miners are concerned with maximizing the value of their shares. Previously that system was exploited using shorter chains. Now that the system was changed radically it could be possible to exploit it with longer chains. The building procedure for the stock Primecoin client should be the same as for Bitcoin. For my version you also need libgmp on top of that. Would a sieve for 10 chain work just as well for 9 chains? Or would it be less efficient for 9 chains than a 9 chain sieve? Or does constructing a sieve for 10 chains take that much longer that it would not be worth it?




