Bitcoin Forum
April 16, 2024, 02:54:58 PM *
News: Latest Bitcoin Core release: 26.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 73921 times)
nelisky
Legendary
*
Offline Offline

Activity: 1540
Merit: 1001


View Profile
March 03, 2012, 12:17:49 PM
 #121


https://github.com/nelisky/Modular-Python-Bitcoin-Miner/tree/ztex

This is a very crude first attempt, many things are still missing, the devices need to be preflashed and the bitstreams must match the firmware. Only one device is supported (it does filter by serial, but then uses only the first device found) and the freq change algorithm from the error rate is much, much simpler than ztex's, and I only implemented the low speed FPGA config so far.

Next step would be multiple device suport but as I only have one currently I'm not going to blindly implement that. I might add to the code base to support more of ztex's original java source goodies ported to python, like the high speed config, but I'll be happy to pass that anyone else wanting to lend a hand.

Have fun (I'm mining on p2pool with my single ztex using this code right now).
1713279298
Hero Member
*
Offline Offline

Posts: 1713279298

View Profile Personal Message (Offline)

Ignore
1713279298
Reply with quote  #2

1713279298
Report to moderator
1713279298
Hero Member
*
Offline Offline

Posts: 1713279298

View Profile Personal Message (Offline)

Ignore
1713279298
Reply with quote  #2

1713279298
Report to moderator
1713279298
Hero Member
*
Offline Offline

Posts: 1713279298

View Profile Personal Message (Offline)

Ignore
1713279298
Reply with quote  #2

1713279298
Report to moderator
Every time a block is mined, a certain amount of BTC (called the subsidy) is created out of thin air and given to the miner. The subsidy halves every four years and will reach 0 in about 130 years.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713279298
Hero Member
*
Offline Offline

Posts: 1713279298

View Profile Personal Message (Offline)

Ignore
1713279298
Reply with quote  #2

1713279298
Report to moderator
allinvain
Legendary
*
Offline Offline

Activity: 3080
Merit: 1080



View Profile WWW
March 03, 2012, 04:37:03 PM
 #122

Awesome nelisky! Thanks for your contribution. Even though I do not have a ztex board I can definitely appreciate your working on support for it.

coretechs
Donator
Sr. Member
*
Offline Offline

Activity: 362
Merit: 250



View Profile
March 04, 2012, 02:33:02 PM
 #123

I just set up MPBM yesterday and have to say I was impressed.  I will definitely be using this software in the future.  Donation sent, thanks!

https://bitcoindoc.com - The Rise and Rise of Bitcoin | https://blocktap.io - Lightning powered crypto query engine
nelisky
Legendary
*
Offline Offline

Activity: 1540
Merit: 1001


View Profile
March 04, 2012, 11:52:10 PM
 #124

I have updated https://github.com/nelisky/Modular-Python-Bitcoin-Miner/tree/ztex with high speed FPGA configuration (which appears to be just as slow from my tests) and multi device hotplug support, though I only tested with my single board. Anyone having multiple ztex boards and wanting to experiment with MPBM, please give this a try and let me know.

I also created a pull request to get this into TheSeven's repo: https://github.com/TheSeven/Modular-Python-Bitcoin-Miner/pull/5
O_Shovah
Sr. Member
****
Offline Offline

Activity: 410
Merit: 252


Watercooling the world of mining


View Profile
March 05, 2012, 07:21:42 AM
 #125

I have finally gotten my ARM board + icarus + x6500 board  running with bitcoin-qt p2pool and MPBM.

I am currently getting somewhere around 13% stales.

How are your experiences regarding optimised values to improve efficiency on p2pool using MPBM ?

shad
Full Member
***
Offline Offline

Activity: 148
Merit: 100


View Profile
March 05, 2012, 12:51:29 PM
 #126

I have finally gotten my ARM board + icarus + x6500 board  running with bitcoin-qt p2pool and MPBM.

I am currently getting somewhere around 13% stales.

How are your experiences regarding optimised values to improve efficiency on p2pool using MPBM ?

do you run bitcoin-qt on your arm device?
what OS are you using? Openwrt?

15dUzJEUkxgjrtcvDSdsEDkXu7E7RCbNN3
O_Shovah
Sr. Member
****
Offline Offline

Activity: 410
Merit: 252


Watercooling the world of mining


View Profile
March 05, 2012, 03:06:20 PM
 #127

I am using a modified Ubuntu 11.04 natty.
I recompiled both bitcoind and bitcoin-qt for the plattform.

julz
Legendary
*
Offline Offline

Activity: 1092
Merit: 1001



View Profile
March 05, 2012, 06:52:22 PM
 #128

I just got this running with Icarus on Windows 7.. nice!
Bitcoin donated.

Is there a proper way to shut down MPBM? I've just been killing the command window as things like ctrl-c ctrl-z don't seem to have any effect.


@electricwings   BM-GtyD5exuDJ2kvEbr41XchkC8x9hPxdFd
TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
March 05, 2012, 11:07:39 PM
 #129

I just got this running with Icarus on Windows 7.. nice!
Bitcoin donated.
Thank you!

Is there a proper way to shut down MPBM? I've just been killing the command window as things like ctrl-c ctrl-z don't seem to have any effect.
Hm, usually Ctrl+C should kill it. If it doesn't, there's probably something that locks up while attempting to shut things down. The Icarus worker module is currently kind of a 5 minute hack to make it work somehow, so it might suffer from that kind of thing. This will be improved in the upcoming major release.
Just killing the miner should be fine, it doesn't do any real cleanup anyway (yet).

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

Activity: 489
Merit: 500

Immersionist


View Profile
March 06, 2012, 01:03:44 AM
 #130

I just got this running with Icarus on Windows 7.. nice!
Bitcoin donated.
Thank you!

Is there a proper way to shut down MPBM? I've just been killing the command window as things like ctrl-c ctrl-z don't seem to have any effect.
Hm, usually Ctrl+C should kill it. If it doesn't, there's probably something that locks up while attempting to shut things down. The Icarus worker module is currently kind of a 5 minute hack to make it work somehow, so it might suffer from that kind of thing. This will be improved in the upcoming major release.
Just killing the miner should be fine, it doesn't do any real cleanup anyway (yet).

Ctrl-C doesn't work on my Windows 7/Icarus setup neither. Ctrl-Break works.

I now also have 3 ZTEX boards, but I will be traveling for the next 10 days so I can't try it using the new code in MPBM.
O_Shovah
Sr. Member
****
Offline Offline

Activity: 410
Merit: 252


Watercooling the world of mining


View Profile
March 06, 2012, 07:49:33 AM
Last edit: March 06, 2012, 12:20:33 PM by O_Shovah
 #131

I am using a modified Ubuntu 11.04 natty.
I recompiled both bitcoind and bitcoin-qt for the plattform.
Have you done a writeup on this anywhere?

I will create thread for Bitcoin on ARM devices as soon as i find the time.
Maybe this weekend.
I will post descriptions  downloadable system images, build instructions....
For the "Gumstix" ARM , the panda board , and maybe for a rasberry pi
if i get one.

So you will have to be a little patient.
I would appreciate anybody else who has created systems on ARM devices
to post his system there.

And again:
what are your experience values  with MPBM and p2pool ( stales,rates, ..)
And wich values do you adjust to improve performance.

TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
March 06, 2012, 03:06:43 PM
 #132

And again:
what are your experience values  with MPBM and p2pool ( stales,rates, ..)
And wich values do you adjust to improve performance.
Should be between 10% and 20% stales if p2pool performs well (which my installation clearly doesn't, due to a sluggish bitcoind).
And you can't really adjust any values to improve that, maybe increase the polling frequency if it's a x6500/ztex board.
The only thing you could do about it would be latency optimizing the code, which will break the modular approach (and multi-worker/multi-pool capabilities).

My tip jar: 13kwqR7B4WcSAJCYJH1eXQcxG5vVUwKAqY
TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
March 07, 2012, 09:34:11 PM
Last edit: March 23, 2012, 01:46:22 AM by TheSeven
 #133

I've uploaded an MPBM v0.1.x prototype to the testing branch of the git repository.
It's working sufficiently to fetch work from the demo work sources somehow, so people can start porting worker interfaces. The SimpleRS232Worker module has already been ported, and might serve as kind of a porting guide.

Please not that this is not ready for production use yet. At the moment it supports neither long polling nor any other getwork extensions, and it's likely that there's still quite a lot of bugs. There also is no UI for the statistics yet (but the statistics should be collected in the background).

Tasks left to be done before the beta release:
  • Clean up BCJSONRPC module
  • Implement getwork extensions
  • Possibly implement UBBP module
  • Implement statistics UI (still needs some cosmetic improvements)
  • Add work queue debug UI
  • Possibly port CursesUI (likely not to be done)
  • Port Icarus worker module (mostly working, minor statistics issues)
  • Implement out of process worker support (might make sense for the X6500/ztex interfaces)
  • Port X6500 worker modules (untested)
  • Possibly implement support for uploading firmware to multiple X6500 boards at once, with only a single shared preparation process (will not be implemented)
  • Possibly implement BFL worker module
  • Decide what to do about the ztex worker module
  • Possibly implement GPU mining (cherrypick from poclbm?) (not anytime soon)
  • Fix bugs
  • Fix even more bugs
  • Improve documentation
  • Clean up the code
  • Do some benchmarks and identify/fix bottlenecks

My tip jar: 13kwqR7B4WcSAJCYJH1eXQcxG5vVUwKAqY
Turbor
Legendary
*
Offline Offline

Activity: 1022
Merit: 1000


BitMinter


View Profile WWW
March 08, 2012, 07:46:47 PM
 #134

Finally working Cheesy no curses, no miner... donation sent !

TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
March 08, 2012, 09:06:36 PM
 #135

Finally working Cheesy no curses, no miner... donation sent !
Are you sure that you prefer CursesUI over WebUI+StderrLogger with ANSI coding enabled?

My tip jar: 13kwqR7B4WcSAJCYJH1eXQcxG5vVUwKAqY
Turbor
Legendary
*
Offline Offline

Activity: 1022
Merit: 1000


BitMinter


View Profile WWW
March 08, 2012, 09:13:18 PM
 #136

Finally working Cheesy no curses, no miner... donation sent !
Are you sure that you prefer CursesUI over WebUI+StderrLogger with ANSI coding enabled?

 Shocked i'm a carpenter, no idea what you talk about Cheesy

Turbor
Legendary
*
Offline Offline

Activity: 1022
Merit: 1000


BitMinter


View Profile WWW
March 10, 2012, 05:41:29 PM
 #137

Runs stable at 0.1% rejects. No more sleep mode. Only thing that's not working after some time is the average MH/s rate and the efficiency. It says 600+ MH for one board. Restart helps.

TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
March 17, 2012, 11:21:15 PM
Last edit: March 18, 2012, 12:37:58 PM by TheSeven
 #138

I'd like to invite everyone who's willing to take a small risk of deadlocks and other annoyances, to check out the testing branch of MPBM.
It isn't quite ready for production use that's unattended over months yet, but it has at least survived a week of testing on my own low-hashrate board.
It would be especially interesting for me to collect testing results from bigger FPGA rigs (>2GH/s, or even >10GH/s), but please only do that if you can react quickly in case of failure, to prevent wasting valuable hashing time.
Please note that latencies seem to be too high to work reasonably well with P2Pool. This seems to be the price you have to pay for flexibility. We'll see if that can be improved.

One of the most important new features is the web based user interface, which allows to configure the miner on the fly, and removes the need for a configuration file.

If you want to check it out, do this:
  • Check out the testing branch (git clone git://github.com/TheSeven/Modular-Python-Bitcoin-Miner.git -b testing)
  • Run "python run-mpbm.py"
  • Open http://localhost:8832
  • Log in with user name "admin", password "mpbm"
  • Configure the WebUI frontend to set your own password
  • Add your own work sources to the "user work sources" group
  • Right click on the created work sources and assign them to the "Bitcoin" blockchain (or whichever blockchain they belong to), to enable long poll aggregation
  • When you're done, hit "save configuration" (will be done during a clean shutdown anyway, but it can't hurt to do it manually after lots of changes to reduce the risk of data loss)

Btw. the correct way to shut down MPBM is just hitting ctrl+c on the console.

Known issues:
  • Hashrate/priority settings do reach their targets after days of runtime, but shortly after starting the miner the hashrate distribution depends more on X-Roll-NTime support of the work source than anything else.
  • The WebUI doesn't play nice with Firefox. Anyone got a fix for that?

If you hit some issues, or just want to provide some feedback, feel free to post here or contact me at #mpbm on irc.freenode.net.
In case you should hit a deadlock, please obtain a thread state dump from the debug menu on WebUI and pastebin that.

My tip jar: 13kwqR7B4WcSAJCYJH1eXQcxG5vVUwKAqY
coblee
Donator
Legendary
*
Offline Offline

Activity: 1653
Merit: 1286


Creator of Litecoin. Cryptocurrency enthusiast.


View Profile
March 19, 2012, 12:18:26 AM
 #139

I can't seem to get my X6500 workers to work.

2012-03-18 17:17:44.525   [100]   X6500 worker - AH00WI18: Proxy: Exception caught: Traceback (most recent call last):
  File "/Users/charlie/Modular-Python-Bitcoin-Miner-testing/modules/fpgamining/x6500/boardproxy.py", line 77, in run
    else: self.device = FT232R(FT232R_PyUSB(self.serial, self.takeover))
  File "/Users/charlie/Modular-Python-Bitcoin-Miner-testing/modules/fpgamining/x6500/util/ft232r.py", line 314, in __init__
    for bus in usb.busses():
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/usb/legacy.py", line 333, in busses
    return (Bus(),)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/usb/legacy.py", line 329, in __init__
    self.devices = [Device(d) for d in core.find(find_all=True)]
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/usb/core.py", line 851, in find
    return [d for d in device_iter(k, v)]
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/usb/core.py", line 821, in device_iter
    for dev in backend.enumerate_devices():
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/usb/backend/libusb10.py", line 457, in enumerate_devices
    return _DevIterator()
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/usb/backend/libusb10.py", line 445, in __init__
    byref(self.dev_list))
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/usb/backend/libusb10.py", line 403, in _check
    raise USBError(_str_error[ret], ret, _libusb_errno[ret])
USBError: [Errno None] Unknown error
2012-03-18 17:17:44.528   [100]   X6500 worker - AH00WI18: Traceback (most recent call last):
  File "/Users/charlie/Modular-Python-Bitcoin-Miner-testing/modules/fpgamining/x6500/x6500worker.py", line 211, in main
    elif data[0] == "dying": raise Exception("Proxy died!")
Exception: Proxy died!

TheSeven (OP)
Hero Member
*****
Offline Offline

Activity: 504
Merit: 500


FPGA Mining LLC


View Profile WWW
March 19, 2012, 02:00:49 AM
 #140

USBError: [Errno None] Unknown error

Now that's the kind of libusb errors that I like most.
What OS is that? Mac? Does this affect only the testing branch or both? Does it work with the D2XX driver?

My tip jar: 13kwqR7B4WcSAJCYJH1eXQcxG5vVUwKAqY
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!