Pages:
Author

Topic: Bitcoin is strangling my computer (Read 2154 times)

hero member
Activity: 742
Merit: 500
April 29, 2012, 01:55:14 PM
#30
Why is the actual bitcoin client so cumbersome?Without having the 'generate' function turned on, it seems pretty lightweight to me.
I usually find just the initial blockchain download cumbersome.  After that, my system runs fine, but I also have a pretty powerful system.

Each block has to be verified, and doing this requires a bunch of math that can slow a CPU down.
newbie
Activity: 7
Merit: 0
April 29, 2012, 12:26:27 PM
#29
Why is the actual bitcoin client so cumbersome?Without having the 'generate' function turned on, it seems pretty lightweight to me.
hero member
Activity: 742
Merit: 500
April 29, 2012, 12:04:20 PM
#28
blockchain.info is a web wallet that gives you full control of the private keys if you don't want a full desktop app.
newbie
Activity: 6
Merit: 0
April 29, 2012, 11:09:16 AM
#27
I noticed this too! My FPS for games was getting killed JUST running bitcoin. No mining involved. Thanks for all the useful info Smiley
full member
Activity: 152
Merit: 100
April 28, 2012, 11:38:42 PM
#26
Having a file open for reading simply means that the OS will prevent other programs from trying to write to that file, and has nothing to do with the physical operation of the hard drive. The hard drive is not actually doing anything when a file is "open". It only actually reads data from the disk when the file is first opened, after that it is free to do other things. Normally it only takes a fraction of second to actually read the data, but extremely large files take a lot longer.
This is incorrect. Opening a file merely returns a reference to it; the contents of the file are not read into memory. At most a few blocks from the beginning of the file (at most a few MB) might be read in under the expectation that the application will ask for them next. The rest of the data is only read from the hard disk due to requests from the application. Once the data has been read into memory, future requests for the same data may not require access to the disk--but there is a limit to how much can be cached. In general, the total sizes of all the open files add up to much more than the amount RAM available to cache them. If the data isn't in the cache it will have to be re-read from the disk.

Requests from multiple applications can be interleaved, and a good I/O scheduler will make sure that requests from one application do not completely prevent other applications from accessing the disk. There will be a impact on performance, of course, since the disk is shared, and if a lot of seeking is required to access both files the slowdown can be significant compared to linear reads. Minimizing seeking by grouping nearby requests is also part of the I/O scheduler's job.
full member
Activity: 152
Merit: 100
April 28, 2012, 11:25:21 PM
#25
I was having similar performance issues myself. I've been running the official Bitcoin client since the blockchain was only a hundred MB or so, and it was taking several minutes just to get past the splash screen. Defragmenting the blockchain database reduced that to a few seconds. Apparently growing a file by over a gigabyte in small increments, over a long period of time, leads to very inefficient access patterns. Who would have thought?  Smiley

Anyway, to defragment the files I just made copies of blk0001.dat and blkindex.dat in the wallet directory ($HOME/.bitcoin by default on Unix platforms), and then renamed the copies over the original files. To avoid corruption, be sure the program isn't running at the time.
legendary
Activity: 4522
Merit: 3183
Vile Vixen and Miss Bitcointalk 2021-2023
April 27, 2012, 11:46:08 PM
#24
[...]
There's no such thing as a "percentage" of disk I/O. A hard drive can physically only access one file at a time. If one program is accessing file A, and another program wants to access file B, and files A and B are both on the same disk, the second program will not be able to continue running until the first program has finished what it's doing. There's no way for each program to get "50%" of the disk, that just doesn't make sense.

It is true that a hard drive can read only one allocation block at a time. However, it takes only a fraction of a second. Then it moves to serve another IO request. Reading a file consists of a lot of IO requests. You can read many files concurrently without problem. As you type, OS has dozen of different files open for reading, including registry and all dlls.

There are mechanisms in OS to prohibit concurrent modification of the same file. However, what file BitCoin is using that Windows or Firefox needs?
Having a file open for reading simply means that the OS will prevent other programs from trying to write to that file, and has nothing to do with the physical operation of the hard drive. The hard drive is not actually doing anything when a file is "open". It only actually reads data from the disk when the file is first opened, after that it is free to do other things. Normally it only takes a fraction of second to actually read the data, but extremely large files take a lot longer.
newbie
Activity: 9
Merit: 0
April 27, 2012, 11:15:02 PM
#23
[...]
There's no such thing as a "percentage" of disk I/O. A hard drive can physically only access one file at a time. If one program is accessing file A, and another program wants to access file B, and files A and B are both on the same disk, the second program will not be able to continue running until the first program has finished what it's doing. There's no way for each program to get "50%" of the disk, that just doesn't make sense.

It is true that a hard drive can read only one allocation block at a time. However, it takes only a fraction of a second. Then it moves to serve another IO request. Reading a file consists of a lot of IO requests. You can read many files concurrently without problem. As you type, OS has dozen of different files open for reading, including registry and all dlls.

There are mechanisms in OS to prohibit concurrent modification of the same file. However, what file BitCoin is using that Windows or Firefox needs?
legendary
Activity: 4522
Merit: 3183
Vile Vixen and Miss Bitcointalk 2021-2023
April 27, 2012, 11:02:02 PM
#22
IO that is possible. However, BitCoin should compete with other applications for IO and never get more than 50% when something else is doing IO. That should not lock up the computer.

There's no such thing as a "percentage" of disk I/O. A hard drive can physically only access one file at a time. If one program is accessing file A, and another program wants to access file B, and files A and B are both on the same disk, the second program will not be able to continue running until the first program has finished what it's doing. There's no way for each program to get "50%" of the disk, that just doesn't make sense.
newbie
Activity: 9
Merit: 0
April 27, 2012, 10:44:59 PM
#21
I have similar problem, computer freezes for a moment (15s) when BitCoin client is open. CPU usage is not high, physical memory is still available. What resource is it starving my poor computer of?

What o/s, cpu, and amount of ram do you have?

My low-end laptop runs particularly bad when I combine Skype, Chrome, XChat plus the Bitcoin client (on Ubuntu 11.04).  When using a different browser or without Skype and XChat running simultaneously the problem doesn't seem to occur.  I haven't upgraded to Bitcoin v0.6 yet.

Windows XP
1GB RAM but only 672 MB are used
Pentium 4 3.00 GHz buy only 5-7% are used
I use Firefox. Practically everything else is closed. That is the first thing I have done to eliminate interference.

IO that is possible. However, BitCoin should compete with other applications for IO and never get more than 50% when something else is doing IO. That should not lock up the computer.
legendary
Activity: 2506
Merit: 1010
April 27, 2012, 10:24:38 PM
#20
I have similar problem, computer freezes for a moment (15s) when BitCoin client is open. CPU usage is not high, physical memory is still available. What resource is it starving my poor computer of?

What o/s, cpu, and amount of ram do you have?

My low-end laptop runs particularly bad when I combine Skype, Chrome, XChat plus the Bitcoin client (on Ubuntu 11.04).  When using a different browser or without Skype and XChat running simultaneously the problem doesn't seem to occur.  I haven't upgraded to Bitcoin v0.6 yet.
legendary
Activity: 1708
Merit: 1010
April 27, 2012, 09:28:07 PM
#19
I imagine the problem will only get worse as bitcoin becomes more popular. It's a bit worrying for the future of bitcoin. Will the cumulative burden eventually overwhelm even hi-spec dedicated bitcoin servers?


Yes and no.  Eventually running a full client is going to be like drinking from a firehose, but only professional miners, wallet services, banks, etc are going to bother.  Most people will be using thin clients that don't maintain a complete blockchain that is dependent upon a central server to tell it what transactions are important.  Much like BitcoinSpinner on Android or Electrum works now.
newbie
Activity: 43
Merit: 0
April 27, 2012, 09:23:18 PM
#18
Are you sure that you are holding it the right way?
legendary
Activity: 4522
Merit: 3183
Vile Vixen and Miss Bitcointalk 2021-2023
April 27, 2012, 09:20:30 PM
#17
I have similar problem, computer freezes for a moment (15s) when BitCoin client is open. CPU usage is not high, physical memory is still available. What resource is it starving my poor computer of?

Disk I/O. The blockchain file is over a gigabyte in size, so it takes a while to read or write to it, and while Bitcoin is doing that, you won't be able to anything else with your hard drive until it's finished.
LZ
legendary
Activity: 1722
Merit: 1072
P2P Cryptocurrency
April 27, 2012, 09:14:14 PM
#16
You may try MultiBit. It's much faster.
newbie
Activity: 9
Merit: 0
April 27, 2012, 08:31:17 PM
#15
I have similar problem, computer freezes for a moment (15s) when BitCoin client is open. CPU usage is not high, physical memory is still available. What resource is it starving my poor computer of?
newbie
Activity: 24
Merit: 0
April 27, 2012, 01:14:55 PM
#14
I installed version 0.6 and it does seem to be much better!
donator
Activity: 112
Merit: 10
keybase.io/arblarg
April 22, 2012, 02:20:19 AM
#13
electrum works just fine for me and its light.

also, the bitcoin-qt application is using a lot of CPU when its downloading the blockchain, then it will settle down.

if the blockchain is already downloaded, there may be another issue with it.
full member
Activity: 205
Merit: 100
April 22, 2012, 01:57:35 AM
#12
linuxcoin is better Grin Grin Grin Grin
legendary
Activity: 2506
Merit: 1010
April 22, 2012, 12:33:07 AM
#11
An online wallet would solve the problem all right but that defeats a lot of the things that made bitcoin attractive to me.

There are varyious types of online e-wallets.  A couple examples of hosted E-Wallets that hold your bitcoin keys would Paytunia and InstaWallet, for example.  The benefit is that you don't need to keep a backup yourself.  The downside is you are extending trust to the E-Wallet operator.

There are also Javascript-based wallets, such as StrongCoin and My Wallet from Blockchain.info.  Both of those do the encryption in the browser and then store only the encrypted data on the server host.  This gives the benefit of an online wallet without the security risk when trusting the wallet service's operator with access to your private keys.

It's a bit worrying for the future of bitcoin. Will the cumulative burden eventually overwhelm even hi-spec dedicated bitcoin servers?

On decent hardware the resources consumed by the Bitcoin client are fairly negligible.  Your laptop is probably at the edge of the "too limited in resources to provide a smooth experience".  It is probably perfectly functional as a bitcoin node, just that it doesn't allow for multitasking with your other resource-consuming functions.

One of the improvements with v0.6 was a much faster configuration setting for the database.  Are you still finding it problematic?

Related:
 - http://en.bitcoin.it/wiki/Scalability
Pages:
Jump to: