Bitcoin Forum
November 05, 2024, 10:32:09 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 [6] 7 8 9 10 11 12 13 14 15 16 17 18 19 20 »  All
  Print  
Author Topic: Modular Python Bitcoin Miner - Official Thread  (Read 74159 times)
TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
February 22, 2012, 05:57:52 PM
 #101

Hm, looks like deepbit is a bit swamped with requests after a long poll and can't respond to all of those 128 work requests it got from MPBM within 2 seconds. You basically ended up with like 3 seconds of wasted work after the long poll, which seems fine to me for such a huge army of workers.
If the FPGA design supports nonce ranges one day, it might be worth looking into splitting up work across multiple boards while the work fetchers are struggling to keep up after an LP.
Another possibility would be adding an option that keeps multiple LP connections to the pools, so that there's more work to be put in the queue when the LP responses come in. I'll probably add support for that in the v0.1.x series.

My tip jar: 13kwqR7B4WcSAJCYJH1eXQcxG5vVUwKAqY
ngzhang
Hero Member
*****
Offline Offline

Activity: 592
Merit: 501


We will stand and fight.


View Profile
February 23, 2012, 03:43:00 AM
 #102

Hm, looks like deepbit is a bit swamped with requests after a long poll and can't respond to all of those 128 work requests it got from MPBM within 2 seconds. You basically ended up with like 3 seconds of wasted work after the long poll, which seems fine to me for such a huge army of workers.
If the FPGA design supports nonce ranges one day, it might be worth looking into splitting up work across multiple boards while the work fetchers are struggling to keep up after an LP.
Another possibility would be adding an option that keeps multiple LP connections to the pools, so that there's more work to be put in the queue when the LP responses come in. I'll probably add support for that in the v0.1.x series.

is it possible to support nonce ranges by miner software? i mean split the work by the miner, and transparent for the FPGAs.
TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
February 23, 2012, 04:12:08 PM
 #103

Hm, looks like deepbit is a bit swamped with requests after a long poll and can't respond to all of those 128 work requests it got from MPBM within 2 seconds. You basically ended up with like 3 seconds of wasted work after the long poll, which seems fine to me for such a huge army of workers.
If the FPGA design supports nonce ranges one day, it might be worth looking into splitting up work across multiple boards while the work fetchers are struggling to keep up after an LP.
Another possibility would be adding an option that keeps multiple LP connections to the pools, so that there's more work to be put in the queue when the LP responses come in. I'll probably add support for that in the v0.1.x series.

is it possible to support nonce ranges by miner software? i mean split the work by the miner, and transparent for the FPGAs.
It isn't, because currently none of the FPGA interfaces support setting a nonce range/start nonce.

My tip jar: 13kwqR7B4WcSAJCYJH1eXQcxG5vVUwKAqY
cypherdoc
Legendary
*
Offline Offline

Activity: 1764
Merit: 1002



View Profile
February 23, 2012, 06:37:24 PM
 #104

do any of you guys understand how BitForce is apparently outperforming your design boards?  its a mystery to me.
shad
Full Member
***
Offline Offline

Activity: 148
Merit: 100


View Profile
February 23, 2012, 07:53:19 PM
 #105

i think the use some high performance fpga's

15dUzJEUkxgjrtcvDSdsEDkXu7E7RCbNN3
bitcowok
Newbie
*
Offline Offline

Activity: 48
Merit: 0


View Profile
February 24, 2012, 12:35:57 AM
 #106

Define "outperforming". Bitforce boards currently use roughly double the power per megahash that spartan-6 boards get.

for example:
1 x bitforce = 80W  @832MH
2 x x6500   = 40W  @800MH
cypherdoc
Legendary
*
Offline Offline

Activity: 1764
Merit: 1002



View Profile
February 24, 2012, 12:41:21 AM
 #107

Define "outperforming". Bitforce boards currently use roughly double the power per megahash that spartan-6 boards get.

for example:
1 x bitforce = 80W  @832MH
2 x x6500   = 40W  @800MH

understood but you neglected to add at roughly the same price; the Mh/s is also slightly more than double.

do we know for sure that the chips for the Bitforce are older generation?  and does that matter in the end?
ngzhang
Hero Member
*****
Offline Offline

Activity: 592
Merit: 501


We will stand and fight.


View Profile
February 24, 2012, 05:02:23 AM
 #108

do any of you guys understand how BitForce is apparently outperforming your design boards?  its a mystery to me.

think about this first:
why do not massive sale this alien's stuff? all of us know it will be sell well.
ngzhang
Hero Member
*****
Offline Offline

Activity: 592
Merit: 501


We will stand and fight.


View Profile
February 24, 2012, 05:09:10 AM
 #109

Hm, looks like deepbit is a bit swamped with requests after a long poll and can't respond to all of those 128 work requests it got from MPBM within 2 seconds. You basically ended up with like 3 seconds of wasted work after the long poll, which seems fine to me for such a huge army of workers.
If the FPGA design supports nonce ranges one day, it might be worth looking into splitting up work across multiple boards while the work fetchers are struggling to keep up after an LP.
Another possibility would be adding an option that keeps multiple LP connections to the pools, so that there's more work to be put in the queue when the LP responses come in. I'll probably add support for that in the v0.1.x series.

is it possible to support nonce ranges by miner software? i mean split the work by the miner, and transparent for the FPGAs.
It isn't, because currently none of the FPGA interfaces support setting a nonce range/start nonce.

understood.
so how many bit in the nonce range is enough? now you know is 32bit wide. (11s@400MH/s)
TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
February 24, 2012, 06:45:10 PM
 #110

Hm, looks like deepbit is a bit swamped with requests after a long poll and can't respond to all of those 128 work requests it got from MPBM within 2 seconds. You basically ended up with like 3 seconds of wasted work after the long poll, which seems fine to me for such a huge army of workers.
If the FPGA design supports nonce ranges one day, it might be worth looking into splitting up work across multiple boards while the work fetchers are struggling to keep up after an LP.
Another possibility would be adding an option that keeps multiple LP connections to the pools, so that there's more work to be put in the queue when the LP responses come in. I'll probably add support for that in the v0.1.x series.

is it possible to support nonce ranges by miner software? i mean split the work by the miner, and transparent for the FPGAs.
It isn't, because currently none of the FPGA interfaces support setting a nonce range/start nonce.

understood.
so how many bit in the nonce range is enough? now you know is 32bit wide. (11s@400MH/s)
I think 4 bits (to divide a piece of work into 16 nonceranges) should be sufficient. Couldn't hurt to be able to specify exact start/end nonces though.

My tip jar: 13kwqR7B4WcSAJCYJH1eXQcxG5vVUwKAqY
antirack
Hero Member
*****
Offline Offline

Activity: 489
Merit: 500

Immersionist


View Profile
February 29, 2012, 02:45:18 AM
 #111

Total Python noob here.

I received 5 Icarus boards yesterday and I am trying to get MPBM to work (I have RG7Miner working fine with Icarus and 1 ZTEX board with the ZTEX Java Miner).

I am on Windows 7 32bit. That's what I did so far.

- Downloaded and installed Python 3.2 (python-3.2.2.msi).
- Extracted TheSeven-Modular-Python-Bitcoin-Miner-4b06f62.zip to C:\mpbm
- Edited config file and enabled Icarus and added my pool
(I have only one entry in there now for my worker with COM3, would I just duplicate the entries for each worker?)
- Installed curses-2.2.win32-py3.2.exe
- Installed pyserial-2.5.win32.exe
- I am not sure if I need JSON-RPC, so I downloaded joshmarshall-jsonrpclib-e3a3cde.zip and put it into the Python/Lib folder.

Do I need to install a libusb or something?

When I try to start the miner I get the following:

Code:
C:\mpbm>python miner.py
Traceback (most recent call last):
  File "miner.py", line 331, in <module>
    exec("import " + configfile + " as config")
  File "<string>", line 1, in <module>
  File "C:\mpbm\config.py", line 13, in <module>
    import worker.theseven.icarus
  File "C:\mpbm\worker\theseven\icarus.py", line 35, in <module>
    import serial
  File "C:\python32\lib\site-packages\serial\__init__.py", line 19, in <module>
    from serialwin32 import *
ImportError: No module named serialwin32

Some coins are waiting for the one helping me to make this to work Wink
allinvain
Legendary
*
Offline Offline

Activity: 3080
Merit: 1080



View Profile WWW
February 29, 2012, 05:32:08 AM
 #112

Did you install the PL303 driver? here: http://www.prolific.com.tw/eng/downloads.asp?id=31

Also you made sure you install the python modules such as serial,jsonrpc,curses. All available in ngzhang's github package:
https://github.com/ngzhang/Icarus

git it now :p


antirack
Hero Member
*****
Offline Offline

Activity: 489
Merit: 500

Immersionist


View Profile
February 29, 2012, 07:31:59 AM
Last edit: February 29, 2012, 07:43:14 AM by antirack
 #113

Did you install the PL303 driver? here: http://www.prolific.com.tw/eng/downloads.asp?id=31

Also you made sure you install the python modules such as serial,jsonrpc,curses. All available in ngzhang's github package:
https://github.com/ngzhang/Icarus

git it now :p



Thanks, we have success!

I had the PL303 driver, but I somehow missed that the modules where available on ngzhang's github.

Just putting the serial directory in the Lib folder didn't work, installing pyserial-2.5 also didn't work. I had to get pyserial-2.6.tar.gz and run 'python setup.py install' on it to get it to work (before that I had all sorts of errors, including syntax errors). Might be because I am using Python 3.2.2.

Post your bitcoin address and I'll send you some coins Smiley

I'll post a screenshot after a few hours. Right now I don't know what to make of all those numbers. So far I have this:

Code:
                                                            Modular Python Bitcoin Miner v0.0.4alpha
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Total speed: 1885.5 MH/s - Buffer: 30/30 (49.94 seconds)

       Pool       │Long│          │  Job   │   Failed   │Accepted│Rejected│Accepted│Stale shares│Share upload│Average│Effi- │Current
       name       │poll│Difficulty│requests│job requests│  jobs  │  jobs  │ shares │ (rejected) │  retries   │MHash/s│ciency│  bias
Slush (bitcoin.cz)│Yes │   0.99998│    1204│   31 (2.6%)│    1018│     125│     503│   23 (4.4%)│    0 (0.0%)│1878.44│ 99.0%│1246210

       Worker       │Accepted│Accepted│Stale shares│Invalid shares│Current│Average│Temperature│Effi- │     Current
        name        │  jobs  │ shares │ (rejected) │ (K not zero) │MHash/s│MHash/s│(degrees C)│ciency│       pool
Icarus board on COM3│     203│      98│    6 (5.8%)│      1 (1.0%)│ 379.65│ 372.56│  Unknown  │ 97.2%│Slush (bitcoin.cz)
Icarus board on COM4│     215│     114│    4 (3.4%)│      0 (0.0%)│ 372.43│ 376.24│  Unknown  │112.0%│Slush (bitcoin.cz)
Icarus board on COM5│     203│     106│    2 (1.9%)│      0 (0.0%)│ 375.02│ 376.84│  Unknown  │104.0%│Slush (bitcoin.cz)
Icarus board on COM6│     205│     102│    6 (5.6%)│      0 (0.0%)│ 379.05│ 376.48│  Unknown  │100.1%│Slush (bitcoin.cz)
Icarus board on COM7│     192│      83│    5 (5.7%)│      0 (0.0%)│ 379.37│ 376.36│  Unknown  │ 81.5%│Slush (bitcoin.cz)
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

allinvain
Legendary
*
Offline Offline

Activity: 3080
Merit: 1080



View Profile WWW
February 29, 2012, 08:31:18 AM
 #114

Did you install the PL303 driver? here: http://www.prolific.com.tw/eng/downloads.asp?id=31

Also you made sure you install the python modules such as serial,jsonrpc,curses. All available in ngzhang's github package:
https://github.com/ngzhang/Icarus

git it now :p



Thanks, we have success!

I had the PL303 driver, but I somehow missed that the modules where available on ngzhang's github.

Just putting the serial directory in the Lib folder didn't work, installing pyserial-2.5 also didn't work. I had to get pyserial-2.6.tar.gz and run 'python setup.py install' on it to get it to work (before that I had all sorts of errors, including syntax errors). Might be because I am using Python 3.2.2.

Post your bitcoin address and I'll send you some coins Smiley

I'll post a screenshot after a few hours. Right now I don't know what to make of all those numbers. So far I have this:

Code:
                                                            Modular Python Bitcoin Miner v0.0.4alpha
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Total speed: 1885.5 MH/s - Buffer: 30/30 (49.94 seconds)

       Pool       │Long│          │  Job   │   Failed   │Accepted│Rejected│Accepted│Stale shares│Share upload│Average│Effi- │Current
       name       │poll│Difficulty│requests│job requests│  jobs  │  jobs  │ shares │ (rejected) │  retries   │MHash/s│ciency│  bias
Slush (bitcoin.cz)│Yes │   0.99998│    1204│   31 (2.6%)│    1018│     125│     503│   23 (4.4%)│    0 (0.0%)│1878.44│ 99.0%│1246210

       Worker       │Accepted│Accepted│Stale shares│Invalid shares│Current│Average│Temperature│Effi- │     Current
        name        │  jobs  │ shares │ (rejected) │ (K not zero) │MHash/s│MHash/s│(degrees C)│ciency│       pool
Icarus board on COM3│     203│      98│    6 (5.8%)│      1 (1.0%)│ 379.65│ 372.56│  Unknown  │ 97.2%│Slush (bitcoin.cz)
Icarus board on COM4│     215│     114│    4 (3.4%)│      0 (0.0%)│ 372.43│ 376.24│  Unknown  │112.0%│Slush (bitcoin.cz)
Icarus board on COM5│     203│     106│    2 (1.9%)│      0 (0.0%)│ 375.02│ 376.84│  Unknown  │104.0%│Slush (bitcoin.cz)
Icarus board on COM6│     205│     102│    6 (5.6%)│      0 (0.0%)│ 379.05│ 376.48│  Unknown  │100.1%│Slush (bitcoin.cz)
Icarus board on COM7│     192│      83│    5 (5.7%)│      0 (0.0%)│ 379.37│ 376.36│  Unknown  │ 81.5%│Slush (bitcoin.cz)
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────



Congrats. And thanks for the tip Smiley btc address is: 12c8Yd8P1YpTRdRDMwnvqLbTqEcymnvC67

As far as python 3.2 for sure you had to do that because you were using 3.2. Ngzhang recommends 2.7 AFAIK - that's what I'm using at the moment.

Those numbers are good so far, but you need a longer running time to gain some useful data. Keep an eye for a high percentage of invalid shares. A higher number of invalid shares typically indicates overheating. I don't think you should have a problem with the stock Icarus cooling solution unless you run the board in a cramped hot area, or a very hot geographical location.

Another tip for you, try using a pool that has the lowest latency/ping time from your location.


antirack
Hero Member
*****
Offline Offline

Activity: 489
Merit: 500

Immersionist


View Profile
February 29, 2012, 10:31:38 AM
Last edit: February 29, 2012, 01:18:03 PM by antirack
 #115

Quote from: allinvain
Congrats. And thanks for the tip Smiley btc address is: 12c8Yd8P1YpTRdRDMwnvqLbTqEcymnvC67

Coins sent.

Quote from: allinvain
Another tip for you, try using a pool that has the lowest latency/ping time from your location.

It's been running for about 2.5 hours and I have about 300 errors regarding my pool (slushes - bitcoin.cz) in my log.

Ping is about 300ms from here. Most others are not much better to be honest (btcguild is).

Here is an error only log file. Most are time outs, but if you scroll down you'll also see others.

http://pastebin.com/5mrssXkj
 
Edit: I changed getworktimeout to 4 seconds, this seems to have solved the time out errors for now. But do I waste a lot of time this way?
TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
February 29, 2012, 03:57:29 PM
 #116

Edit: I changed getworktimeout to 4 seconds, this seems to have solved the time out errors for now. But do I waste a lot of time this way?
It shouldn't waste time directly, it only increases the risk of the work buffer not filling fast enough, especially after long polls, if a pool misbehaves. 4 seconds should still be fine though, I use 2 seconds here because that's what pools manage to meet in >99% of the cases for me.

You should probably add a backup pool though, so that your boards won't run idle if slush has problems.
Generally I'd recommend using 2 or 3 pools at the same priority, i.e. balancing your hashing power across them equally. If one of them is acting up, MPBM will automatically move some hashing power away from it, towards a better working pool.

My tip jar: 13kwqR7B4WcSAJCYJH1eXQcxG5vVUwKAqY
allinvain
Legendary
*
Offline Offline

Activity: 3080
Merit: 1080



View Profile WWW
February 29, 2012, 04:14:04 PM
 #117

Quote from: allinvain
Congrats. And thanks for the tip Smiley btc address is: 12c8Yd8P1YpTRdRDMwnvqLbTqEcymnvC67

Coins sent.

Quote from: allinvain
Another tip for you, try using a pool that has the lowest latency/ping time from your location.

It's been running for about 2.5 hours and I have about 300 errors regarding my pool (slushes - bitcoin.cz) in my log.

Ping is about 300ms from here. Most others are not much better to be honest (btcguild is).

Here is an error only log file. Most are time outs, but if you scroll down you'll also see others.

http://pastebin.com/5mrssXkj
 
Edit: I changed getworktimeout to 4 seconds, this seems to have solved the time out errors for now. But do I waste a lot of time this way?


Thanks antirack! Smiley

Hmm, 300ms is pretty bad. How much better is btcguild? For me btcguild is the lowest latency pool. Slush is in the 120ms mark. There is no local pool or regional pool where you're located?

ngzhang
Hero Member
*****
Offline Offline

Activity: 592
Merit: 501


We will stand and fight.


View Profile
March 01, 2012, 10:33:31 AM
 #118

i usually get 800-1200ms here.  Grin
300ms? extremely fast  Tongue
allinvain
Legendary
*
Offline Offline

Activity: 3080
Merit: 1080



View Profile WWW
March 01, 2012, 02:25:27 PM
 #119

i usually get 800-1200ms here.  Grin
300ms? extremely fast  Tongue

Whoa. I am extremely surprised. That is some pretty bad latency there ngzhang.

Wandering Albatross
Member
**
Offline Offline

Activity: 70
Merit: 10



View Profile
March 01, 2012, 07:00:50 PM
 #120

Quote from: ngzhang
i usually get 800-1200ms here.  Grin

You may want to try p2pool. I couldn't tell you if it will help you or not. If you check the p2pool thread someone might be able to tell you more. I am guessing you're in Asia or maybe you're on a sat link.

BTC: 1JgPAC8RVeh7RXqzmeL8xt3fvYahRXL3fP
Pages: « 1 2 3 4 5 [6] 7 8 9 10 11 12 13 14 15 16 17 18 19 20 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!