Bitcoin Forum
November 19, 2024, 01:35:58 PM *
News: Check out the artwork 1Dq created to commemorate this forum's 15th anniversary
 
   Home   Help Search Login Register More  
Pages: « 1 ... 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 [150] 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 ... 205 »
  Print  
Author Topic: bitHopper: Python Pool Hopper Proxy  (Read 355802 times)
cirz8
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
August 08, 2011, 03:33:59 PM
 #2981

Yep, I'm going to switch over to them shortly.  Got to help out the fellow Aussies Smiley

What's the record for longest round/highest number of shares by the way?
13m.
Deepbit had a 16m one a week or so ago  Shocked
cirz8
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
August 08, 2011, 03:48:18 PM
 #2982

How is it broken? It loads for me.
Code:
web.Server Traceback (most recent call last):

<type 'exceptions.IOError'>: [Errno 2] No such file or directory: 'index-altslice.html'
c:\python27\lib\site-packages\twisted\web\server.py, line 127 in process
125    try:
126      resrc = self.site.getResourceFor(self)
127      self.render(resrc)
128    except:
Self
site
twisted.web.server.Site instance @ 0x2a58620 <twisted.web.server.Site instance at 0x02A58620>
Locals
resrc
website.dynamicSite instance @ 0x2aed3a0 <website.dynamicSite instance at 0x02AED3A0>
self
twisted.web.server.Request instance @ 0x2aed148 <GET /stats HTTP/1.1>
c:\python27\lib\site-packages\twisted\web\server.py, line 147 in render
145    """
146    try:
147      body = resrc.render(self)
148    except UnsupportedMethod, e:
Locals
resrc
website.dynamicSite instance @ 0x2aed3a0 <website.dynamicSite instance at 0x02AED3A0>
self
twisted.web.server.Request instance @ 0x2aed148 <GET /stats HTTP/1.1>
Globals
UnsupportedMethod <class 'twisted.web.error.UnsupportedMethod'>
c:\python27\lib\site-packages\twisted\web\resource.py, line 216 in render
214               _computeAllowedMethods(self))
215      raise UnsupportedMethod(allowedMethods)
216    return m(request)
217
Locals
m <bound method dynamicSite.render_GET of <website.dynamicSite instance at 0x02AED3A0>>
self
website.dynamicSite instance @ 0x2aed3a0 <website.dynamicSite instance at 0x02AED3A0>
request
twisted.web.server.Request instance @ 0x2aed148 <GET /stats HTTP/1.1>
Globals
_computeAllowedMethods
function _computeAllowedMethods in file c:\python27\lib\site-packages\twisted\web\resource.py at line 230
C:\bithopper\website.py, line 57 in render_GET
55    except:
56     index = index_name
57    file = open(index, 'r')
58    linestring = file.read()
Locals
index 'index-altslice.html'
index_name 'index-altslice.html'

<type 'exceptions.IOError'>: [Errno 2] No such file or directory: 'index-altslice.html'
the command is like this

c:\python27\python.exe c:\bithopper\bithopper.py --scheduler=altSliceScheduler



try this one see if it works:

Code:
cd bithopper
python bithopper.py --scheduler=altSliceScheduler

edit: woow, got a nasty error with slush's api, running with debug now

Try this, no guarantees, as no one verified it.
Ok, first time coding(not really, I'm a cut/paste master) python  Shocked
Seems to work, someone with knowledge please verify logic  Roll Eyes

Code:
--- website.py.orig     2011-08-07 14:53:03.106954661 +0200
+++ website.py.new      2011-08-07 15:21:38.006454500 +0200
@@ -53,7 +53,7 @@ class dynamicSite(resource.Resource):
                 application_path = os.path.dirname(__file__)
           index = parser.read(os.path.join(application_path, index_name))
         except:
-          index = index_name
+          index = os.path.join(application_path, index_name)
         file = open(index, 'r')
         linestring = file.read()
         file.close
It works for me™ though  Roll Eyes
Grinder
Legendary
*
Offline Offline

Activity: 1284
Merit: 1001


View Profile
August 08, 2011, 04:13:22 PM
 #2983

+1 is there a way to log console in a file,  "python bitHopper.py > error.log" doesn't work for me, we seem to miss the error that could help track this one because it spits messages real fast and the important stuff it's long gone when you stop and copy from the console
Try python bitHopper.py &> error.log if you're on Linux.
paraipan
In memoriam
Legendary
*
Offline Offline

Activity: 924
Merit: 1004


Firstbits: 1pirata


View Profile WWW
August 08, 2011, 04:20:59 PM
Last edit: August 08, 2011, 04:35:45 PM by paraipanakos
 #2984

+1 is there a way to log console in a file,  "python bitHopper.py > error.log" doesn't work for me, we seem to miss the error that could help track this one because it spits messages real fast and the important stuff it's long gone when you stop and copy from the console
Try python bitHopper.py &> error.log if you're on Linux.

ty grinder, and yep ubuntu here  Cheesy

edit: it doesn't start, same issue, I launch like this
Code:
~/bitHopper$ python bitHopper.py --startLP --debug &> error.log

BTCitcoin: An Idea Worth Saving - Q&A with bitcoins on rugatu.com - Check my rep
joulesbeef
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


moOo


View Profile
August 08, 2011, 04:40:57 PM
 #2985

bitHopper.py   --debug  >debug.txt

works for me in windows.


same SHOULD work for you.. linux peeps

Quote
Ok, lets save the python script as sout.py and try to redirect the output to a file.
$ ./sout.py > test.txt
I am stderr

mooo for rent
paraipan
In memoriam
Legendary
*
Offline Offline

Activity: 924
Merit: 1004


Firstbits: 1pirata


View Profile WWW
August 08, 2011, 04:43:49 PM
 #2986

bitHopper.py   --debug  >debug.txt

works for me in windows.


nice, that's a first for windows or it's just me making a fool of myself on this linux console

edit: tried all that joules without success atm, I use google too Wink

BTCitcoin: An Idea Worth Saving - Q&A with bitcoins on rugatu.com - Check my rep
gnaget
Full Member
***
Offline Offline

Activity: 154
Merit: 102


View Profile
August 08, 2011, 04:53:52 PM
 #2987

I managed to get the error with a log going.  After a while (maybe when a block is found?) I get a LOT of these:

2011-08-08 11:50:54-0500 [HTTP11ClientProtocol,client] Error in pool api for triple
2011-08-08 11:50:54-0500 [HTTP11ClientProtocol,client] "[Failure instance: Traceback: <type 'exceptions.TypeError'>: cannot concatenate 'str' and 'long' objects\n/usr/lib/python2.7/dist-packages/twisted/internet/defer.py:1076:gotResult\n/usr/lib/python2.7/dist-packages/twisted/internet/defer.py:1063:_inlineCallbacks\n/usr/lib/python2.7/dist-packages/twisted/internet/defer.py:361:callback\n/usr/lib/python2.7/dist-packages/twisted/internet/defer.py:455:_startRunCallbacks\n--- <exception caught here> ---\n/usr/lib/python2.7/dist-packages/twisted/internet/defer.py:542:_runCallbacks\n/opt/bitHopper/pool.py:161:selectsharesResponse\n/opt/bitHopper/pool.py:124:UpdateShares\n/opt/bitHopper/lp.py:24:set_owner\n]"

Edit: yup when a new block is found
joulesbeef
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


moOo


View Profile
August 08, 2011, 05:00:34 PM
 #2988

yeah it appears to be in long polling.. c00w has some info on it a few pages back when he thought he might have fixed it.

mooo for rent
gnaget
Full Member
***
Offline Offline

Activity: 154
Merit: 102


View Profile
August 08, 2011, 05:06:32 PM
 #2989

yeah it appears to be in long polling.. c00w has some info on it a few pages back when he thought he might have fixed it.

I'm looking into it right now.  What I have figured out is the error is in Long polling, but there is no lp receive.  The reset was discovered on the status refresh.  Still not certain why it is happening, I haven't looked much into the LP part of this code yet
paraipan
In memoriam
Legendary
*
Offline Offline

Activity: 924
Merit: 1004


Firstbits: 1pirata


View Profile WWW
August 08, 2011, 05:08:10 PM
 #2990

yep, a lot of these appear and my miner stopped too

BTCitcoin: An Idea Worth Saving - Q&A with bitcoins on rugatu.com - Check my rep
bb
Member
**
Offline Offline

Activity: 84
Merit: 10


View Profile
August 08, 2011, 05:09:24 PM
 #2991

Good news everyone! 43% is dead!

We no longer have to hop at 0.43*difficulty!

I haven't been around much lately because I spent the last week running and rewriting 'byteHopper', a multiple pool hopping simulator. When when I got results I didn't want, I rewrote it from scratch. Three times.

Although I made it run faster each time the results are the same, and the cumulative distribution functions follow real world bitcoin results. So I'm finally happy with the results it gives.

I'm only posting a summary here and I'll get around to making blog posts on hoppersden to give more detail, but the gist of it is: If there are 3 or more hoppable pools, you can stay on pools as long as you want and still get the same long term reward as if you hopped on 0.43, but without needing backup and without pissing pool operators as much. Keep in mind that this is not a claim about one particular round, but over, say, 100000 rounds (which I used for the graphs below).

Of course in any given round, after total shares=diff, your shares are worth less than one. But over time the shorter rounds make up for it. Even with only 3 Prop and backup, your efficiency will always be about 1.83, unless you hop off *too soon*. With ten other pools you get about 250% over PPS - sound familiar?

tl;dr BOLD CLAIM: As long as you always hop to the pool with the lowest shares - regardless of hashspeed - you don't need to hop to backup at 0.43.

The ran up some quick graphs which show byteHopper results up to hopping at 3*diff for 0 other pools (ie one proportional pools and one PPS), 1 other pools, 3 other pools and 5 other pools, all plus pps when needed. '0 other pools' mean the same as Raulo's example, and gives the same results as his equation.

 This is basically not 'hopping' much at all. PPS only really has positive effect if you hop only one or two other pools.

                 


What variance on the pool total round shares did you use? It basically comes down to that.

E.g. if you are hopping five pools which are all at 9 million shares, it is way more profitable to mine on backup.

If you use no variance in you simulations it is ok to stay on the pool with the least shares, but the simulations are useless.
joulesbeef
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


moOo


View Profile
August 08, 2011, 05:14:06 PM
 #2992

bitHopper.py   --debug  >debug.txt

works for me in windows.


nice, that's a first for windows or it's just me making a fool of myself on this linux console

edit: tried all that joules without success atm, I use google too Wink


yeah i used to be able to do it but i though it was the pipe |.... but that is for sending output to another program.. i guess piping to notepad would have worked as well.


anyways.. sure it doesnt work? works here on linux on damn small, ubuntu and backtrack.. and all versions of windows.

mooo for rent
paraipan
In memoriam
Legendary
*
Offline Offline

Activity: 924
Merit: 1004


Firstbits: 1pirata


View Profile WWW
August 08, 2011, 05:18:42 PM
 #2993

bitHopper.py   --debug  >debug.txt

works for me in windows.


nice, that's a first for windows or it's just me making a fool of myself on this linux console

edit: tried all that joules without success atm, I use google too Wink


yeah i used to be able to do it but i though it was the pipe |.... but that is for sending output to another program.. i guess piping to notepad would have worked as well.


anyways.. sure it doesnt work? works here on linux on damn small, ubuntu and backtrack.. and all versions of windows.

damn sure, it gets stuck right after pressing enter
I will create the file to see if it works, but now seems like we have a lot of blocks found everywhere, time to mine like demons  Grin

edit: btw, ubuntu 11.04 here, Python 2.7.1+ , python-twisted Versión: 10.2.0-1

BTCitcoin: An Idea Worth Saving - Q&A with bitcoins on rugatu.com - Check my rep
gnaget
Full Member
***
Offline Offline

Activity: 154
Merit: 102


View Profile
August 08, 2011, 05:20:56 PM
 #2994

based on the error message, I did this fix, and I am watching to see if it really was that simple:

In lp.py:
Code:
    def set_owner(self,server):
        if self.lastBlock != None:
            self.blocks[self.lastBlock]["_owner"] = server
            self.bitHopper.log_msg('Setting Block Owner :' + str(self.lastBlock))

I wrapped self.lastBlock in the last line in a str().  I'm not going to stand behind this fix, because I'm not even sure what lastBlock is for yet, but we will see
ed64
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
August 08, 2011, 05:22:35 PM
 #2995

FYI still working on AltSliceScheduler, no updates to push yet. Working on getting pool speed, duration time from JSON/RE. Have maybe 50% of pools done. Next step will be to add in a new option to hop based on some combination of round time and # of shares.

Finding an optimal point on duration vs shares will be interesting.

Also merged in some of ryouiki's code to estimate round time / pool speed as well, takes hours to stabilize and have anything reasonable though.

I may add an option of how much the round time factors into each slice as well.

And yes I do have a solution for btcmp.com, but i'm concentrating on the round time solution first.

Will need some volunteers in the next few days. Any takers?
joulesbeef
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


moOo


View Profile
August 08, 2011, 05:22:51 PM
 #2996

Code:
2011-08-08 13:15:59-0400 [HTTP11ClientProtocol,client] Error in pool api for arsbitcoin
2011-08-08 13:15:59-0400 [HTTP11ClientProtocol,client] "[Failure instance: Traceback: <type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'group'\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:1076:gotResult\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:1063:_inlineCallbacks\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:361:callback\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:455:_startRunCallbacks\n--- <exception caught here> ---\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:542:_runCallbacks\nD:\\Users\\joulesbeef\\Desktop\\currentminer\\c00w-bitHopper-v0.1.3-19-g52db110\\pool.py:177:selectsharesResponse\n]"
2011-08-08 13:15:59-0400 [HTTP11ClientProtocol,client] mineco: 501723

small error.. doesnt seem to be effecting much



Quote
damn sure, it gets stuck right after pressing enter


that means it is working.. you didnt tell me you wanted output to both file AND screen.
Code:
try bithopper.py --debug | tee >debuglog

mooo for rent
Starlightbreaker
Legendary
*
Offline Offline

Activity: 1764
Merit: 1006



View Profile
August 08, 2011, 05:26:54 PM
 #2997

FYI still working on AltSliceScheduler, no updates to push yet. Working on getting pool speed, duration time from JSON/RE. Have maybe 50% of pools done. Next step will be to add in a new option to hop based on some combination of round time and # of shares.

Finding an optimal point on duration vs shares will be interesting.

Also merged in some of ryouiki's code to estimate round time / pool speed as well, takes hours to stabilize and have anything reasonable though.

I may add an option of how much the round time factors into each slice as well.

And yes I do have a solution for btcmp.com, but i'm concentrating on the round time solution first.

Will need some volunteers in the next few days. Any takers?

eh.

hit me up, i'll test it out.

dribbits
Newbie
*
Offline Offline

Activity: 20
Merit: 0


View Profile
August 08, 2011, 05:32:08 PM
 #2998

Are Polmine stats screwy for anyone else? User page is showing 348,994 this round, pool stats page is showing 949,000.
djex
Full Member
***
Offline Offline

Activity: 196
Merit: 100


View Profile
August 08, 2011, 05:32:20 PM
 #2999

Code:
2011-08-08 13:15:59-0400 [HTTP11ClientProtocol,client] Error in pool api for arsbitcoin
2011-08-08 13:15:59-0400 [HTTP11ClientProtocol,client] "[Failure instance: Traceback: <type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'group'\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:1076:gotResult\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:1063:_inlineCallbacks\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:361:callback\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:455:_startRunCallbacks\n--- <exception caught here> ---\nD:\\Python27\\lib\\site-packages\\twisted\\internet\\defer.py:542:_runCallbacks\nD:\\Users\\joulesbeef\\Desktop\\currentminer\\c00w-bitHopper-v0.1.3-19-g52db110\\pool.py:177:selectsharesResponse\n]"
2011-08-08 13:15:59-0400 [HTTP11ClientProtocol,client] mineco: 501723

small error.. doesnt seem to be effecting much

When it happens though it lags and all the pools turn red.

Smiley  : 1LbvSEJwtQZKLSQQVYxQJes8YneQk2yhE3
burp
Member
**
Offline Offline

Activity: 98
Merit: 10


View Profile
August 08, 2011, 05:34:43 PM
 #3000

The error seems to have completely disabled my server, need to initiate a remote forced reboot Sad
Pages: « 1 ... 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 [150] 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 ... 205 »
  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!