ethereum-mining / ethminer

Ethereum miner with OpenCL, CUDA and stratum support
GNU General Public License v3.0
5.97k stars 2.28k forks source link

CUDA configuration for nVidia GTX 1060 3GB #879

Closed GrannyCryptomaster closed 6 years ago

GrannyCryptomaster commented 6 years ago

I have a rig with 6 x GTX 1060 3GB, Hynix memory on all, with Widnows 10 x64bit full updated version, last Geforce and CUDA drivers. OC parameters: power 65, temp 83, core 0, mem +500. With stock settings I get 15.5 MH/s. With OC settings I get 18.9 MH/s. My batch file: ethminer.exe -U -HWMON 1 -v 5 --farm-recheck 2000 --farm-retries 10 --work-timeout 180 --stratum-ssl 0 -SP 0 --api-port 0 -S eu1.ethermine.org:5555 -SF us1.ethermine.org:5555 -O xxxxxx.xxxxx

1.What should I put in my .bat file to mine Ethereum on ethermine.org, tls connection, with the best efficiency? 2.What are the best CUDA configuration parameters? 3.What --farm-recheck value is best? "200" as ethermine.org recommends? Or "2000" as the miner's help recommends for stratum? Thanks!

GrannyCryptomaster commented 6 years ago

How to use the --benchmark parameter? An exact batch command will be perfect, couse I tryed -M and all I get is trial 1... 0 trial 2... 0 trial 3... 0

DeadManWalkingTO commented 6 years ago

GTX1060 +150/+500/65%TDP @ 23-24 MH/s GTX1070 +150/+500/65%TDP @ 32-33 MH/s

Windows

  1. Try Update Drivers. Download and install the latests.

  2. Try Update Ethminer. Download (or beter build) the latest. You can use ETHminerBuildScriptDmW.

  3. Try use -U for CUDA devices. CUDA Hardware Test Launch Command:

    ethminer -RH -U -S eu1.ethermine.org:4444 -FS us1.ethermine.org:4444 -O 0x7013275311fc37ccc1e40193D75086293eCb43A4.hardwaretest
  4. Try to change P2 State and Power managment mode. You can use NVidiaProfileInspectorDmW. For the best mining hashrate choose from sector "5 - Common":

    • CUDA - Force P2 State (Set to "Off")
    • Power managment mode (Set to "Prefer maximum performance")
  5. Try Tweak Win10. You can use Windows10MiningTweaksDmW (#695).

  6. Try Optimize/Overclock GPUs. You can use MSI Afterburner for GPU OverClock/Optimize.

  7. Try use a WatchDog You can use ETHminerWatchDogDmW (#735).

Please feedback. Thank you!

GrannyCryptomaster commented 6 years ago

OK. I have all drivers updated, as I stated. Windows is optimised. I mine since january, so I read all guides. I use MSI Afterburner. The core OC dosen't make any difference; only the mem OC does for Ethereum. I got the same hashrate with core +100 or core +0. Power is at 65, temp 83, core +0 now. My cards are 1060 3GB, not 1060 6GB; they have fewer CUDA cores than 6GB version. Hynix memory. I use the last buid available for ethminer 0.14.0.dev3 win. The only thing I changed with your tool is: 1.P2 state to off and 2.Prefer maximum performance. I started miner with mem +500 and the hashrate increased from 18,9 to 20... but hashrate droped after 1 minute. Now I try +450... maybe I will keep it steady...

update: After setting p2 state and maximum performance, the hashrate keeps droping to 5-8 on some or all cards, even with mem +450. I had to restart the rig for the second time. Those power settings aren't good. They mess up the OC.

My question still unanswered: What are the best CUDA configuration parameters... blocks, grid etc.?

l4Dream commented 6 years ago

Imo --farm-recheck useless when miner working in (-S) stratum mode, only usefull when ethminer work in standart mode (-F) with eth-proxy... isn't it?

GrannyCryptomaster commented 6 years ago

I figured that out by myself... LOL... I didn't noticed any difference with any value. I think the best start batch file is the simplest one:

ethminer.exe -RH -U --stratum-ssl -S eu1.ethermine.org:5555 -SF us1.ethermine.org:5555 -O xxxx.xxx or ethminer.exe -RH -U -S eu1.ethermine.org:4444 -SF us1.ethermine.org:4444 -O xxxx.xxx

BTW... the help sais to use -SF, not -FS. I don't know if it is introduced in the new versions, but makes more sense. And that CUDA P2 state and power option... Don't tweak that! nVidia made them for a reason. If if do what that that guy sais and OC, miner crashes and your rig too. That works only if you don't OC, with stock settings.

SnowLeopard71 commented 6 years ago

@GrannyCryptomaster For ethminer, the defaults have given best hashrates on my 1060s (Zotac, Gigabyte, MSI, all 3gb, all Hynix). Each brand requires different OC settings (memory) -- from +1350 for the EVGA to +850 for the Gigas. None goes over 20mh/s though.

@DeadManWalkingTO What specific 1060s do you have? What memory type?

GrannyCryptomaster commented 6 years ago

mem +500 for me, in Afterburner, is stable with MSI, EVGA, Gygabyte. 19MH/s. Same as Claymore's... but more stable.

pimovietc commented 6 years ago

-400/+850/70% works fine on my GTX 1060 3GB. Nets me 24-25 Mh/s. If I push the memory further it starts to crash after some hours (up to 28 hours after first booting!), You'd want the maximum memory OC you can get stable. I suggest starting at +500 and increment it with 50 at a time. Let it run for 48 hours, if no issue arise it will probably remain stable.

GrannyCryptomaster commented 6 years ago

@pimovietc What memory type your GTX has? Samsung? (you can see the memory maker with GPU-Z utility).

bmatthewshea commented 6 years ago

1.What should I put in my .bat file to mine Ethereum on ethermine.org, tls connection, with the best efficiency?

Think you already answered that above, yourself. :-)

2.What are the best CUDA configuration parameters?

For yours? Probably the defaults - i.e. nothing but -U/--cuda

3.What --farm-recheck value is best? "200" as ethermine.org recommends? Or "2000" as the miner's help recommends for stratum

Between 1-4 seconds (1000-4000) for stratum is what I use. And yes -> contrary to what all these pools tell you -> DO NOT use 200 as recheck. It's stratum and jobs/work should be broadcast. If stratum, it really becomes about how often you want to see output on console afaik - not the 'farm' recheck itself. With that said: it really doesn't matter if it's 200 or 4000 as long as it's a stratum connect. If you have latency issues with stratum broadcasts it wouldn't help you anyway..

And yes, it seems hynix is going to be slower overall than cards with Samsung or even a Micron.. as has been previously mentioned on many threads here such as 119. < Also has OC help. Make sure you expand the entire thread - it's quite long.

bmatthewshea commented 6 years ago

And @DeadManWalking : Please?!? STOP SPAMMING THE ISSUE THREADS.. Your "boilerplate" reply has been seen - you do not need to keep posting to EVERY thread. I know it can be a pain since this isn't a forum, but instead of continually spamming threads, why not just try for a new /doc area push instead (or ask if you can work on a github wiki).. and post your help blurb there? I notice there is no 'doc' area for master nor a github ethminer 'wiki'.. yet..

Unless your agenda is simply pushing the shell scripts/forks on your github page more than actually helping anyone? Because from what I see, they won't.

bmatthewshea commented 6 years ago

And.... @DeadManWalkingTO :

GTX1060 +150/+500/65%TDP @ 23-24 MH/s

Why are you up'ing the core? Try underclocking it. Memory matters on NV not core.

bmatthewshea commented 6 years ago

@GrannyCryptomaster OC - First create a 'normal' shortcut (NV Inspector) or button (Afterburner etc) before you start so you can reset it all quickly in case of problems. I believe MSI afterburner already has a 'reset button'. Core: -20 to -100 on core. Just drop a bit - this seems to help a bit w/ temps/watts and virtually does not affect hashrate (on ethash/dagger-h coins). Memory: +5XX (Start around +500 adding +10 or +20 and retesting for a few hours. Once you find your unstable point (screen problems/etc) reduce by -20. Save a shortcut or button. You good to go. I also have my fan manually set to keep temp around 60c or less. My 6gb 1060 runs at about 59C / 80watts / 23.8MH (watts reported by NV Inspector app, not wall). (-30 ,+515, fan:50%) Please see thread # 119 I ref:ed above, too/more.

GrannyCryptomaster commented 6 years ago

@bmatthewshea Finnaly a good answer! Thanks! I just finished reading that thread. I know Hinyx is limited. I have an unclear thing... Are people using the P0 state on 1060 GTXs with Hynix? I tryed that, when they where already OCed at +500 mem and hashrates gone to 20,5MH/s than after a minute, dropped; back down to +450 still dropping... So if I don't use P0 state, I can use +500 mem with 19MH/s; if I use P0 state, I must use lower OC for memory that brings me back to 19MH/s... So P0 or no P0 is make no difference. (I had that Performance power mode enabled too... maybe that combined with P0 made my rig unstable).

bmatthewshea commented 6 years ago

From what I understand, @GrannyCryptomaster , enabling P0 just 'throttles' up the card and you can attain same by increasing the clocks. I could be wrong. I have mine enabled, but had to use "NV Profile Inspector"" app (this is diff than NV Inspector app for OC/specs) to get it done. You may want to start reading here with my posting/inspector screen. The next is @imjunez who has/had a hynix card. He/She and others posted a lot of info about hynix & has much more knowledge of this type and oc'ing it than me. Seems P0 doesn't matter so much? Anyway try reading from there..

pimovietc commented 6 years ago

@GrannyCryptomaster all 4 of my GTX 1060 3GBs have Samsung memory. The P0 state is just a "max performance" state. Like the turbo boost on your CPU. You're just forcing it to use it all the time, I don't see why you want to do this as it is a lot easier to just OC the card via Afterburner or similar software.

In case it wasn't clear, NO I am not using P0 mode. All I'm running is my OC settings with Afterburner, I don't see the need to do hard OCs as it is still a system that has to be running 24/7. And I prefer it to stay running for a couple of years.

Another thing to note is that the memory clock may differ from utility to utility, they are still all the same and correct (depending on the viewpoint, they are always a factor of 2 or 4 apart from one another). Just to be clear, my memory OC is +850 MHz in Afterburner (GPU-Z will show +425).

The "screen issues" technique of checking if your rig is stable doesn't really work at all, it just gives you information about the card that is driving the monitor. But at least it is an indicator, I just gradually increment the memory clock and let it run for 48 hours between increments.

The core clock as almost no effect when mining ethereum as it is memory dependent. Lowering the core clock (together with the power level) will significantly reduce the power draw (and thus heat) of your GPUs. Actually, if you'd only turn down the PL it would achieve the same thing, but lowering the clock helps to free up some "power usage" for your memory OC (although memory OC hardly uses any extra power). And yes, you can achieve slightly higher hashrates if you increase the core clock when you've already found your max memory clock. However, the increase in hashrate will be negligible and the increase in power consumption will be significant. This is bad for two reasons. First off, you'll consume more power and thus pay a higher electricity bill, reducing your profit. Second, you'll degrade your GPU faster.

The optimal OC settings I found for my cards in my rig is -400 core, +850 memory and 70% PL. With the default fan curve (about 33% at this temp) the cards run 59-61 degrees Celsius and the entire rig consumes (at the wall) 386W, averaging 96.5W per card (NOTE: This includes the mobo/cpu/case-fans overhead and PSU efficiency!). Also remember that most people just post the power usage reported by some of the rather "stupid" tools, those tools generally just multiply your PL with the TDP of your GPU. Hence, my GTX 1060 3GB with a TDP op 120W should consume about 84W at 70% PL. Therefore the 96.5W I'm getting seems about right.

bmatthewshea commented 6 years ago

Agree with 90% of your comment, but what do you mean:

The "screen issues" technique of checking if your rig is stable doesn't really work at all, it just gives you information about the card that is driving the monitor.

Of course it is if the card your mining with (in my case) is also driving 2 monitors. lol

If you're worried about the lifetime of card, keeping the temps as low as possible is also a good idea. Assuming your fan blades/motor dont wear out. lol

And thanks for info re: P0 - thought so, but wasn't 100%

Also remember that most people just post the power usage reported by some of the rather "stupid" tools, those tools generally just multiply your PL with the TDP of your GPU.

Exactly why I mentioned this:

... watts reported by NV Inspector app, not wall).

But it's not completely meaningless.

pimovietc commented 6 years ago

@bmatthewshea I mean exactly as I stated it. The artefacts you see appear if your memory OC is too high is only relevant to the gpu that is driving the monitor. Each GPU will have different limits (even if they have the same memory).

Also I am not worried about killing my cards before they're due, the fans will last a very long time given that I don't push them at all (they're at 33% fcol) You know, that's why you hook up some case fans on your rig. To dissipate the heat better so that you can decrease your GPU fan speed. And "keeping the temps as low as possible" you for real? It is not as if I pointed out the actual cause of higher temps and how to lower them....

bmatthewshea commented 6 years ago

You said quote:

"doesn't really work at all"

and I disagree. it does 'work'. Maybe not the best method. Artifacting will occur gradually if you up memory gradually. The minute you notice artifacts, you reset card/down clock and/or start over. You never seem to mention the method you use to determine if card is unstable?

Also I am not worried about killing my cards before they're due, the fans will last a very long time given that I don't push them at all

I was kidding about that.. mostly. Notice the 'lol'?

And "keeping the temps as low as possible" you for real?

Really and truly. It's a good idea. Lighten up.

SnowLeopard71 commented 6 years ago

@pimovietc I particularly appreciate the last paragraph with the power usage details. How much power does nvidia-smi say each card is consuming (or ethminer with -HWMON 1 to show power)? Thanks

GrannyCryptomaster commented 6 years ago

Guys, thanks, but no need for enlarging this post anymore with debates pro/cons. I get the picture... my hashrates will stay at 19MH/s LOL I will keep "Forced P2 state ON", I will lower core to -50 or -100, mem is already at max +500, power is at 65%, temp at 83 (Afterburner). I think I will modify my fan curve; now is 40%-40C -> 70%-70C

Regarding the power usage... you have the power reported by the software and you have the eficiency of your PSU, witch is 90% in the top models... so add 10% to the reported power usage and you get the real power drawn from the wall.

pimovietc commented 6 years ago

@bmatthewshea I actually did mention how I determine stability. And I also stated why the artefacting method doesn't really work (at all..) It will only tell you information about the card that is driving the monitor. In case you did not know yet, most people run multi GPU setups. Hence why this method will only work for one card is your rig! Swapping which GPU drives your monitor will be a tedious task to perform, whereas incrementing your memory clock on a bi-daily basis will take longer but is less tedious (and a good reason to check up on your rig every other day). (In case you are still wondering how I determine my rig's stability. THIS IS)

@SnowLeopard71 nvidia-smi reports 82-83W depending on each card and ethminer reports the same. I'd like to add that these are the power that is drawn from the PSU to the GPU (this does not include PSU efficiency). Additionally, these numbers aren't really interesting to know of your own rig (the wall power is more important for your profit calculations) but they're a more "neutral" figure when you want to compare your settings to those of another.

@GrannyCryptomaster The actual PSU efficiency depends on the load and supply voltage. 80PLUS Platinum PSUs have a peak efficiency of 94% at 50% load and 230V (if you're in the US you will always have a lower efficiency of about +/- 1%). Also to be really technical if your PSU has an efficiency of 90% you should add 11,11% (just nit picking here)

bmatthewshea commented 6 years ago

@pimovietc Yes, as I stated: It DOES work for 1 card. And yes, you can normally safely copy those settings to other cards of same model/type. Yes, I understand even then each card is different. And: You up your mem clock twice a day? um okay. That explains everything. lol. I understand what you mean and what's you're doing. Please don't bother explaining.. yet again.

"In case you did not know yet, most people run multi GPU setups. " And stop being a complete jackass. Thanks.

pimovietc commented 6 years ago

@bmatthewshea triggered

P.S. bi-daily = once every 2 days. NOT twice a day.

bmatthewshea commented 6 years ago

Then just say 'every two days'.

whotheff commented 6 years ago

I noticed a lot of people just thinking out loud and nobody really testing. Here are my findings after two months of research and testing:

  1. nvidia-smi does not report wattage. It reports % of total card max power (without overclocking). It is 120W TDP(stock clock). So when you see 60, you actually see 60% of TDP 120W.

  2. Core clock does not improve hashrate. However, it improves power usage. Using +150 core clock is enough to force TDP algorithm to lower core voltage. And as we all know, since core does not do much when mining ETH, then yes, lowering core voltage is a free power consumption win of -10W and -1 to -2C per card. If you enable core voltage monitoring you will see it with your own eyes. Some cards go as low as 680mV, some can hardly keep up with 850 (but that can be cured with some custome voltage curves).

  3. Higher fan speed increases power consumption.

  4. Forcing P0 and using max performance actually unleashesh card's full potential. You can see it as disabling overloading protection. If you have rig with cards from the same memory vendor and similar clocks, then it improves performance with about 1-1.5Mh/s per card. This is the only way to achieve 26Mh/s on 1060 Samsung. On rigs with Hynix or mixed mem brands it crashes. So don't use it.

  5. Latest Ethminer is pretty wel optimised for 1060, so skip all the additional settings. They are now useless. If you don't believe, sit on your ass for 30 min and test them yourself.

  6. Having the highes possible hashrate does not give you more eth. Having more submitted shares does. So test your rigs to see if number of shares is the same or increases when you lower your mem clock a bit. Usually this makes your cards mining more stable which makes more shares for you.