Author

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

newbie
Activity: 23
Merit: 0
I managed to compile cgminer in Android and trying to run it in my SGS4 with opencl, and I have some problems running it (spare me the "why bother" response, I think running cgminer in my phone is kinda cool, and with the advancement of GPUs in the mobile space, you'll never know  Grin)

Anyway-- running cgminer -n gives me:

Code:
[2013-09-13 12:07:15] CL Platform 0 vendor: QUALCOMM
[2013-09-13 12:07:15] CL Platform 0 name : QUALCOMM Snapdragon(TM)
[2013-09-13 12:07:15] CL Platform 0 name : OpenCL 1.1 QUALCOMM build:   (CL3579225)
Build Date: 04/22/13 Mon
Local Branch: adreno_sba_20130419
Remote Branch:
Local Patches:
Reconstruct Branch:
[2013-09-13 12:07:15] Platform 0 devices: 1
[2013-09-13 12:07:15] 0          QUALCOMM Adreno(TM)
[2013-09-13 12:07:15] 1 GPU devices max detected

So it should be ok, right?  But trying to run cgminer with the usual parameters (--scrypt -o -u -p ) gives me:
Code:
[2013-09-13 12:08:12] Started cgminer 3.1.1
[2013-09-13 12:08:12] Probing for an alive pool
Assertion failed: !spillIs.empty() && "No spill intervals?", file vendor/qcom/proprietary/gles/adreno200/llvm/lib/CodeGen/QGPURegAlloc.cpp, line 2628

I compiled cgminer with OpenCL Adreno SDK instead of AMD SDK (for obvious reasons).
legendary
Activity: 4634
Merit: 1851
Linux since 1997 RedHat 4
How do I tell cgminer to ignore a specific USB device?
...
  By the way, the original Icarus has
  iManufacturer 'Prolific Technology Inc. '
  iProduct 'USB-Serial Controller D'

What does your device have?
You get that info with cgminer -n

Thanks for the quick response Kano!  I'll try editing usbutils.c .

I'm not certain what you're asking for.  The entire output of cgminer -n is in my original post.  I would be happy to investigate further if you guide me.

Thanks again,

~PulsarAV~
Ah right, yeah that doesn't show it though - windows fault (the -12 error)
I guess I could add to the list of possible changes (on windows), to force cgminer to ignore any device that gets a -12 a few times ...
sr. member
Activity: 467
Merit: 250

http://middlecoin.com/

If you paid attention, you'd know it pays out in BTC, and is the only auto-switching auto-exchanging pool. It's also fairly big and getting bigger.

Smart, and about time.

full member
Activity: 124
Merit: 251
Has anyone experienced any crashes when trying to mine with specific pools using cgminer? It seems that whenever I try to use cgminer against 50BTC's pool, I get a crash after a couple hours. If I change my pool to BTCGuild, it works flawlessly with no crashes.

I'm using something like this in my batch file:
cgminer-nogpu.exe -o http://stratum.50btc.com:3333 -u myuser@goeshere -p mypass -G --no-submit-stale

I have tried pool.50btc.com:8332 as well and still get the same crashes.
newbie
Activity: 12
Merit: 0
How do I tell cgminer to ignore a specific USB device?
...
  By the way, the original Icarus has
  iManufacturer 'Prolific Technology Inc. '
  iProduct 'USB-Serial Controller D'

What does your device have?
You get that info with cgminer -n

Thanks for the quick response Kano!  I'll try editing usbutils.c .

I'm not certain what you're asking for.  The entire output of cgminer -n is in my original post.  I would be happy to investigate further if you guide me.

Thanks again,

~PulsarAV~
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
Yeah your kernel crashed on you.
99.9999% likely an SD card problem.
Get a new SD and also make sure it is Class 10.
(and always make sure you shut it own properly, don't just switch it off)

So I brought up this issue over at the Raspberry Pi support Forums and it sounds like this is probably a kernel bug.

http://www.raspberrypi.org/phpBB3/viewtopic.php?f=28&t=55370
Very interesting!

...except cgminer does not use the cp210x driver they're blaming in that thread. It uses libusb to do direct USB communications.
newbie
Activity: 13
Merit: 0
Yeah your kernel crashed on you.
99.9999% likely an SD card problem.
Get a new SD and also make sure it is Class 10.
(and always make sure you shut it own properly, don't just switch it off)

So I brought up this issue over at the Raspberry Pi support Forums and it sounds like this is probably a kernel bug.

http://www.raspberrypi.org/phpBB3/viewtopic.php?f=28&t=55370
legendary
Activity: 1904
Merit: 1002
When building CGMiner with only Icarus support, I notices cgminer-driver-opencl.c, cgminer-ocl.c, and cgminer-adl.c are still compiled and linked in. Why? Also, the OpenCL kernels are installed, even though without any OpenCL mining built in, they are less than useless.
That's because the default is to build for opencl. You'll see that ./configure shows:
--disable-opencl
As for install, it's ancient and hardly anyone uses installs via "make install" so no attempt was made to modernise it.

I explicitly disabled OpenCL, instead of letting it not find OpenCL and disable it on its own, and those files are still compiled in.

The files have the OpenCL dependent code excluded by the precompiler.  The compiler never sees that code.  It sees roughly this for driver-opencl.c for example:

Code:
includes, function prototypes, externs, etc

void manage_gpu(void)
{
}

void *reinit_gpu(__maybe_unused void *userdata)
{
return NULL;
}
newbie
Activity: 11
Merit: 0
I don't know if it's a bug or if it's been reported before but :

When I change pool with the API from my modified CryptoSwitcher or with Crypt-o-Matic (to mine the most profitable crapcoin), often, one of my GPU will become SICK and I have to reboot the miner...

I found a work around : using "gpudisable|k" on all GPU, wait 2 seconds, switch pool[addpool, switchpool, disablepool, removepool], wait 2 seconds, use "gpuenable|k" on all GPU. So to make it clear, I need to turn the mining OFF on all cards before switching pool.
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
When building CGMiner with only Icarus support, I notices cgminer-driver-opencl.c, cgminer-ocl.c, and cgminer-adl.c are still compiled and linked in. Why? Also, the OpenCL kernels are installed, even though without any OpenCL mining built in, they are less than useless.
That's because the default is to build for opencl. You'll see that ./configure shows:
--disable-opencl
As for install, it's ancient and hardly anyone uses installs via "make install" so no attempt was made to modernise it.
legendary
Activity: 4634
Merit: 1851
Linux since 1997 RedHat 4
How do I tell cgminer to ignore a specific USB device?
...
I haven't added any ignore rules into --usb yet that will work for that.
In your case you can't ignore the ICA driver either coz you have other ICA devices
ICA are: ICA, AMU, BLT, LLT and CMR

At the moment, to get it to ignore that one you would have to edit usbutils.c
A quick hack would be change the "ICA" find_dev to ignore it.
067b:2303 is the chip used in the original Icarus boards (I still have one)
So if you change say
Code:
  .idVendor = 0x067b,
  .idProduct = 0x2303,
  .kernel = 0,
to
Code:
  .idVendor = 0x067b,
  .idProduct = 0x2303,
  .iProduct = "Never Match Me",
  .kernel = 0,
it will never match any device with that chip in it.

By the way, the original Icarus has
  iManufacturer 'Prolific Technology Inc. '
  iProduct 'USB-Serial Controller D'

What does your device have?
You get that info with cgminer -n
newbie
Activity: 12
Merit: 0
How do I tell cgminer to ignore a specific USB device?

cgminer is recognizing a non ASIC miner device and continually attempts to initialize it.


Here's what cgminer -n sees:
Code:
C:\Temp\cgminer-3.3.1-windows>cgminer.exe -n
 [2013-09-11 17:19:20] CL Platform 0 vendor: Advanced Micro Devices, Inc.
 [2013-09-11 17:19:20] CL Platform 0 name: AMD Accelerated Parallel Processing
 [2013-09-11 17:19:20] CL Platform 0 version: OpenCL 1.2 AMD-APP (1124.2)
 [2013-09-11 17:19:20] Platform 0 devices: 1
 [2013-09-11 17:19:20]  0       Capeverde
 [2013-09-11 17:19:20] GPU 0 AMD Radeon HD 7700 Series hardware monitoring enabled
 [2013-09-11 17:19:20] 1 GPU devices max detected
 [2013-09-11 17:19:21] USB all: found 23 devices - listing known devices
.USB dev 0: Bus 6 Device 1 ID: 067b:2303  <<<<<<<<<<<<<<<<<< This device is *NOT* a miner >>>>>>>>>>>
  ** dev 0: Failed to open, err -12
.USB dev 1: Bus 7 Device 2 ID: 10c4:ea60
  Manufacturer: 'Silicon Labs'
  Product: 'CP2102 USB to UART Bridge Controller'
.USB dev 2: Bus 7 Device 3 ID: 10c4:ea60
  Manufacturer: 'Silicon Labs'
  Product: 'CP2102 USB to UART Bridge Controller'
.USB dev 3: Bus 7 Device 4 ID: 10c4:ea60
  Manufacturer: 'Silicon Labs'
  Product: 'CP2102 USB to UART Bridge Controller'
.USB dev 4: Bus 7 Device 6 ID: 10c4:ea60
  Manufacturer: 'Silicon Labs'
  Product: 'CP2102 USB to UART Bridge Controller'
.USB dev 5: Bus 7 Device 7 ID: 10c4:ea60
  Manufacturer: 'Silicon Labs'
  Product: 'CP2102 USB to UART Bridge Controller'
.USB dev 6: Bus 7 Device 8 ID: 10c4:ea60
  Manufacturer: 'Silicon Labs'
  Product: 'CP2102 USB to UART Bridge Controller'
.USB dev 7: Bus 7 Device 10 ID: 10c4:ea60
  Manufacturer: 'Silicon Labs'
  Product: 'CP2102 USB to UART Bridge Controller'
.USB dev 8: Bus 7 Device 11 ID: 10c4:ea60
  Manufacturer: 'Silicon Labs'
  Product: 'CP2102 USB to UART Bridge Controller'
.USB dev 9: Bus 7 Device 12 ID: 10c4:ea60
  Manufacturer: 'Silicon Labs'
  Product: 'CP2102 USB to UART Bridge Controller'
 [2013-09-11 17:19:21] 10 known USB devices

Here's the output while running:
Code:
[2013-09-11 17:25:48] Started cgminer 3.3.1
[2013-09-11 17:25:48] USB init, open device failed, err -12, you need to install a WinUSB driver for - ICA device 6:1
[2013-09-11 17:25:48] Icarus detect (6:1) failed to initialise (incorrect device?)
[2013-09-11 17:25:49] Probing for an alive pool
[2013-09-11 17:25:50] Network diff set to 86.9M
[2013-09-11 17:25:51] Accepted e601b578 Diff 1/1 AMU 3
[2013-09-11 17:25:53] Accepted e458846a Diff 1/1 AMU 5
[2013-09-11 17:25:53] Accepted 348930bd Diff 4/1 AMU 2
[2013-09-11 17:25:56] USB init, open device failed, err -12, you need to install a WinUSB driver for - ICA device 6:1
[2013-09-11 17:25:56] Icarus detect (6:1) failed to initialise (incorrect device?)
[2013-09-11 17:25:56] Accepted e4a9be91 Diff 1/1 AMU 5
[2013-09-11 17:25:59] Accepted b164beda Diff 1/1 AMU 2
[2013-09-11 17:26:00] Hotplug: Icarus added AMU 6
[2013-09-11 17:26:00] Hotplug: Icarus added AMU 7
[2013-09-11 17:26:00] Hotplug: Icarus added AMU 8
[2013-09-11 17:26:01] Accepted 60b080ff Diff 2/1 AMU 0
[2013-09-11 17:26:01] Accepted 8d5fd0cf Diff 1/1 AMU 7
[2013-09-11 17:26:02] Accepted 478a7d7f Diff 3/1 AMU 0
[2013-09-11 17:26:05] USB init, open device failed, err -12, you need to install a WinUSB driver for - ICA device 6:1
[2013-09-11 17:26:05] Icarus detect (6:1) failed to initialise (incorrect device?)
[2013-09-11 17:26:09] Accepted 8e86fb63 Diff 1/1 AMU 6
[2013-09-11 17:26:09] Accepted fecd3d9a Diff 1/1 AMU 2
[2013-09-11 17:26:10] Accepted 1f30b92a Diff 8/1 AMU 1
[2013-09-11 17:26:11] USB init, open device failed, err -12, you need to install a WinUSB driver for - ICA device 6:1
[2013-09-11 17:26:11] Icarus detect (6:1) failed to initialise (incorrect device?)

Any assistance is appreciated.

Thanks!

~PulsarAV~
newbie
Activity: 13
Merit: 0
Yeah your kernel crashed on you.
99.9999% likely an SD card problem.
Get a new SD and also make sure it is Class 10.
(and always make sure you shut it own properly, don't just switch it off)

The one I have now is a SanDisk 16GB Class 10. Perhaps I just got a junk one...
legendary
Activity: 4634
Merit: 1851
Linux since 1997 RedHat 4
Yeah your kernel crashed on you.
99.9999% likely an SD card problem.
Get a new SD and also make sure it is Class 10.
(and always make sure you shut it own properly, don't just switch it off)
newbie
Activity: 13
Merit: 0
No idea then sorry. Perhaps your Pi is coincidentally failing or as you say, some upgraded other package is responsible.

I was able t get a screen cap of the error when the system locks up

https://i.imgur.com/7sSZPU2.jpg

I'm not sure what this error means but I'm leaning towards that there was some kind of disk access error. Perhaps the SD card on my Pi is corrupted?
legendary
Activity: 4634
Merit: 1851
Linux since 1997 RedHat 4
actually, odd, I was going to dump the output of the api call to a file, decided to change the parameter to an INT (1) instead of a BOOL (true) and now I'm getting back correct data...

that gives me enough of a lead to where I can figure it out (or at least get the correct data to show), thanks for the responses.
There are two Accept numbers in cgminer.
It only displays one on the screen.
A: is "Difficulty Accepted" = as per the README: "A:  The total difficulty of Accepted shares"
The API has both "Difficulty Accepted" and "Accepted"
"Accepted" is the number of shares accepted ... the old ineffectual value.
Make sure you're not looking at the wrong one.
sr. member
Activity: 448
Merit: 250
yeah when to upgrade is always a tough call.
Strictly speaking, I move to the latest Ubuntu 3 months after it is released, and 2 releases are usually binary compatible, which means they get a year of binary compatibility before I move on. 13.04 came out in April and 13.10 is due out in a month (as per the .04 .10 nomenclature).

No disagreeing with you, but it would be nice if the LTS releases were supported, at least while they are the latest LTS release (Not that rebuilding is hard... but still)
hero member
Activity: 981
Merit: 500
DIV - Your "Virtual Life" Secured and Decentralize
So I got a kinda weird issue.

I started mining on my Raspberry Pi (O/S: Raspian) with 5 Block Eruptors on a DLink DUB-7 on August 19th using cgminer 3.3.4 and followed the included instructions on how to compile the libusb libraries myself. It worked great and it ran non-stop for a few weeks. The other day I decided to update cgminer to 3.4.2. After mining for about 20 minutes the Pi seemed to locked up. My SSH session died and I couldn't ping the Pi anymore. I figured it was just a fluke so I restarted the Pi but, again, after mining for about 20 minutes the Pi locks up.

I figured that this must have just been an issue with the newest version of cgminer so I went back to 3.3.4 with no luck. 3.3.4 now causes the Pi to lock up as well. I thought that maybe the Pi was overheating so I tried doing something else intensive; watching a 1080p movie over my LAN for 2hrs+ but it worked great and never locked up. I also tried mining just with 1 miner but the Pi still locked up.

Perhaps there is an issue with the newest packages for the Pi? How can I provide some more detailed info to see what is going on? Anything else I can try to resolve the issue?
If going back to the previous version doesn't resolve the issue, how can the new version be responsible?

I'm not saying the newest version is responsible for the issue. I was just describing what I've tried so far.

Quote
Perhaps there is an issue with the newest packages for the Pi
What I meant by this is maybe updating my Pi's firmware and packages are causing the issue.

When this happened to me I wasn't using that specific CGMiner but it would lock up Raspbian and I would have no recourse but to hard power cycle it. Eventually it happened so often I investigated. I tried new SD card as it kept corrupting mine. I tried newer versions of CGMiner. I finally upgraded Raspbian and tried using the over clocking and low and behold it wouldn't boot properly.

I don't know that this is your problem but for me I spent 30$ on SD cards (good ones) and a 15$ cable and new power supply fixed it. So if it was me I would double check that your power isn't getting saggy and causing errors. Mine worked for 4 months or so Flawlessly before I had problems.
sr. member
Activity: 266
Merit: 250
actually, odd, I was going to dump the output of the api call to a file, decided to change the parameter to an INT (1) instead of a BOOL (true) and now I'm getting back correct data...

that gives me enough of a lead to where I can figure it out (or at least get the correct data to show), thanks for the responses.
sr. member
Activity: 266
Merit: 250
It appears that the API is reporting a different number of accepted shares than what is being shown on the output. Not sure if this is intentional for some reason or if this is an already known issue (sorry, not going through 600+ pages). Small example: CGMiner Output screen says 8105 accepted shares, the API returns 6786 for said device (1319 difference, seems to be across the board for each device).

Please let me know if you would like me to supply the data from the API vs. data on the output.
Maybe you're using a pool with variable difficulty and you're at a hashrate that keeps you bouncing around between difficulty 1 and 2 shares?

I would assume CGMiner's API would report the same data as what it's showing to the user on the output screen. Otherwise either the output screen or the API would be incorrect at all times.
Jump to: