Bitcoin Forum
May 26, 2024, 11:09:31 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 2 3 4 5 [6]
101  Bitcoin / Mining software (miners) / Re: New demonstration CPU miner available on: February 19, 2011, 04:34:30 PM
For those of you on Linux that are itching to try out ufasoft's optimizations (see this thread: http://bitcointalk.org/index.php?topic=3486.0).  one of the optimizations he does is "skip last 3 rounds, because we need not them to calc last 32-bit word of hash [h word]."  I tried this by simply commenting out the final three rounds and it successfully generated shares in slush's mining pool and made things a tiny bit faster (1 or 2 %).  I didn't verify that it works in all cases, someone more familiar with the protocol might want to.

Like this:
        //w13 = add4(SIGMA1_256(w11), w6, SIGMA0_256(w14), w13);
        //SHA256ROUND(d, e, f, g, h, a, b, c, 61, w13);
        //w14 = add4(SIGMA1_256(w12), w7, SIGMA0_256(w15), w14);
        //SHA256ROUND(c, d, e, f, g, h, a, b, 62, w14);
        //w15 = add4(SIGMA1_256(w13), w8, SIGMA0_256(w0), w15);
        //SHA256ROUND(b, c, d, e, f, g, h, a, 63, w15);

        /* store resulsts directly in thash */
102  Bitcoin / Development & Technical Discussion / Re: tcatm's 4-way SSE2 for Linux 32/64-bit is in 0.3.10 on: January 21, 2011, 02:11:10 AM
I made a couple of changes to the sse2 source that sped it up about 5 or 6%:

I changed:
#define add4(x0, x1, x2, x3) _mm_add_epi32(_mm_add_epi32(_mm_add_epi32(x0, x1), x2), x3)
to
#define add4(x0, x1, x2, x3) _mm_add_epi32(_mm_add_epi32(x0, x1),_mm_add_epi32( x2,x3))

It is just re-ordering the adds.  There is a data dependency, each one depends on the result of the one before, the way I reordered it two of the adds are independent.  This function is called a lot of times so that little change can add up. (On an older machine it made no difference so YMMV)

A portion of the nonce calculation is repeated over and over, even though the result is the same.  I moved
nonce = _mm_set1_epi32(In[3]);
nonce = _mm_add_epi32(nonce, offset);
out of the "for(k = 0; k<NPAR; k+=4) {"

Here's a diff
153c153
>     __m128i nonce,preNonce;
---
<     __m128i nonce;
157d156
>     preNonce = _mm_add_epi32(_mm_set1_epi32(In[3]),offset);
179,182c178,180
>         //nonce = _mm_set1_epi32(In[3]);
>         //nonce = _mm_add_epi32(nonce, offset);
>         //nonce = _mm_add_epi32(nonce, _mm_set1_epi32(k));
>         nonce = _mm_add_epi32(preNonce,_mm_set1_epi32(k));
---
<         nonce = _mm_set1_epi32(In[3]);
<         nonce = _mm_add_epi32(nonce, offset);
<         nonce = _mm_add_epi32(nonce, _mm_set1_epi32(k));


I have been running this for a couple of days on the mining pool and have generated shares.
103  Bitcoin / Mining software (miners) / Re: New demonstration CPU miner available on: January 21, 2011, 02:00:02 AM
Yeah, the configure script is not intended to "recognize your cpu."  If you are doing your own builds, you are expected to be able to supply the best compiler flags for your CPU through the CFLAGS environment variable.  This is the standard, recognized method for passing compiler flags to 95% of all configure scripts:

Code:
     CFLAGS="-O3 -march=native" ./configure

-march=native tells recent gcc versions to build programs tuned specificaly for the build machine's CPU (and may not work on other CPUs).  By default, the compiler tries to generate code that is best suited to a wide range of CPUs.


You're right.  since it compiled with 4way support on a different machine I thought the configure script was making the choice.  On further reflection it seems more likely it is because the other machine is running in 64bit mode (which always has sse2).  -march=native didn't give me better results, I don't thing GCC recognizes my chip so uses more generic instructions, I still had to give -march=core2 for best performance.
104  Bitcoin / Mining software (miners) / Re: New demonstration CPU miner available on: January 20, 2011, 03:31:30 AM
I found the configure script didn't correctly recognize my cpu (an I5) on Ubuntu 10.10.  Since it didn't ID it, I didn't get SSE2 4way support.  I added -msse2 -march=core2 to the CFLAGS and it worked (I added it in the Makefile, but adding it in the configure script should work).  If you don't get SSE2 support you can try this.

I also found changing the -O2 to -O4 gave me a bit more than a 2% speed increase.  I'll take every khash I can get.
105  Bitcoin / Development & Technical Discussion / Re: Some Statistics on: August 09, 2010, 01:32:38 PM

I'd like to see the current difficulty and the number of blocks to the next adjustment on this page too.
106  Bitcoin / Bitcoin Discussion / Re: help! Bitcoin Article to be published, please review on: August 09, 2010, 01:22:33 PM
Bitcoins are digital tokens of value that can be exchanged anonymously between users across the internet or stored on disk.

I'd drop the 'of value' wording, that will distract some people who get stuck on "only gold and silver have value"


•   Bitcoins have no central issuer whereas fiat currency is issued at will by a central bank. There will never be more than 21 million Bitcoins in circulation, unlike fiat currency which has no limit.

The second sentence is a bit distracting too, it makes you have to explain why there are only going to be 21 mill coins, then you have to explain that it is just a rule coded in the client and if everyone decided to change it then we could.  More important at this point is that the rate at which they are created is fixed and, for the time period this article will be relevant, the rate won't change.  How about:

•   Bitcoins have no central issuer whereas fiat currency is issued at will by a central bank.  New bitcoins are created at a slow and predictable rate, unlike fiat currency which can be created at the whim of the central bank.

•   Bitcoin ownership is private and not subject to outside inspection and therefore asset monitoring or confiscation for any reason is not possible.
Unless the confiscate the computer with your wallet file on it.  I'd drop the confiscation part since it clearly isn't true.  Remember, there was gold confiscation in the 1930's and gold ownership was also "private and not subject to outside inspection".

How do I use Bitcoin?
My own experience using Bitcoin has been a blast, especially when compared to the slow and cumbersome nature of traditional financial institutions. To use Bitcoin, the place to start is bitcoin.org. There’s no registration or payment required to start – just download the software. After installation, you’re ready to exchange Bitcoins with your friends across the world.

The quantity of services that use Bitcoin is small but steadily growing. Notable websites thus far are bitcoinmarket.com, which allows exchange between various fiat currencies and Bitcoins, and biddingpond.com, which is an implementation of e-bay with Bitcoins. If you want a few coins to start with, go to freebitcoins.appspot.com for some initial bit-capital.
Getting bitcoins to play around with is a vital part of getting started, put it right after the downloading the client part.

My own experience using Bitcoin has been a blast, especially when compared to the slow and cumbersome nature of traditional financial institutions. To use Bitcoin, the place to start is bitcoin.org. There’s no registration or payment required to start – just download the software. After installation, go to freebitcoins.appspot.com for some initial bitcoins and you’re ready to exchange Bitcoins with your friends across the world.

The quantity of services that use Bitcoin is small but steadily growing. Notable websites thus far are bitcoinmarket.com, which allows exchange between various fiat currencies and Bitcoins, and biddingpond.com, which is an like e-bay with Bitcoins


107  Bitcoin / Bitcoin Discussion / Re: What happens when network is split for prolonged time and reconnected? on: August 06, 2010, 07:55:16 PM

An honest client can't really do that without spending the older coins first.  It doesn't *have* to spend the older coins first, but an honest client will not show any preferences towards spending the newest coins.  This would require a previously hacked client, or some rapid coding skills.

You can just rename your wallet file, then any new coins you generate will go in the new wallet and since those are the only coins in there they will be spent first. 

After the re-join, if your chain loses, just copy the saved wallet file back.  If your chain wins, transfer the remaining coins from the new wallet to another machine then copy the wallet back.  No coding skills needed.
108  Bitcoin / Bitcoin Discussion / Re: What happens when network is split for prolonged time and reconnected? on: August 06, 2010, 03:56:21 PM
Also, there is a case of diminishing risks as the number of blocks grows and the number of nodes continues to grow.  Relative to the existing coins, new coins represent a smaller percentage of the monetary base with passing time.  Even though the risks of catching a bad coin created since a split increases with time as well, they are relatively remote, and tend towards zero over the next 120 years.  But the risks also tend toward zero at a log, not in a linear progression.

But if you knew there was a split in progress and you generated coins, you would want to spend them as quickly as possible, just in case you were on the shorter chain when the network reconnected.  This would keep the risks much higher than the math would suggest.
109  Bitcoin / Bitcoin Discussion / Re: What happens when network is split for prolonged time and reconnected? on: August 03, 2010, 03:12:42 PM
If enough people are using the network, and the split were not due to open hostilities, it is possible that there would be intermittent connectivity between the two networks.  This would serve to re-sync the block chains but could hurt the reliability of the system with transactions disappearing at random.

Imagine a cable cut, or series of cable cuts that isolated a block of countries.

- Someone with bitcoin might initiate an oversees dialup connection
- someone might have a satellite connection

These would probably be intermittent since they may spend most of their time on their 'normal' internet since most of what they want is there.  Everytime they connected the blocks would start flowing from their computer to the rest of the world, then when they re-connected to their normal service they would flow to the rest of their country.

Someone with bitcoin might fly to one of those countries to visit, when they connected to a local service, the blocks on their computer would flow to the disconnected countries, the longest block chain wins.  When they come back, again, the blocks from the disconnected countries would flow to the rest of the world.
Yes...
But what you describe is only possible after someone have noticed and prooved the network split is happening.
Do you propose any method to detect the beginning of the network split?


No, I am saying that given enough bitcoin users this is likely to happen, there is no need for them to notice that the bitcoin network split, either they notice that they can't check email/access websites outside of their local area and initiate a temporary alternate connection to the "rest of the world" or they just happen to take a laptop with bitcoin on an airplane.

I am also not saying it is a good thing.  having a single split for a fairly long period of time lets people come up with a solution, having many splits that each last for a few hours means that transactions randomly disappear and that hurts confidence in the system.
110  Bitcoin / Development & Technical Discussion / Re: Protocol Buffers for Bitcoin on: August 03, 2010, 02:46:33 PM

Indeed, but the version packet is probably the smallest packet of all the ones sent, so we'll gain more elsewhere. Also, keep an eye on the main point. The fact that protocol buffers are smaller is a nice aside to the fact that they're Forwards compatible and make bitcoin portable between languages.

Debugging is also easier with non-custom formats.  Instead of being the only one using it, you have many other people on different projects looking for and fixing bugs.  You also often get tools for decoding/displaying the packet to make it easier to see if something is wrong.  IMHO the size of the packet is the least important reason.
111  Bitcoin / Bitcoin Discussion / Re: What happens when network is split for prolonged time and reconnected? on: August 03, 2010, 01:07:23 PM
If enough people are using the network, and the split were not due to open hostilities, it is possible that there would be intermittent connectivity between the two networks.  This would serve to re-sync the block chains but could hurt the reliability of the system with transactions disappearing at random.

Imagine a cable cut, or series of cable cuts that isolated a block of countries.

- Someone with bitcoin might initiate an oversees dialup connection
- someone might have a satellite connection

These would probably be intermittent since they may spend most of their time on their 'normal' internet since most of what they want is there.  Everytime they connected the blocks would start flowing from their computer to the rest of the world, then when they re-connected to their normal service they would flow to the rest of their country.

Someone with bitcoin might fly to one of those countries to visit, when they connected to a local service, the blocks on their computer would flow to the disconnected countries, the longest block chain wins.  When they come back, again, the blocks from the disconnected countries would flow to the rest of the world.
112  Bitcoin / Bitcoin Discussion / Re: Flood attack 0.00000001 BC on: July 23, 2010, 12:56:28 AM
What would happen if someone modified their client to not offer to pay the fee, and also modified their client to not require the fee?

Here's my best guess:
* They generate a 0.00000001 BC payment (but don't include the fee)
* This transaction goes to the clients peers
* The peers don't include it in the block they are solving since fee not paid.
* Do the peers still pass the transaction along to the rest of the network?
* A block gets solved without the transaction in it
* client notices its transaction wasn't in the block and re-broadcasts the transaction?
* eventually client solves a block itself and that transaction is included in it so it goes out to the rest of the network
113  Economy / Marketplace / Re: BitCoin auction on Listia on: July 22, 2010, 05:02:16 PM
What is the check on the managers? Why can't they just issue themselves credits?
Listia credits are centrally controlled, the people who control it can do whatever they want, including give themselves credits.  This is like any other credit/money scheme with central control (and unlike bitcoin).  In fact, you can get credits at random times for doing things like checking in, listing auctions, giving feedback, etc.  Thus, there is inflation on Listia.

Craigslist freeloaders are the people who actually buy stuff, is this right?
As I mentioned in my second post, the freeloaders comment applies strictly to the "give away free" section of craigslist, so no, they don't actually buy stuff.
114  Economy / Marketplace / Re: BitCoin auction on Listia on: July 21, 2010, 02:19:52 PM
What do freeloaders do on craigslist? Are listia credits pegged to the dollar?

On craigslist (this is strictly for the give away free section) someone can get as much as they want but never have to give any of their stuff away,  they pull value from the system (by taking free stuff) without adding any value (by giving stuff away).  On listia, you have to put up auctions of your own in order to get the credits you need to bid on other stuff.

Listia credits are not convertable to any other system (ie, not pegged to the dollar). You can use them exclusively on listia.  However, you can use them to get real things so they have value.  You are not allowed to auction cash but you can auction gift cards.  Based on the value of the items I see being auctioned I think the value of a credit on listia is somewhere between half a cent and a cent.

Interestingly, you can pretty easily convert bitcoins to and from cash but it is harder to convert them to "stuff".  Listia is the opposite, it is easy to convert between listia credits and "stuff" but hard to convert them to cash.  I think this makes them complementary systems, you can auction your bitcoins for points which you buy stuff with and you can auction stuff and use the points to bid on bitcoins.
115  Economy / Marketplace / BitCoin auction on Listia on: July 21, 2010, 01:49:39 AM
I saw someone had mentioned Listia in a different thread.  I have decided to test the waters by auctioning 5 bitcoins on Listia.

http://www.listia.com/?r=135367
Search for BitCoins
Auction Ends: Sat July 31st 1:40 AM AZOST (Not sure what TZ that is, but it is 10 days from this post.)

Listia lets you auction off stuff you have for credits.  You can then use those credits to bid on other auctions.  No need for cash to change hands.  In some ways it is like craigslist but without freeloaders.  You get some credits just for signing up and at random other times.

Pages: « 1 2 3 4 5 [6]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!