Author

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

hero member
Activity: 924
Merit: 1000
Watch out for the "Neg-Rep-Dogie-Police".....
Kano,

Will you have time to weave your magic with this latest release for use on 11.04 before you leave?  Wink

BFL eh? Sounds interesting....
legendary
Activity: 4592
Merit: 1851
Linux since 1997 RedHat 4
Hi,

I have a problem with cgminer > 2.9.7 when using it with my CM1 boards (icarus emulation).

I start it as

Code:
cgminer -S /dev/1st-board -S /dev/2nd-board -S /dev/and_so_on --fix-protocol --failover-only --icarus-timing long -o http://rpc.hhtt.1209k.com:8337 -O 1Xyz..._128 

so I'm running with difficulty 128.

With 2.10.4 and now 2.10.5 board hashing speeds are insane, I reach Pethashes and I get tons, I mean tons, of HW: errors

I stop it, restart 2.9.7 with the same parameters (I'm using a script, btw) and all works as it should.

Are there problems with --icarus-timing long or icarus boards ?

spiccioli

Do you only have CM1 boards or do you have other devices also?
Also, rather than 'tons' give a screen shot or an API output.
API stats/summary/devs output would be helpful (stats shows the icarus-timing stats)
I haven't used icarus-timing for a while, so I've no idea if I've caused any problems with it recently
I'll check it after I've has a chance to look at you screen dump and the API stats/summary/devs

Aside:
The Icarus driver is the last of the serial-USB drivers, that I'll get around to updating some time in the ... future ... to use direct USB
But I'm now a bit short on time due to going to visit BFL on the 17th for a week so it may be a while before I update the Icarus code.
legendary
Activity: 1378
Merit: 1003
nec sine labore
Hi,

I have a problem with cgminer > 2.9.7 when using it with my CM1 boards (icarus emulation).

I start it as

Code:
cgminer -S /dev/1st-board -S /dev/2nd-board -S /dev/and_so_on --fix-protocol --failover-only --icarus-timing long -o http://rpc.hhtt.1209k.com:8337 -O 1Xyz..._128 

so I'm running with difficulty 128.

With 2.10.4 and now 2.10.5 board hashing speeds are insane, I reach Pethashes and I get tons, I mean tons, of HW: errors

I stop it, restart 2.9.7 with the same parameters (I'm using a script, btw) and all works as it should.

Are there problems with --icarus-timing long or icarus boards ?

spiccioli
hero member
Activity: 574
Merit: 500
I have a new powercolor 7970 (my first 7970)

I cam only get ~ 450 K/hash stable with this card

--scrypt --thread-concumreancy 8000 i 16 g 4 -w 256

Is this normal for this card ??

Do i need mega thread concurency for ltc ... ??



hero member
Activity: 675
Merit: 514
For some reason I can't use the --debug option:
Code:
cgminer.exe -u name -p password -o http://localhost:8334 -I 3 --debug
After this
Code:
[2013-02-07 08:55:27] Probing for an alive pool
[2013-02-07 08:55:27] Popping work to stage thread
it crashes.
Without the debug option everything looks ok.
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
New release: 2.10.5, 7th February 2013

Maintenance release improving on the already good 2.10.4
Linux binaries are now made against ubuntu 12.10 which also work on ubuntu 12.04
Windows binaries are built from a new cross compile setup of mine so they include a new set of DLLs to suit in the archive.


Human readable changelog

Fixed the memory leak, the size of which was proportional to stratum share submissions.
Sped up work generation on stratum even more.
Fixed (one of?) the corrupt stratum share submission bug (found by Kanoi).
Fixed a potential overflow that pools could theoretically use to crash your miner or worse (found by luke-Jr).


Full changelog

- Fix logic fail on partial writes with stratum send that was leading to corrupt
message submissions.
- Do not consider every call to stratum_resumed a pool recovery unless it was
actually idle.
- Do not enable the pool disable on reject feature unless explicitly enabled
with --disable-rejecting.
- Stratum disconnect shares - count total against stale
- Use sanity checking to prevent a possible overflow with invalid data being
given by the pool for difficulty as reported by luke-Jr.
- Check for calloc failure for completeness in gen_stratum_work.
- Cache the coinbase length to speed up stratum work generation.
- Cache the header length when generating stratum work to avoid calculating it
on every work generation, and to only need one alloc+sprintf, speeding up work
generation.
- Use heap ram for coinbase in gen_stratum_work, zeroing it before use.
- Provide a wrapper for aligning lengths of size_t to 4 byte boundaries.
- Fix memory leak on stratum share submission.
- Zero the best share string memory when zeroing stats.
legendary
Activity: 1386
Merit: 1097
How does one force GBT usage in 2.10.4?

Trying to poke the ASIC miner into GBT'ing from bitcoind, rather than getwork'ing.


I did not add support for GBT from bitcoind, sorry. It's a different protocol to GBT from pools.

It is possible to use stratum server to connect cgminer to local bitcoind.

Cgminer -> stratum server -> bitcoind will work.

Stratum server in my github's stratum-mining repository is quite lightweight, it even doesnt need any database...
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
How does one force GBT usage in 2.10.4?

Trying to poke the ASIC miner into GBT'ing from bitcoind, rather than getwork'ing.


I did not add support for GBT from bitcoind, sorry. It's a different protocol to GBT from pools.
legendary
Activity: 1596
Merit: 1099
How does one force GBT usage in 2.10.4?

Trying to poke the ASIC miner into GBT'ing from bitcoind, rather than getwork'ing.

legendary
Activity: 1610
Merit: 1000
Kon (Kano),
Memleak is gone! I was mining with stratum and was hitting bug badly when submitting work


Thank you
legendary
Activity: 1386
Merit: 1097
I reported submitting binary mess in json payload days ago. I see that more and more often in my pool logs, probably as people are updating to the newest cgminer.
legendary
Activity: 1750
Merit: 1007
I've noticed the same thing as cointron from the first moment i implemented stratum support.

I've reported this a few times on BTC Guild.  Miners submitting blank/random byte data in ntime/extranonce occasionally.  This was a much older cgminer version that had the problem though, and I think that user stopped submitting bad data after upgrading.
sr. member
Activity: 288
Merit: 250
I've noticed the same thing as cointron from the first moment i implemented stratum support.
hero member
Activity: 924
Merit: 1000
Watch out for the "Neg-Rep-Dogie-Police".....
Hello guys, looking for a little advice. I'm running cgminer with Xubuntu Natty on my two rigs and am very happy with the stability and performance. My main PC, that I use daily, is Windoze 7 64bit - and I'm using my spare graphics cards on this to mine when it's switched on. The mobo has integrated Intel HD graphics which I use as the primary connection to my monitor via dvi and secondary to my HD TV via HDMI, leaving the graphics cards free for mining - or so I thought. When mining I still get the "lag" that is associated with mining on my Intel Graphics display, even though it is not being used for mining. Am I missing some kind of setting that will completely separate my integrated graphics from mining leaving it free for general usage without the "lag" issue? I have checked the readme, googled etc but can't seem to find a solution. My PC mobo & CPU support virtualization, so I did try installing Xubuntu on a virtual machine (Oracle VirtualBox) on my PC with the hope of mining that way, but setting up VGA passthrough is beyond my ability/knowledge of linux, as I've only just started using it and have been unable to find a tutorial that I fully understand or feel comfortable using (Linux noob  Grin).

Any help/suggestions or advice would be gratefully accepted.....

Peace.
legendary
Activity: 1182
Merit: 1000
Never seen anything like it, and I have no idea how it could happen?

Here's the parsing code:

Code:
 job_id = json_array_string(val, 0);
 prev_hash = json_array_string(val, 1);
 coinbase1 = json_array_string(val, 2);
 coinbase2 = json_array_string(val, 3);
 bbversion = json_array_string(val, 5);
 nbit = json_array_string(val, 6);
 ntime = json_array_string(val, 7);
 clean = json_is_true(json_array_get(val, 8));

and here's the submit generation code:
Code:
  work->ntime = strdup(pool->swork.ntime);

  sprintf(s, "{\"params\": [\"%s\", \"%s\", \"%s\", \"%s\", \"%s\"], \"id\": %d, \"method\": \"mining.submit\"}",
   pool->rpc_user, work->job_id, work->nonce2, work->ntime, noncehex, sshare->id);

Pretty straight forward so your guess is as good as mine? Unless there's memory corruption going on in the miner because of scrypt's weird and wonderful use of memory, but you're describing a simple swapping which is not like memory corruption. Could you track the message the pool sent when the miner returns something odd to make sure it was sent out ok, because this is the first time this sort of bug has been reported and other scrypt pools have been supporting stratum for a while?


It is not only swapping values.  jobid, Extranonce2, ntime can be corrupted in many ways.( non hex characters, empty, even " chars ).
I didn't observe any swaps including nonce. This filed seems unaffected.

This issue doesn't occur in neither in BTC nor TRC pool. TRC mining doesn't use scrypt.

Yes I can track all mining.notifications. Here you have example conversation with client 12:

1. Pool sends mining.notification:
Code:
[2013-02-03 11:26:46.688] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 12, Outbound message: {"params": ["3", "xxx", "xxx", "xxx", [], "00000001", "1c0d849c", "510e4975", false], "id": null, "method": "mining.notify"}
2. Miner responds: (1st response is corrupted)
Code:
[2013-02-03 11:26:47.546] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 12,  Inbound message: {"params": ["xxx.elke", "", "", "", "d2af4400"], "id": 10097, "method": "mining.submit"}
[2013-02-03 11:26:54.332] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 12,  Inbound message: {"params": ["xxx.elke", "3", "08000000", "510e4975", "0f1b0e00"], "id": 10098, "method": "mining.submit"}
[2013-02-03 11:26:56.033] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 12,  Inbound message: {"params": ["xxx.elke", "3", "08000000", "510e4975", "ad8d1100"], "id": 10099, "method": "mining.submit"}

There are 17 miners of 8 different users currently mining at LTC stratum pool. All are using cgminer 2.10.4. Only 5 miners (out of 17) doesn't send those corrupted works. Rest of them has 2%-6% of corrupted submissions. If you want I can provide you with larger sample from my log file. Here you have more examples:
Code:
[2013-02-03 11:27:00.619] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 14,  Inbound message: {"params": ["yyy.c1l", "3", "510e4975", "10000000", "d9270a00"], "id": 6356, "method": "mining.submit"}
[2013-02-03 11:27:00.619] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 14, Outbound message: {"id": 6356, "result": null, "error": [28, "Ntime out of range", null]}


[2013-02-03 11:27:17.124] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 1,  Inbound message: {"params": ["zzz.docointron", "4", "F000000", "510e4993", "92f0ad00"], "id": 1274, "method": "mining.submit"}
[2013-02-03 11:27:17.124] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 1, Outbound message: {"id": 1274, "result": null, "error": [26, "Incorrect Extranonce2 size", null]}


[2013-02-03 11:27:48.558] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 11,  Inbound message: {"params": ["bbb.crunch2", "510e49b1", "5", "10000000", "9a3a8300"], "id": 17147, "method": "mining.submit"}
[2013-02-03 11:27:48.558] TraceActivity Verbose: 0 : [AsyncTcpServer], ClientId: 11, Outbound message: {"id": 17147, "result": null, "error": [26, "Incorrect Extranonce2 size", null]}
legendary
Activity: 4592
Merit: 1851
Linux since 1997 RedHat 4
I'll be getting an rpi B 512 next week - so I'll also be paying more attention to RAM usage.
But as I mentioned somewhere else?, cgminer (without GBT) doesn't use much RAM anyway.

2hrs:
15911 root      20   0 1282m 4228 2648 S  0.0  0.0   0:04.91 cgminer-2104n

FYI this version still has the unfreed work issue, but is only 1xBFL at ~860MH/s

... I think back when Xiangfu was running more than 40 Icarus on his OpenWRT router early last year ...

Kano,

You can trust me on that with 2.10.4 before latest commit it was eating 45M of ram for 2-3 days maks:)

I know what i am talking about..
From the other hand:
top
...
Yes I do realise the latest commit has freed an unfreed work item.

My point was simply to say that indeed cgminer doesn't use much memory (without GBT), so it *should* work fine on OpenWRT and rpi FPGA mining
So when it does indeed use lots of memory, there is something worth tracking down and there is an easy way for me to do that.
Even easier, it only involves me making a 1 line change to miner.h, make clean, make and nothing else Smiley

Aside: My default pool list (now only 8 pools + duplicates) no longer includes pools that have GBT for this reason.
Basically, if "java API pools" says "Has GBT = true" the pool is out of the default list Smiley
I do have the larger list in the original file (2 more pools + duplicates) that I can use on the RARE occasion that I need to test GBT
(Edit: and I even now have my own p2pool instance that I can run if needed - but after a bit over a day of that hitting a bad luck streak they had I stopped it Tongue Easy enough to restart if needed)
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
Ckolivas,

Recently we introduced at coinotron.com support for stratum. I spent a lot of time reading logs from my pool looking for bugs.
I discovered strange behavior of cgminer 2.10.4 mining in Stratum mode. From time to time those miners send mining.submit RPC with interchanged extranonce2 and ntime. Like in following example:
 
{"params": ["xxxxx.ltc01", "1936", "510d2a61", "22000000", "5b5c6000"], "id": 1206, "method": "mining.submit"}
                                                    ntime      extranonce2

There are even more exotic interchanges:
{"params": ["yyyy.yy", "510d2d4e", "1963", "06000000", "f7d60000"], "id": 8, "method": "mining.submit"}

Pool rejects such works. Is this known bug or effect of misconfiguration of cgminer?

Never seen anything like it, and I have no idea how it could happen?

Here's the parsing code:

Code:
	job_id = json_array_string(val, 0);
prev_hash = json_array_string(val, 1);
coinbase1 = json_array_string(val, 2);
coinbase2 = json_array_string(val, 3);
bbversion = json_array_string(val, 5);
nbit = json_array_string(val, 6);
ntime = json_array_string(val, 7);
clean = json_is_true(json_array_get(val, 8));

and here's the submit generation code:
Code:
		work->ntime = strdup(pool->swork.ntime);

sprintf(s, "{\"params\": [\"%s\", \"%s\", \"%s\", \"%s\", \"%s\"], \"id\": %d, \"method\": \"mining.submit\"}",
pool->rpc_user, work->job_id, work->nonce2, work->ntime, noncehex, sshare->id);

Pretty straight forward so your guess is as good as mine? Unless there's memory corruption going on in the miner because of scrypt's weird and wonderful use of memory, but you're describing a simple swapping which is not like memory corruption. Could you track the message the pool sent when the miner returns something odd to make sure it was sent out ok, because this is the first time this sort of bug has been reported and other scrypt pools have been supporting stratum for a while?
hero member
Activity: 675
Merit: 514
Ok, now, this is wierd.
With this command line it crashes:
Code:
cgminer-debug.exe -u name -p password -o http://localhost:15332 -I 3 --auto-fan --debug 2>log.txt
And here it doesn't:
Code:
cgminer-debug.exe -u name -p password -o http://localhost:15332 -I 3 --auto-fan 2>log.txt
Code:
cgminer-debug.exe caused an Access Violation at location 00457e17 in module cgminer-debug.exe Reading from location 557fe519.

Registers:
eax=557fe519 ebx=0065fb08 ecx=00000020 edx=00000038 esi=00000000 edi=0066ecb0
eip=00457e17 esp=0028f780 ebp=0000000e iopl=0         nv up ei pl nz na pe nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010202

Call stack:
00457E17  cgminer-debug.exe:00457E17
00456581  cgminer-debug.exe:00456581
6248544D  pthreadGC2.dll:6248544D  pthread_timechange_handler_np
043FFF6C

hero member
Activity: 675
Merit: 514
After updating my AMD graphics driver to version 13.2 beta (under Windows 8 ) I deleted the old bin files.
Now Cgminer will crash.
Code:
[2013-02-02 17:42:26] Started cgminer 2.10.4
 [2013-02-02 17:42:26] CL Platform 0 vendor: Advanced Micro Devices, Inc.
 [2013-02-02 17:42:26] CL Platform 0 name: AMD Accelerated Parallel Processing
 [2013-02-02 17:42:26] CL Platform 0 version: OpenCL 1.2 AMD-APP (1124.2)
 [2013-02-02 17:42:26] Platform 0 devices: 1
 [2013-02-02 17:42:26] 0 Barts
 [2013-02-02 17:42:26] GPU 0 iAdapterIndex 0 strUDID PCI_VEN_1002&DEV_6738&SUBSYS_31001682&REV_00_4&21148ACA&0&0078A iBusNumber 3 iDeviceNumber 0 iFunctionNumber 0 iVendorID 1002 strAdapterName  AMD Radeon HD 6800 Series
 [2013-02-02 17:42:26] GPU 0 AMD Radeon HD 6800 Series hardware monitoring enabled
 [2013-02-02 17:42:26] FTD2XX.DLL failed to load, not using FTDI bitforce autodetect
 [2013-02-02 17:42:26] MMQ looking for 1fc9:0003 but found 046d:c049 instead
 [2013-02-02 17:42:26] MMQ looking for 1fc9:0003 but found 2304:0223 instead
 [2013-02-02 17:42:26] MMQ looking for 1fc9:0003 but found 10de:036c instead
 [2013-02-02 17:42:26] MMQ looking for 1fc9:0003 but found 046a:0011 instead
 [2013-02-02 17:42:26] MMQ looking for 1fc9:0003 but found 10de:036d instead
 [2013-02-02 17:42:26] Not a ZTEX device 046d:c049
 [2013-02-02 17:42:26] Not a ZTEX device 2304:0223
 [2013-02-02 17:42:26] Not a ZTEX device 10de:036c
 [2013-02-02 17:42:26] Not a ZTEX device 046a:0011
 [2013-02-02 17:42:26] Not a ZTEX device 10de:036d
 [2013-02-02 17:42:26] Probing for an alive pool
 [2013-02-02 17:42:26] Popping work to stage thread
legendary
Activity: 1182
Merit: 1000
Ckolivas,

Recently we introduced at coinotron.com support for stratum. I spent a lot of time reading logs from my pool looking for bugs.
I discovered strange behavior of cgminer 2.10.4 mining in Stratum mode. From time to time those miners send mining.submit RPC with interchanged extranonce2 and ntime. Like in following example:
 
{"params": ["xxxxx.ltc01", "1936", "510d2a61", "22000000", "5b5c6000"], "id": 1206, "method": "mining.submit"}
                                                    ntime      extranonce2

There are even more exotic interchanges:
{"params": ["yyyy.yy", "510d2d4e", "1963", "06000000", "f7d60000"], "id": 8, "method": "mining.submit"}

Pool rejects such works. Is this known bug or effect of misconfiguration of cgminer?
Jump to: