Author

Topic: OFFICIAL CGMINER mining software thread for linux/win/osx/mips/arm/r-pi 4.11.0 - page 444. (Read 5805998 times)

legendary
Activity: 4634
Merit: 1851
Linux since 1997 RedHat 4
For whatever reason they are leaking to backup pools, --failover-only (or java API 'failover-only|true') will stop them from leaking at all.
Lem
newbie
Activity: 78
Merit: 0
I have an issue with cgminer 2.9.x (I switched from 2.8.7 to 2.9.3, now I'm with 2.9.4).

My system has two 7970s. Usually it's capable of about 19 shares/minute. "Difficulty-1 shares", I mean.
I have many pools in my configuration file, and I use fallback policy.

Well, now I'm switching to my pool 0, rpc.hhtt.1209k.com, which is tuned for "difficulty-999 shares" (I find about one "difficulty-999 share" per hour).
See the log:

Code:
...
 [2012-11-19 10:36:29] Switching to http://pool.ABCPool.co:8332
 [2012-11-19 10:36:29] Switching to http://mtred.com:8337
 [2012-11-19 10:36:29] Switching to http://rpc.hhtt.1209k.com:8337
 [2012-11-19 10:36:29] Accepted 8d81b74e Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:36:33] Accepted 9c765368 Diff 1/1 GPU 0 pool 4
 [2012-11-19 10:36:34] Accepted f5f6497e Diff 1/1 GPU 0 pool 4
 [2012-11-19 10:36:37] Accepted aa91e76a Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:36:38] Accepted 17cb863a Diff 10/1 GPU 1 pool 4
 [2012-11-19 10:36:50] Accepted b9670e13 Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:36:54] Accepted 4d2b40f4 Diff 3/1 GPU 1 pool 4
 [2012-11-19 10:38:07] Accepted 142dfb12 Diff 12/1 GPU 0 pool 4
 [2012-11-19 10:38:14] Accepted 4f4fb19d Diff 3/1 GPU 1 pool 2
 [2012-11-19 10:38:14] Accepted 56687d8a Diff 2/1 GPU 0 pool 4
 [2012-11-19 10:39:06] Accepted 2f83dc92 Diff 5/1 GPU 1 pool 1
 [2012-11-19 10:39:15] Accepted 00ce37c3 Diff 317/1 GPU 0 pool 4
 [2012-11-19 10:39:16] Accepted b9c90f24 Diff 1/1 GPU 1 pool 1
 [2012-11-19 10:40:29] Accepted 95753f80 Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:40:34] Accepted 6239214f Diff 2/1 GPU 1 pool 4
 [2012-11-19 10:40:37] Accepted f5648f73 Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:40:38] Accepted 2b2d9fc4 Diff 5/1 GPU 1 pool 4
 [2012-11-19 10:41:38] Accepted cdfe2d9c Diff 1/1 GPU 1 pool 1
 [2012-11-19 10:41:40] Accepted 15ceb2b8 Diff 11/1 GPU 1 pool 4
 [2012-11-19 10:42:35] Accepted 0de06499 Diff 18/1 GPU 0 pool 1
 [2012-11-19 10:42:41] Accepted 59500529 Diff 2/1 GPU 0 pool 1
 [2012-11-19 10:42:47] Accepted a0dc87de Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:42:49] Accepted 978a2ccf Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:43:38] Accepted 6be7ba5e Diff 2/1 GPU 1 pool 4
 [2012-11-19 10:43:42] Accepted 3c094d76 Diff 4/1 GPU 1 pool 4
 [2012-11-19 10:44:42] Accepted 91337feb Diff 1/1 GPU 0 pool 1
 [2012-11-19 10:44:46] Accepted e2bd8f63 Diff 1/1 GPU 0 pool 1
 [2012-11-19 10:45:44] Accepted 3b42ce4c Diff 4/1 GPU 1 pool 2
 [2012-11-19 10:45:49] Accepted d8b08491 Diff 1/1 GPU 0 pool 1
 [2012-11-19 10:45:49] Accepted 98727667 Diff 1/1 GPU 0 pool 1
 [2012-11-19 10:45:51] Accepted 032377c7 Diff 81/1 GPU 0 pool 1
 [2012-11-19 10:46:49] Accepted 7cf04e4f Diff 2/1 GPU 1 pool 4
 [2012-11-19 10:46:49] Accepted 0bc6194e Diff 21/1 GPU 1 pool 4
 [2012-11-19 10:46:52] Accepted 366d07fe Diff 4/1 GPU 1 pool 2
 [2012-11-19 10:46:56] Accepted 5da0bb66 Diff 2/1 GPU 1 pool 4
 [2012-11-19 10:46:58] Accepted 85677bfa Diff 1/1 GPU 1 pool 2
 [2012-11-19 10:47:59] Accepted d6938f60 Diff 1/1 GPU 1 pool 1
 [2012-11-19 10:48:02] Accepted c58fa884 Diff 1/1 GPU 1 pool 1
 [2012-11-19 10:48:03] Accepted b74432dc Diff 1/1 GPU 1 pool 2
 [2012-11-19 10:48:05] Accepted 24be1fee Diff 6/1 GPU 1 pool 2
 [2012-11-19 10:48:06] Accepted 70910858 Diff 2/1 GPU 1 pool 2
 [2012-11-19 10:48:07] Accepted 23e7534b Diff 7/1 GPU 1 pool 2
 [2012-11-19 10:48:09] Accepted a2c36b72 Diff 1/1 GPU 1 pool 2
 [2012-11-19 10:49:12] Accepted 502d43d2 Diff 3/1 GPU 1 pool 2
 [2012-11-19 10:49:20] Accepted a41b80f2 Diff 1/1 GPU 1 pool 2
 [2012-11-19 10:50:16] Accepted 9482541a Diff 1/1 GPU 0 pool 4
 [2012-11-19 10:50:18] Accepted 1b69cc8d Diff 9/1 GPU 0 pool 4
 [2012-11-19 10:51:48] Accepted cdcdded5 Diff 1/1 GPU 1 pool 2
 [2012-11-19 10:52:41] Accepted 559e8003 Diff 2/1 GPU 1 pool 1
 [2012-11-19 10:52:48] Accepted 8f5d78a7 Diff 1/1 GPU 1 pool 1
 [2012-11-19 10:52:51] Accepted 205b2509 Diff 7/1 GPU 1 pool 1
 [2012-11-19 10:52:51] Accepted 76581889 Diff 2/1 GPU 1 pool 1
 [2012-11-19 10:52:54] Accepted ebe6da75 Diff 1/1 GPU 0 pool 4
 [2012-11-19 10:53:01] Accepted bc9fd7d0 Diff 1/1 GPU 0 pool 4
 [2012-11-19 10:53:54] Accepted 7ce2b8b3 Diff 2/1 GPU 1 pool 2
 [2012-11-19 10:53:55] Accepted a2b7a2db Diff 1/1 GPU 0 pool 1
 [2012-11-19 10:55:59] Accepted 9d0da0ad Diff 1/1 GPU 0 pool 1
 [2012-11-19 10:55:59] Accepted 0972d111 Diff 27/1 GPU 0 pool 1
 [2012-11-19 10:56:04] Accepted d4f173f9 Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:56:04] Accepted d4e587d2 Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:57:05] Accepted 5d619343 Diff 2/1 GPU 0 pool 1
 [2012-11-19 10:57:20] Accepted 5a9e7aad Diff 2/1 GPU 1 pool 2
 [2012-11-19 10:57:22] Accepted c51ea99d Diff 1/1 GPU 1 pool 2
 [2012-11-19 10:58:42] Accepted 9ce257d0 Diff 1/1 GPU 1 pool 4
 [2012-11-19 10:59:07] Accepted 000c5b3d Diff 5.3K/999 GPU 1 pool 0
...

Since I'm coming from pool 4, let's discard the first shares still going to pool 4 (till 10:36:54): that's normal.
In minute 10:37 there are no shares found, which is normal too (difficulty 999). Then I start to find and submit shares also for other pools. This isn't normal, IMHO, and surely it has never happened before 2.9.x. Of course, when a new block is found, very few shares always go to different pools: but now a lot of shares  (1 - 5 per minute, so up to 25% of my mining power) sistematically go to other pools, which I don't like: they're prop pools running long rounds, or simply backup PPS pools with higher fees (or lower efficiency) that should come in play only when my primary backup pool (pool 0) isn't available.

Am I missing something? Is this behaviour intentional? Why?

Thanks.
hero member
Activity: 497
Merit: 500
This fixed the issue on the one machine I had that crashed on quitting CGMiner.  Nice work man!
legendary
Activity: 1764
Merit: 1002
i also should say thank you for the great updates.  my gpu's are performing vastly better.
hero member
Activity: 504
Merit: 500
Scattering my bits around the net since 1980
New version - 2.9.4, 19th November 2012

Don't shoot GPU speed up to max when the temperature drops dramatically.

- Only increase gpu engine speed by a larger step if the temperature is below
hysteresis instead of increasing it to max speed.
Thank you so much for this. Smiley

CGminer is doing MUCH better at stabilizing at temperature quickly, instead of over-correcting like it had been doing over a longer period of time.

My bad-fan card clocked all the way down to 600, until the heat dissapated a minute later, then dipped below hysterisis, then rose back up by 10's back to 830 with no problem, then when the temp rose again, gradually this time, the fan and clock were able to react more smoothly, stabilizing quickly, and are now sitting stable at around 85% fan, 760 clock, and 74C degrees. As the temp drops tonight, it should get back up to 830 with the outside air being fed in at ~15C degrees.

This is much appreciated. Cheesy

The only errors I have seen so far, is a couple 'method not found' errors, which appear to come only when the pools are initially probed. I assume this is when checking for stratum. They don't interrupt anything, and mining fires right up as usual. (the pools don't have stratum support)
(W32 binary on Win7)

-- Smoov

sr. member
Activity: 383
Merit: 250
Cgminer 2.9.4 builds successfully on Windows using MinGW.  Smiley
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
New version - 2.9.4, 19th November 2012

Bugfixes. This should push this version up to the status of current stable release.


Human readable changelog

Fixed the elusive stratum disconnect windows crash bug.
Fixed mining stratum on EMC.
Fixed mining GBT on bitminter.
Provided preliminary support for balance and loadbalance with stratum and GBT.
Provided support for numeric IPV6 stratum support.
Don't shoot GPU speed up to max when the temperature drops dramatically.
Quieten the pool not responding messages for backup pools.
Flush more work on longpoll that we may have been leaving behind.
Fixes to build on windows.
Support for fractional diff values with stratum.


Full changelog

- Provide rudimentary support for the balancing failover strategies with stratum
and GBT by switching pools silently on getwork requests.
- Convert remaining modminer and bfl uses of usleep to nmsleep.
- Convert libztex to nmsleep where possible.
- Convert unreliable usleep calls to nmsleep calls in ztex driver.
- Support workid for block submission on GBT pools that use it.
- Provide rudimentary support for literal ipv6 addresses when parsing stratum
URLs.
- Work around libcurl cflags not working on hacked up mingw installations on
windows.
- Only increase gpu engine speed by a larger step if the temperature is below
hysteresis instead of increasing it to max speed.
- Convert pool not responding and pool alive message on backup pools to verbose
level only since they mean a single failed getwork.
- Update work block on the longpoll work item before calling restart threads to
ensure all work but the longpoll work item gets discarded when we call
discard_stale from restart_threads.
- Do not attempt to remove the stratum share hash after unsuccessful submission
since it may already be removed by clear_stratum_shares.
- Check against a double for current pool diff.
- Support for fractional diffs and the classic just-below-1 share all FFs diff
target.
legendary
Activity: 1540
Merit: 1001
Alrighty, I found some time to look at the code and think I've found something hopefully. I'll try to spin something up soon for you try.
Try one of these builds again:
http://ck.kolivas.org/apps/cgminer/temp/

Interestingly if this is the actual bug, it should be possible to hit it on linux as well, but it seems to be much harder to hit because linux can easily tell when the socket has dropped out.

Confirmed, does not crash.  It also recovers properly once I plug the NIC back in.

I still see the same oddity with it saying the pool that just died is now active, even though the NIC is still disconnected:

Code:
[2012-11-18 06:38:18] Started cgminer 2.9.3
[2012-11-18 06:38:18] Loaded configuration file cgminer.conf
[2012-11-18 06:38:18] Probing for an alive pool
[2012-11-18 06:38:25] Accepted cc924ccb Diff 1/1 GPU 0 pool 0
[2012-11-18 06:38:28] Pool 2 http://us.ozco.in:8332 alive
[2012-11-18 06:38:29] Pool 3 http://eu2.ozco.in:8332 alive
[2012-11-18 06:38:30] Pool 4 http://eu.ozco.in:8332 alive
[2012-11-18 06:38:31] Pool 5 http://us1.eclipsemc.com:8337 alive
[2012-11-18 06:38:31] Pool 6 http://us2.eclipsemc.com:8337 alive
[2012-11-18 06:38:32] Pool 7 http://us3.eclipsemc.com:8337 alive
[2012-11-18 06:38:32] Pool 8 http://pool.50btc.com:8332 alive
[2012-11-18 06:38:33] Pool 9 http://localhost:8332 alive
[2012-11-18 06:38:33] Block change for http://localhost:8332 detection via http
//stratum.ozco.in:3333 stratum
[2012-11-18 06:38:35] Accepted 7c19995b Diff 2/1 GPU 0 pool 0
[2012-11-18 06:38:42] Accepted 87a4d802 Diff 1/1 GPU 0 pool 0
[2012-11-18 06:39:08] Pool 0 stratum share submission failure    <------ NIC disconnected here
[2012-11-18 06:39:08] Lost 4 shares due to stratum disconnect on pool 0
[2012-11-18 06:39:29] Pool 0 http://stratum.ozco.in:3333 not responding!
[2012-11-18 06:39:29] Switching to http://us.ozco.in:8332
[2012-11-18 06:39:29] Long-polling activated for http://us.ozco.in:8332/LP
[2012-11-18 06:39:34] Pool 0 http://stratum.ozco.in:3333 alive
[2012-11-18 06:39:34] Switching to http://stratum.ozco.in:3333 <-------- still disconnected

I think you might have it nailed! Smiley

M
legendary
Activity: 952
Merit: 1000
This version doesn't crash. At least not within two minutes after disconnect.
Thanks  Smiley
I unplugged my adapter, and it kept going. No crash. Cheesy
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
This version doesn't crash. At least not within two minutes after disconnect.
Thanks  Smiley
hero member
Activity: 675
Merit: 514
This version doesn't crash. At least not within two minutes after disconnect.
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
Alrighty, I found some time to look at the code and think I've found something hopefully. I'll try to spin something up soon for you try.
Try one of these builds again:
http://ck.kolivas.org/apps/cgminer/temp/

Interestingly if this is the actual bug, it should be possible to hit it on linux as well, but it seems to be much harder to hit because linux can easily tell when the socket has dropped out.
legendary
Activity: 1540
Merit: 1001
Well it looks like in every case where there's enough details, is seems that a null (or corrupt) pointer is being used.
(Well one clearly said it was a null pointer, the others could be that or a corrupt pointer)
The "--verbose fix" is most likely a memory rearrangement that hides the problem.

I tried my memory.h on windows yesterday and made the changes necessary to work on windows also. Smiley
Only problem of course is that a solitary null/corrupt pointer wont be picked up by my memory check code.

I guess I'll also have a go at trying to find it ... soon ... if I ever finish this MMQ USB code Tongue
... trying to get it to work on windows at the moment Sad

Think it's related to it trying to use the pool after it's clearly dead? 

Code:
[2012-11-17 06:39:07] Pool 0 share submission failure  <----- disconnected NIC
[2012-11-17 06:39:28] Pool 0 http://stratum.ozco.in:3333 not responding!
[2012-11-17 06:39:28] Switching to http://us.ozco.in:8332 
[2012-11-17 06:39:28] Long-polling activated for http://us.ozco.in:8332/LP
[2012-11-17 06:39:28] Pool 0 http://stratum.ozco.in:3333 alive   <---------- ????
[2012-11-17 06:39:28] Switching to http://stratum.ozco.in:3333

M
legendary
Activity: 2576
Merit: 1186
I wonder if this crash affects BFGMiner...? (If not, then it's a simple matter of finding out which bugfix Con hasn't merged)
legendary
Activity: 4634
Merit: 1851
Linux since 1997 RedHat 4
Well it looks like in every case where there's enough details, is seems that a null (or corrupt) pointer is being used.
(Well one clearly said it was a null pointer, the others could be that or a corrupt pointer)
The "--verbose fix" is most likely a memory rearrangement that hides the problem.

I tried my memory.h on windows yesterday and made the changes necessary to work on windows also. Smiley
Only problem of course is that a solitary null/corrupt pointer wont be picked up by my memory check code.

I guess I'll also have a go at trying to find it ... soon ... if I ever finish this MMQ USB code Tongue
... trying to get it to work on windows at the moment Sad
legendary
Activity: 1540
Merit: 1001
Here's something interesting!  Using 2.9.3 with --verbose, it doesn't crash!!!  I still observe the same oddity as in 2.8.7 where it says pool 0 is no responding, then it says it's alive again.  Since the NIC isn't plugged in, it can't do anything, but it does not crash.  When I plug the NIC back in, it successfully recovers.

Using -T doesn't change anything, it still crashes.

Hopefully this helps!!

--verbose works! I unplugged my wireless adapter, and it disconnected. Waited about 60 seconds, plugged it back in, and it reconnected. No crashes. At least we have a temporary fix!
That is most interesting guys, and at least gives me a lead! I appreciate your testing and input. This is what free software and open development is about.
It's a long shot but try the latest builds here (without verbose):
http://ck.kolivas.org/apps/cgminer/temp/

Nope. Sad

Code:
Dump Summary
------------
Dump File: cgminer_121117_183817.dmp : C:\downloads\Programs\cgminer_121117_183817.dmp
Last Write Time: 11/17/2012 6:38:17 PM
Process Name: cgminer.exe : C:\mining\cgminer\cgminer.exe
Process Architecture: x86
Exception Code: 0xC0000005
Exception Information: The thread tried to read from or write to a virtual address for which it does not have the appropriate access.

M
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
Here's something interesting!  Using 2.9.3 with --verbose, it doesn't crash!!!  I still observe the same oddity as in 2.8.7 where it says pool 0 is no responding, then it says it's alive again.  Since the NIC isn't plugged in, it can't do anything, but it does not crash.  When I plug the NIC back in, it successfully recovers.

Using -T doesn't change anything, it still crashes.

Hopefully this helps!!

--verbose works! I unplugged my wireless adapter, and it disconnected. Waited about 60 seconds, plugged it back in, and it reconnected. No crashes. At least we have a temporary fix!
That is most interesting guys, and at least gives me a lead! I appreciate your testing and input. This is what free software and open development is about.
It's a long shot but try the latest builds here (without verbose):
http://ck.kolivas.org/apps/cgminer/temp/
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
Here's something interesting!  Using 2.9.3 with --verbose, it doesn't crash!!!  I still observe the same oddity as in 2.8.7 where it says pool 0 is no responding, then it says it's alive again.  Since the NIC isn't plugged in, it can't do anything, but it does not crash.  When I plug the NIC back in, it successfully recovers.

Using -T doesn't change anything, it still crashes.

Hopefully this helps!!

--verbose works! I unplugged my wireless adapter, and it disconnected. Waited about 60 seconds, plugged it back in, and it reconnected. No crashes. At least we have a temporary fix!
That is most interesting guys, and at least gives me a lead! I appreciate your testing and input. This is what free software and open development is about.
legendary
Activity: 952
Merit: 1000
Here's something interesting!  Using 2.9.3 with --verbose, it doesn't crash!!!  I still observe the same oddity as in 2.8.7 where it says pool 0 is no responding, then it says it's alive again.  Since the NIC isn't plugged in, it can't do anything, but it does not crash.  When I plug the NIC back in, it successfully recovers.

Using -T doesn't change anything, it still crashes.

Hopefully this helps!!

M

--verbose works! I unplugged my wireless adapter, and it disconnected. Waited about 60 seconds, plugged it back in, and it reconnected. No crashes. At least we have a temporary fix!
legendary
Activity: 1973
Merit: 1007
Thanks for your dedication to this project. I'd like to request a new load balancing option. 1 device per pool. I'm concerned about pool stability once ASICs start rolling out.

From my experience with cgminer, load-balance and balance do not really distribute work evenly across pools. I'd like to define a list of 10 pools, and each device mines solely on one of the pools in that list. If one of the pools fails, the device attached will move on to the next pool in the list.

Thanks!

This can already be done just by running multiple instances of CGminer.  While it's not the most elegant solution, it is far easier than asking Con to add or rewrite code.
Yes that's already my backup plan, but I'd much rather monitor my miners from one instance vs n instances.
Jump to: