genesismining / sgminer-gm

A multi-algo GPU miner
GNU General Public License v3.0
340 stars 146 forks source link

5.5.6 - MoneroV7 - MinGW - Windows #125

Open LightningW9 opened 6 years ago

LightningW9 commented 6 years ago

Thanks for keeping this miner updated. I appreciate it.

Monerov7 is working fine with mingw build. Visual studio build looks very outdated.

With the v7 switch there is a bit of spam with "switch to monero variant" at startup for some reason. I have added "monero":true to my config file.

There were some minor issues with the build in mingw

Dependencies: pthreads-w32-2.9.0-mingw32-pre-20110507-2-dev libpdcurses-3.4-1-mingw32-dev PDCurses-3.4-1-mingw32-bin amd app sdk 2.9 amd adl sdk 6.0 gtk2-runtime-2.24.10-2012-10-10-ash pkg-config_0.26-1_win32 pkg-config-dev_0.26-1_win32 curl-7.39.0-devel-mingw32 jansson-2.7

If anyone wants to test my build, you can use it at your own risk here: https://mega.nz/#!vhtgGIST!zxN8epOvSqvmlyJv5b0dahfL9PdyW-eLXHi_5YGpQ9Q

ku4eto commented 6 years ago

Thanks, building this seems more PITA than the Cygwin one, i didnt bothered at all. Even if i did build Cygwin executable, it was shutting down almost instantly, something went wrong.

Okay, tested out this:

Performance IS the same compared to 5.5.5 on the old Cryptonight algorithm. One thing that i noticed is, that i instantly got 2 Rejected shares for some reason. Also, way slower start and speed ramping. But it works so far without issues.

The GPU monitoring is still broken - as always. GPU positions are mixed (GPU2 monitoring is on position 0, but speed stats are on position 2).

ku4eto commented 6 years ago

Update:

I didn't realize, that i need to explicitly use the "monero":true and a .conf file in order to work with the new PoW. If you don't use it, it will spit 1-2 Rejected shares and the rest will be Accepted, BUT they are not accepted in reality by the pool.

So you create an .conf file, and in the POOLS header you specify this argument.

Example below:


{
    "pools": [{
        "url": "POOL:PORT",
        "user": "WALLET",
        "pass": "x",
        "monero":true,
        "profile" : "xmr"
    }
],
    "profiles": [{
            "worksize": "8",
            "name": "xmr",
            "algorithm": "cryptonight",
            "gpu-threads": "2",
            "rawintensity": "896",
            "device": "2"
        }
    ],
    "no-extranonce": "false",
    "default-profile": "xmr"
}

Performance is still about the same - 1073h/s. Maybe about 5h/s loss of performance, but its always questionable.

@LightningW9 Do you know how the "monero":true argument can be passed through a .bat file?

LightningW9 commented 6 years ago

You can use this in your bat file to link to your config: sgminer -c sgminer-xmr.conf

You can also switch with --monero

Just a note: "no-extranonce" was removed. It is now default behaviour . There is now an "extranonce" switch for those that need it.

dannycoin commented 6 years ago

this does not work with another coin with monero7 like Stellite XTL.. only work with MONERO (XMR).

pass75 commented 6 years ago

I confirm it doesn't work with other v7 coins that are not Monero. To enable v7 I use the option "monero": "true". When I mine Monero it shows "switch to variant 1" but when I mine other v7 coins like Stellite or Fonero, it says "switch to variant 0" and all shares are rejected. I tried to force variant 1 with the option "variant": "1" but it doesn't work. How to force to use v7 for not Monero v7 CryptoNote coins? Anyway MANY MANY THANKS to keep alive this excellent miner. It's my favourite one since ever.

LightningW9 commented 6 years ago

Yes it was designed to auto switch Monero, so it always reads the version from the block header before switching if it is V7. It looks like Stellite block version is V3 although they are using the updated Monero V7 algorithm.

There is a pull request created by ystarnaud to add support for more cryptonight coins.

Probably the block header version checking could be removed as it a bit redundant now Monero switched. The manual switch with "monero":true would be enough to change to the new variant.

ku4eto commented 6 years ago

Graft just did a fork to V7. Tested and it works normally. Using a config file with "monero":true, in it. On start of the miner, it says

Switching to variant 1. Shares are accepted then.

pass75 commented 6 years ago

Well to know. Like LightningW9 said it seems it's just a matter of block header. Maybe Graft is using v7 header like Monero so the sgminer switches to variant 1 correctly. Thanks to notice us.

ku4eto commented 6 years ago

From what i know, Graft PoW change is written as v8 as seen from here: https://github.com/graft-project/GraftNetwork#graft-network-software-updates-and-consensus-protocol-changes-hard-fork-schedule

If it works, it works.

hayksss commented 6 years ago

Can give your bat a file? I still have not figured out how to do it

ku4eto commented 6 years ago

@hayksss You have 2 options: Normal bat. Example: <- setx GPU_FORCE_64BIT_PTR 0 setx GPU_MAX_HEAP_SIZE 100 setx GPU_MAX_USE_SYNC_OBJECTS 1 setx GPU_MAX_ALLOC_PERCENT 100 setx GPU_MAX_SINGLE_ALLOC_PERCENT 100

sgminer -k cryptonight -o stratum+tcp://POOL:PORT -u WALLET -p x --rawintensity 896 -w 8 -g 2 --monero pause ->

Or .bat file pointing to a .conf file. Create a .txt file and change the extension to .conf. Example:

XMR.bat <- sgminer.exe -c All_cards.conf ->

All_cards.conf <-

{ "pools": [{ "url": "POOL_PORT", "user": "WALLET", "pass": "x", "monero": true, "profile" : "xmr" } ], "profiles": [{ "worksize": "8,4", "name": "xmr", "algorithm": "cryptonight", "gpu-threads": "2", "rawintensity": "896,256", "device": "0,1" } ], "default-profile": "xmr" }

->

ku4eto commented 6 years ago

@LightningW9 Heads up everyone. The 5.5.6 build actuallly WORKS with Ethash. The issue is, if you try to create the binaries upon first time starting. Simply copy over the ones from the 5.5.5. I mean those files: ethashEllesmeregw128l4.bin

jayanh commented 6 years ago

@LightningW9 Could you tell me the steps to build on window using mingw. I follow the guide but it show error about conflicting types for "sleep" in compat.h.

afrodisio99 commented 6 years ago

@LightningW9 can support linux ...

jayanh commented 5 years ago

@LightningW9 can support linux ...

Hi! could you help me on linux. Could i contact you from telegram, this is my: https://t.me/inlasy Thanks