Author

Topic: [1500 TH] p2pool: Decentralized, DoS-resistant, Hop-Proof pool - page 495. (Read 2591928 times)

-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
Thanks for testing. Still got a little bit more to squeeze out of it but the cpu usage will always look a little higher due to the driver cpu usage all being attributed to cgminer now instead of hidden in the operating system (since there is no driver with direct usb).
newbie
Activity: 31
Merit: 0
An Avalon mining on P2Pool with even 3 modules does indeed take its CPU to the limit. The only real difference between P2Pool and other pools is that P2Pool's generation transaction is much larger. I'm guessing that the bottleneck is hashing the generation transaction ~16 times per second (though that isn't much...). If that's true, perhaps cgminer could be optimized to compress everything before the Stratum nonce to a SHA-256 midstate?
There's an obvious optimisation there that I didn't spot and it's only now that we have hardware being outstripped by the work generation requirements that I've looked into it. Thanks for the pointer, I shall see what I can do.
Yes, that did it. I've committed code to the cgminer git tree which dramatically reduces the cpu usage (confirmed on my avalon mining to p2pool). When my server comes back online I'll upload new avalon firmware.

Cool. Can't wait to test it.

Managed to figure out how to cross compile cgminer from the git repo.

Latest version brings down the CPU usage to ~20%, not quite as optimized as bfgminer, but now we have plenty of headroom on the TP-Link to hash at p2pool with full power.

Thank you ckolivas!
legendary
Activity: 4592
Merit: 1851
Linux since 1997 RedHat 4
(Zadig) that all but the inept can follow.

That's not really true, is it?  WinUSB and zadiag is an unnecessary complication.  And an unreliable one at that.  

VCP drivers, as I said above, are so simple anyone can get those working.  It's a 2 second install, wait for the sticks to be installed, run miner.
No

Well, yes actually.  Huh  

I don't understand?

It really is as simple as running the VCP driver installer (double click, press next, press finish).  Plug in hub.  Plug in Erupters.  Wait a few minutes until Erupters are assigned COM port.  Run bfgminer with -S erupter:all flag, job done.    

That's literally from a fresh install of Windows.  No other driver.

How can running zadiag and changing drivers per stick and all that jazz possibly be easier that doing nothing? My mind is literally boggling as to how you think all those extra steps are easier than one step.  Huh
I never said it was easier than doing nothing.
Quote where I said that?

Though as you pointed out yourself - it isn't "doing nothing" to do it your way either ...

Sheesh, I can't stand people who argue about crap just so they pretend they never say anything incorrect.

It is however, easy to do for all but the inept.

Not only that, you don't have to wait.
You start cgminer even before you plug them in with all the other hardware you already have ...
and when you plug them in, and they are detected properly, cgminer will start using them.
For the first one that requires using Zadig, rather than using "VCP driver installer"
For the rest it is ... nothing.
newbie
Activity: 31
Merit: 0
An Avalon mining on P2Pool with even 3 modules does indeed take its CPU to the limit. The only real difference between P2Pool and other pools is that P2Pool's generation transaction is much larger. I'm guessing that the bottleneck is hashing the generation transaction ~16 times per second (though that isn't much...). If that's true, perhaps cgminer could be optimized to compress everything before the Stratum nonce to a SHA-256 midstate?
There's an obvious optimisation there that I didn't spot and it's only now that we have hardware being outstripped by the work generation requirements that I've looked into it. Thanks for the pointer, I shall see what I can do.
Yes, that did it. I've committed code to the cgminer git tree which dramatically reduces the cpu usage (confirmed on my avalon mining to p2pool). When my server comes back online I'll upload new avalon firmware.

Cool. Can't wait to test it.
sr. member
Activity: 288
Merit: 250
Is there any option in p2pool to send an email when payout is generated?
If you use Blockchain.info to watch your address, you'll get an email when you receive a payment.

For BTC this is fine, but do you have any ideas how to get notifications for LTC payouts?
hero member
Activity: 591
Merit: 500
Is there any option in p2pool to send an email when payout is generated?
If you use Blockchain.info to watch your address, you'll get an email when you receive a payment.
sr. member
Activity: 288
Merit: 250
Is there any option in p2pool to send an email when payout is generated?
hero member
Activity: 1246
Merit: 501
Well it is slightly more work initially, despite what kano says, but you run zadig as administrator, plug in ONE device, wait till windows finishes fscking around with it, then tell zadig to change that device to winusb (that's all the extra work there is). Then you don't need to specify any command line options for cgminer to recognise and use the device, and any time you plug in any other device of the same kind from then on forever more, it will run, including without restarting cgminer since it will hotplug them.

Finally, someone with some sense. Smiley 

I still prefer the new bfgminer interface (Blue bits!), and pool prioritization facility (rather than the plain old Failover etc of cgminer).   Wink
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
Well it is slightly more work initially, despite what kano says, but you run zadig as administrator, plug in ONE device, wait till windows finishes fscking around with it, then tell zadig to change that device to winusb (that's all the extra work there is). Then you don't need to specify any command line options for cgminer to recognise and use the device, and any time you plug in any other device of the same kind from then on forever more, it will run, including without restarting cgminer since it will hotplug them.
hero member
Activity: 1246
Merit: 501
(Zadig) that all but the inept can follow.

That's not really true, is it?  WinUSB and zadiag is an unnecessary complication.  And an unreliable one at that. 

VCP drivers, as I said above, are so simple anyone can get those working.  It's a 2 second install, wait for the sticks to be installed, run miner.
No

Well, yes actually.  Huh 

I don't understand?

It really is as simple as running the VCP driver installer (double click, press next, press finish).  Plug in hub.  Plug in Erupters.  Wait a few minutes until Erupters are assigned COM port.  Run bfgminer with -S erupter:all flag, job done.   

That's literally from a fresh install of Windows.  No other driver.

How can running zadiag and changing drivers per stick and all that jazz possibly be easier that doing nothing? My mind is literally boggling as to how you think all those extra steps are easier than one step.  Huh
legendary
Activity: 4592
Merit: 1851
Linux since 1997 RedHat 4
(Zadig) that all but the inept can follow.

That's not really true, is it?  WinUSB and zadiag is an unnecessary complication.  And an unreliable one at that. 

VCP drivers, as I said above, are so simple anyone can get those working.  It's a 2 second install, wait for the sticks to be installed, run miner.
No
legendary
Activity: 2912
Merit: 1060
A complication is finding the com ports
hero member
Activity: 1246
Merit: 501
(Zadig) that all but the inept can follow.

That's not really true, is it?  WinUSB and zadiag is an unnecessary complication.  And an unreliable one at that. 

VCP drivers, as I said above, are so simple anyone can get those working.  It's a 2 second install, wait for the sticks to be installed, run miner.
legendary
Activity: 4592
Merit: 1851
Linux since 1997 RedHat 4
I guess you haven't noticed all the FTDI code in the clone that bypasses the COM ports ... of the fact that the ztex is ONLY libusb ... as is the x6500 code ... of that the COM ports are actually about 5 or 6 different drivers underneath them ... i.e. it a mix of many different drivers and code ...

cgminer is purely only direct USB, libusb for all drivers, and simple instructions (Zadig) that all but the inept can follow.
hero member
Activity: 1246
Merit: 501
Tried bfgminer?  Works better for me with my little Erupters.

What driver do you use for the erupters with BFGMiner?  I have tried WinUSB (zadig) and the Silicon Labs CP210x drivers, and BFGMiner refuses to see either.

Get rid of WinUSB.  Just use the VCP drivers for bfgminer - it'll work if you see your BEs being assigned a COM port in Windows.

The WinUSB drivers are, in my opinion, a HUGE mistake that the cgminer folks have made.  It's unnecessarily difficult to get working, and gives no real benefit.  The VCP drivers are a 2 second install, and they just work (or at least have for me on a few different machines on Server 2012, Win7 and Win8.
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
An Avalon mining on P2Pool with even 3 modules does indeed take its CPU to the limit. The only real difference between P2Pool and other pools is that P2Pool's generation transaction is much larger. I'm guessing that the bottleneck is hashing the generation transaction ~16 times per second (though that isn't much...). If that's true, perhaps cgminer could be optimized to compress everything before the Stratum nonce to a SHA-256 midstate?
There's an obvious optimisation there that I didn't spot and it's only now that we have hardware being outstripped by the work generation requirements that I've looked into it. Thanks for the pointer, I shall see what I can do.
Yes, that did it. I've committed code to the cgminer git tree which dramatically reduces the cpu usage (confirmed on my avalon mining to p2pool). When my server comes back online I'll upload new avalon firmware.
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
An Avalon mining on P2Pool with even 3 modules does indeed take its CPU to the limit. The only real difference between P2Pool and other pools is that P2Pool's generation transaction is much larger. I'm guessing that the bottleneck is hashing the generation transaction ~16 times per second (though that isn't much...). If that's true, perhaps cgminer could be optimized to compress everything before the Stratum nonce to a SHA-256 midstate?
There's an obvious optimisation there that I didn't spot and it's only now that we have hardware being outstripped by the work generation requirements that I've looked into it. Thanks for the pointer, I shall see what I can do.
newbie
Activity: 31
Merit: 0
bfgminer has now been running for the past 20 hours on my Avalon @325 mining on p2pool. So far, it is working fast and stable.

Stats:
Code:
Miner 	Status 	Uptime 	        MH/s 	        A       R 	HW% 	Utility    Invalid 	WU 	      BestShare
001 ONLINE 0d 20:12:15 103454.057 6258 601 0.74% 5.162     8.76% 1445.371 11669957

Output of top:
Code:
Mem: 21880K used, 7220K free, 0K shrd, 2164K buff, 9140K cached
CPU:   3% usr   2% sys   0% nic  93% idle   0% io   0% irq   0% sirq
Load average: 0.05 0.08 0.12 3/42 1510
  PID  PPID USER     STAT   VSZ %VSZ %CPU COMMAND
 1274  1269 root     S    27728  95%   6% bfgminer -S avalon:/dev/ttyUSB0 -o ht
 1510  1505 root     R     1500   5%   0% top
 1505  1504 root     S     1504   5%   0% -ash
 1269  1268 root     S     1504   5%   0% -ash
  697     1 root     S     1500   5%   0% /usr/sbin/ntpd -n -p 0.openwrt.pool.n
  545     1 root     S     1472   5%   0% /sbin/netifd
    1     0 root     S     1432   5%   0% /sbin/procd
 1268   639 root     S     1244   4%   0% /usr/sbin/dropbear -F -P /var/run/dro
 1504   639 root     S     1220   4%   0% /usr/sbin/dropbear -F -P /var/run/dro
  655     1 root     S     1164   4%   0% /usr/sbin/uhttpd -f -h /www -r OpenWr
  639     1 root     S     1156   4%   0% /usr/sbin/dropbear -F -P /var/run/dro
  685     1 nobody   S      956   3%   0% /usr/sbin/dnsmasq -C /var/etc/dnsmasq
  432     1 root     S <    904   3%   0% ubusd
  434     1 root     S      768   3%   0% /sbin/askfirst ttyATH0 /bin/ash --log

legendary
Activity: 4592
Merit: 1851
Linux since 1997 RedHat 4
No that isn't the only difference, the other 2 major problems are:
1) it's python - so it will use more CPU
2) it only uses one thread by default and thus p2pool itself can easily get CPU starved on a machine with 16 cores ...

I'm talking about the Avalon device's CPU.
Ah OK, you mean profiling cgminer ... yep that does indeed need to be done.
Guessing about profiling is one of the common mistakes by most programmers ... but yes (again) it does need to be done.
hero member
Activity: 516
Merit: 643
No that isn't the only difference, the other 2 major problems are:
1) it's python - so it will use more CPU
2) it only uses one thread by default and thus p2pool itself can easily get CPU starved on a machine with 16 cores ...

I'm talking about the Avalon device's CPU.
Jump to: