KlausT / ccminer

Software for mining various cryptocoins
GNU General Public License v3.0
403 stars 312 forks source link

Intensity and CPU threads dispatching #220

Closed gizmochefmogwai closed 6 years ago

gizmochefmogwai commented 6 years ago

Hi KlausT,

I juste move my 2* 6 1070 cards to a single 12 cards Ubuntu 16.04 rig. Previously I found 17.35 neoscrypt intensity, which gave me 6,7mh/s per 6 cards rig.

Now, my 12 cards with same intensity give me 12.5mh/s which is very low, as it might be 13.5mh/s. On old rigs, if I go above 17.35, my hashrate decrease. But on my new rig, I can go up to 17.914 which give me 12.9mh/s.

I think there is a CPU bottleneck, is it possible to dispatch threads on both cores ? On other post you suggest to go up to 23 intensity, but is it normal mine crashes at 17.9 ?

Regards,

KlausT commented 6 years ago

There's the option --cpu-affinity but I have never used it, so I don't know how it works. Or you could try the option --cuda-schedule 2

Neoscrypt is using more of the card's memory with higher intensities. This means that the max intensity depends on the amount of memory on your card. On my system I can't go higher than 17.6, for example with my 1070.

gizmochefmogwai commented 6 years ago

Hello,

Cuda schedule give me good results but as I said, one GPU have crazy hashrate (between 500 and 1100kh) whereas others are stable. Affinity with all masks I tried don't change anything, maybe affinity is for CPU mining purposes ?

Maybe instability on my GPU1 is related to cpu bottleneck ? I don't have it when I launch ccminer on 6 GPU even with cuda schedule.

gizmochefmogwai commented 6 years ago

Hi KlausT,

Variable hashrate on some GPU, when I use all 12 GPU with a "basic" CPU, is related to bottleneck on my CPU Core 1. It seems ccminer doesn't handle multithread on many cores correctly.

Is there an enhancement soon or do I need to buy a better CPU ?

Kind regards

KlausT commented 6 years ago

(You are using Linux, right?) Try this to see if the threads are actually assigned to the same core:

ps -mo pid,tid,%cpu,psr -p `pgrep ccminer`

I think this is a case of the Linux kernel being as dumb as a brick. Using a CPU with more cores would certainly help. I will have to see if there is a method to pin the treads to specific cores.

gizmochefmogwai commented 6 years ago

Hi KlausT,

Some news, I changed my CPU from Celeron 2 cores 2.8GHz to i3 4 cores 4GHz, and all my cores stuck at 100%. See here : https://image.noelshack.com/fichiers/2018/12/6/1521889348-cores.png

This is due to cuda schedule 2, because without I have 4 cores at 30%, but with low global hashrate. With cuda schedule 2 you can see Main Thread at 272% and very high load, and I have one card with random hashrate.

If I launch ccminer on 6/12 cards, it's great (even with cuda schedule 2 and 100%, but no dumb card)

Any idea ?

KlausT commented 6 years ago

Right now I see no way to fix this. I guess this always happens when you have way more cards than CPU cores.

gizmochefmogwai commented 6 years ago

true