The subsidy is currently 5,000,000,000 units, giving you a lot of dynamic range to play with. That will not always be true. And rounding to the "nearest" satoshi can be gamed, for trivial gain at first to be sure.
It is obvious to me that by the time the generation reward is significantly reduced, satoshis will be split so what is now known as 1 bitcoin will be more than 100,000,000 atomic units. Even in the highly unlikely case that a satoshi will be significant, since the value is rounded down, this will only create a preference to weights which result in an integer, which causes no harm. Once again, implementation should follow design, and the "2.1E+15 atomic units" detail can be changed. You are probably right about that. Oh, but did you notice that you changed your scheme already? From "round to nearest" to "round down". One of those was probably just a silly mistake, the sort that happens to everyone from time to time. Simplicity has a value that is hard to quantify. Also, I'm pretty sure that your idea will create total chaos. Not less forks, but more. Lots more. Like on nearly every block. Not at first, necessarily, but as the subsidy shrinks relative to the transaction fees for sure.
Did I say it will create less forks? I predict that the equilibrium found will be less than 10 minutes, which means more forks. I doubt it will be "on nearly every block". As I explained, if it comes to that, miners will choose a larger weight which decreases their invalid rate. Actually, miners will choose the weight based on whether they got the last block or not, and whether they are getting paid kickbacks to support/override blocks from the previous miner. For most miners, I think the best payoff would be prevDifficulty+1, except when they are working on extending their own block, in which case it would be the minimum, or close to it. The exact game theory optimum would depend the acceptable range. I didn't talk yet about how to handle transaction fees, so you may want to defer judgement until then. Hint: You won't be able to get the entire fee of all floating transactions by creating a very light block.
Oh? Option 1. You pay "easy" blocks less and put the balance into a fund used to pay extra for "hard" blocks. Equilibrium at 10 minutes, which is what you wanted to avoid. Option 2. You pay "easy" blocks less, and the remainder carries into the next block. Equilibrium at X minutes, which is no more optimal than 10 was. Option 3. You pay "easy" blocks less, and the remainder is lost. Equilibrium at 10 minutes. Option 4. You pay "easy" blocks less, and "hard" blocks more, creating money out of thin air. Equilibrium at whatever the weight cap is. Did I miss any?
|
|
|
The subsidy is based on an exact integer operation.
And this is relevant how? Multiply the integer block reward by the integer network target, divide by the specific target. The reward will be rounded to the nearest satoshi but that's immaterial. Implementation details should serve the design, not the other way around. The subsidy is currently 5,000,000,000 units, giving you a lot of dynamic range to play with. That will not always be true. And rounding to the "nearest" satoshi can be gamed, for trivial gain at first to be sure. Also, I'm pretty sure that your idea will create total chaos. Not less forks, but more. Lots more. Like on nearly every block. Not at first, necessarily, but as the subsidy shrinks relative to the transaction fees for sure.
|
|
|
The subsidy is based on an exact integer operation.
|
|
|
Maybe they were a gift from someone that trusts you to do the right thing with them.
|
|
|
My personal p2pcoin rig farm found a block. I haven't been watching every coinbase looking for the [P2COINv0] tag, so this might not have been the very first one found with this setup, but it is the first one that I know of. Amencon, did your node finish downloading the chains and start up?
|
|
|
Woohoo! I finally got my first p2pool block. I had been starting to get worried because my rough estimates of my personal expected time to block had already come and gone. Even when you know it is an estimate, and an estimate of the 50% probability time, no less, I've gotta say, it can still be hard not to get worried.
|
|
|
0.4 released to upgrade p2pool to 0.11.1. See forrestv's post. The network will switch automatically when adoption hits 95%, so there is no hard date. Better sooner than later, I suppose, but doesn't appear to be super urgent yet.
|
|
|
Pardon my ignorance, but if the attacker has stable 51%, even if we all change our clients to support the new suggested rules, all our blocks will be still rejected, won't they?
No, because the attack blocks would be invalid, and thus not in competition for the regular blocks, at least with the nodes that have adopted the new rules. But, if such nodes will be less than half of network, the prevailing (so considered true) blockchain will skip our blocks. As a result, the blockchain will be hard forked with all our "sane" blocks scheduled soon or less to be completely overwritten. I still suppose that the rules are the same for all, regardless for bad or good boys. There are just majority or minority boys left. (No pun intended). But our fork would never be overwritten by their fork, because we consider their blocks to be invalid regardless of the embedded difficulty.
|
|
|
Gavin, your solution would need a change in protocol though and would mean every user in the network has to update their (potentially 3rd party) client, right?
Not all, no. Just enough, which is tricky to define. If the bulk of the exchanges (which really means just Mtgox right now, but that is an accident of history and not a rule) were on the new rules, that fork would be the most useful fork. Nodes would gravitate to it, as users that wanted to cash out, or pay people that wanted to cash out, or pay people that wanted to pay people that wanted to cash out, etc, etc, would have a strong incentive to get on. The nice thing about doing it early would be that it would make a whole class of potential 51% attacks pointless. Perhaps that should be a little bit less far down on the TODO list after all. Pardon my ignorance, but if the attacker has stable 51%, even if we all change our clients to support the new suggested rules, all our blocks will be still rejected, won't they?
No, because the attack blocks would be invalid, and thus not in competition for the regular blocks, at least with the nodes that have adopted the new rules.
|
|
|
I just tested this out. I didn't have a brand new USB drive, but I have a pile of old ones, so I used DD to zero out a spare 4GB drive. Then I plugged it into a windows box (XP) and formatted it as FAT32. Then used unetbootin on Windows to write the 0.3.1 ISO image and used the Windows USB disconnect thing. Then I switched off one of my rigs, plugged it in, turned it back on.
Booted fine, mining away as I type this.
I googled the messages you are getting, and they weren't very helpful. Maybe try different RAM? Seems like a long shot, but someone else reported success that way.
|
|
|
Hey kjj,
Just put together a small rig (5830 and 5850 currently with 4GB RAM) and thought I'd test this out. I know very little about linux as I've only used ubuntu and BT before and haven't used them heavily, so if you can help me get this working I'm sure almost anyone else would be able to do it too.
I downloaded the latest 0.3.1 version and used UNetBootin to burn it to a thumbdrive (32GB).
When I boot from the USB stick I see a boot menu a few options:
Default: error message "cat: can't open '/sys/block/*/removable' : No such file or directory" (repeated many times) LinuxCoin (all): error message "cat: can't open '/sys/block/*/removable' : No such file or directory" (repeated many times) p2pcoin: error message "Invalid or corrupt kernel image"
Any idea what the problem might be?
In the meantime I'll try re-downloading the torrent in case the download got corrupted for some reason.
Thanks!
After you ran unetbootin, did you properly dismount the drive before unplugging it?
|
|
|
How might that change the design thermally and cost-wise?
I don't see the point. Gold is a worse heat conductor that copper. Maybe you meant silver not gold? Either way, I don't know. I only know that one can meaningfully lower the thermal resistance of an FPGA design by connecting as many pins as practical using as big traces as one could fit using the standard copper-on-epoxy low-volume PCBs. OK interesting to know. I just wondered because a board that I have (the thing in my sig) is absolutely slathered in gold, at almost every terminal. Gold has good surface properties for physical connections, but lousy bulk properties for traces. Also, it is very expensive. Copper is 3-4 $ per pound, while gold is $1650 per ounce. A standard circuit board uses 1 or 2 ounces per square foot, per side.
|
|
|
0.3.1 posted. CD booting works again, at least for me. Let me know if anyone else has problems with it.
|
|
|
It might be useful to have a standardized file format for offline BTC transactions...
At least one has been proposed. See BIP 10.
|
|
|
This has been discussed at length in other threads. I think the most recent useful thread was the one from etotheipi where we discussed a format/syntax/protocol for transaction proposals. Also, see the "todo" link in my sig.
|
|
|
I tried version .3 from a DVD and USB. When booting from the DVD I got the p2pcoin screen and it just counts down from 10 and keep restarting back to 10. When I tried from USB using UNETBOOTIN it just brought up a blank terminal window with "BOOT:". I will keep watching this and test when the next version comes out.
That's odd. I've never seen that before. I'll check it out tomorrow morning. Ok, the 0.3 ISO posted does fail to boot when burned to a CD. I'll have 0.3.1 out with a fix soon. I just tested it by using unetbootin on a Windows box to write it to a formatted USB stick. For me, the USB boot still works fine. Is the partition on your USB device marked as bootable?
|
|
|
I tried version .3 from a DVD and USB. When booting from the DVD I got the p2pcoin screen and it just counts down from 10 and keep restarting back to 10. When I tried from USB using UNETBOOTIN it just brought up a blank terminal window with "BOOT:". I will keep watching this and test when the next version comes out.
That's odd. I've never seen that before. I'll check it out tomorrow morning.
|
|
|
I just wanted to pop in and say that the stuff I ordered arrived quickly.
Of course, now that it is here, it isn't lasting as long as I had hoped, but that is completely my fault.
|
|
|
hey guys.
so i've been using p2pool fine for a couple weeks now with my meager, just for the heck of it 80m/hash, but for reasons beyond me, on the 14th it stopped actually generating payments. p2pool's still running, ufasoft miner's running (via gui miner, for cuda mining on my nividia (it's what i have for now.)) and both appear as though all is well... any ideas?
i will gladly post screenshots and such if need be, but as i said, it appears as though it's all working. i don't think there were any changes to the system since then either.
With just 50 Mhash/sec, you might have just been unlucky enough not to have any shares in the last few blocks. In your p2pool logs, look for these numbers: Local: X MH/sec ... Expected time to share: Y hours. X should be somewhere near 50, and Y is probably around 12 hours.
|
|
|
My p2pool nodes are running bitcoind in RAM. I expect this will continue to be practical for quite a while.
|
|
|
|