I just run Avalon 1.5 days.
The invaid of Canaan too high. Just for the new block, the invalid if 2 A741 and 1 A721 in a chain is 1%. Invalid of R4 is 0%. How to fix the invalid and how invalid affect your luck pool or my hashing and sharing?
The invalid is stale share? Do I get paid for that? And how to avoid that?
... no you don't get paid for stale shares ...
Just like we don't get paid for a stale block coz it's worthless.
Meanwhile, I spent some time going though the bmminer code to see if they were still faking their stale stats by "hiding" the stale shares.
The reason being to compare your stales since if one miner is reporting them correctly and the other one is faking them ... well then it really doesn't mean much comparing them.
However, your hash rate shown on the web site of course is only based on valid, non-stale shares, so the hash rate is of course what matters.
Anyway,
The bitmain driver code used to "attempt" to intercept stale shares and discard them rather than pass them back to the main cgminer code.
i.e. it was hiding them so they weren't counted.
The main cgminer code of course should decide based on the cgminer options, not the bitmain driver.
That was one of the fixes I did to the S1 driver years ago when I first fixed the bitmain crappy code, that bitmain never copied any of the fixes.
Anyway, while perusing the bmminer driver code I felt the urge to run away screaming ...
Here's their latest function that screws around with the shares before passing them back to the main cgminer code ...
https://github.com/bitmaintech/bmminer/blob/master/driver-btm-c5.c#L7887Damn, who let those retard programmers at bitmain near a keyboard.
What it is supposed to do is simply retrun the nonce and let the main cgminer code check it properly, not all that screwing around they are doing there.
But that wasn't the reason for wanting to run away screaming ...
There is a function in all your recent bitmain miners "send_mac"
https://github.com/bitmaintech/bmminer/blob/master/driver-btm-c5.c#L7764It connects to bitmain
https://github.com/bitmaintech/bmminer/blob/master/driver-btm-c5.c#L7683Since AUTH_URL is:
https://github.com/bitmaintech/bmminer/blob/master/driver-btm-c5.c#L223"auth.minerlink.com"
and it sends your mac address, some miner id, and some hash board id string to bitmain
https://github.com/bitmaintech/bmminer/blob/master/driver-btm-c5.c#L7774Randomly every 1 to 11 minutes while the miner is running
https://github.com/bitmaintech/bmminer/blob/master/driver-btm-c5.c#L7783It doesn't matter what pool you are mining on, it still connects to bitmain
Now here's the real fun part ...
It checks for a reply from bitmain and if bitmain replies with anything containing the word "false"
https://github.com/bitmaintech/bmminer/blob/master/driver-btm-c5.c#L7755Then it will abort the checking function
https://github.com/bitmaintech/bmminer/blob/master/driver-btm-c5.c#L7777with the message "Stop mining!!!"
But if it fails to connect to bitmain or it doesn't get a "false" reply, it will continue checking randomly every 1 to 11 minutes connecting to bitmain.
Now I wonder why they would have a function like that, there in the code ... ... ... ... ...