UnamSanctam / SilentXMRMiner

A Silent (Hidden) Monero (XMR) Miner Builder
MIT License
567 stars 162 forks source link

Critical Process #449

Closed gamethrower closed 3 years ago

gamethrower commented 3 years ago

What is the downsides of using "BSoD if killed"? Would be nice to have this in miner.

UnamSanctam commented 3 years ago

Well, means you can't uninstall it mainly.

gamethrower commented 3 years ago

Is this the only reason?

UnamSanctam commented 3 years ago

Problem is also that it will BSoD if the program crashes or just exits normally as well, if the program closes in any way it will BSoD.

gamethrower commented 3 years ago

Even when shutting down the PC?

UnamSanctam commented 3 years ago

Don't think so, but if you input the wrong connection settings (or lose internet connection) in the miner then it will eventually close (tries for 5 minutes I think or something), and then you would BSoD since it will close down.

gamethrower commented 3 years ago

Yeah, now I see that this would be a little bit rude to have such feature :rofl:

UnamSanctam commented 3 years ago

Haha yeah, I did experiment a bit with making the process a debugging process which means you can't close the process easily, I did have some success but have to test more. I'll also be releasing a new version of the XMR and ETH miners today or tomorrow mainly focused on decreasing detections.

gamethrower commented 3 years ago

How do I modify the code to make the miner start only after reboot?

UnamSanctam commented 3 years ago

Remove this line: https://github.com/UnamSanctam/SilentXMRMiner/blob/31992cf2d9f9dbecde1592f8c31668eca1d64b83/SilentXMRMiner/Resources/Program.cs#L100

gamethrower commented 3 years ago

Thanks

gamethrower commented 3 years ago

Can you explain in detail what this xmrig arguments do? --cpu-memory-pool=1 --randomx-no-rdmsr

UnamSanctam commented 3 years ago

The --cpu-memory-pool is how many 2MB pages it should do for the persistent memory pool, though in the new version you can remove that since it's automatic. --randomx-no-rdmsr stops it from reverting the MSR register values when the miner exits.

gamethrower commented 3 years ago

in the new version you can remove that since it's automatic

Do you mean the new version of xmrig or your miner builder?

UnamSanctam commented 3 years ago

In the new version of XMRig (that my miner also uses).

gamethrower commented 3 years ago

Is this the "ok" amount of shares rejected with "Block expired" reason or I should reduce latency? image

UnamSanctam commented 3 years ago

That's a 0.5% invalid share amount so it's alright. But of course if you can reduce the latency (to reduce the amount of expired block shares) that would be better, you can also try other pools since some pools have things to circumvent that.

gamethrower commented 3 years ago

Is it even worth to implement latency checker in miner and have a few servers for eu, asia and so on?

UnamSanctam commented 3 years ago

Not really, it's such a small amount that it doesn't really matter but if you still want to lower it then you can just change pool until you find one which works better.

gamethrower commented 3 years ago

It's not about pool but server that hosts proxy. I'm currently using EU based VPS and half of my workers are asian, so their latency sometimes reaches 500-1000 ms.

UnamSanctam commented 3 years ago

Yes but that also depends on the pool. Depending on the pool I can get between 5% stale shares or 0% stale shares.

gamethrower commented 3 years ago

I'm mining to nanopool. They are holding my XMR below withdraw limit as a hostage, so I can't switch to other pool :sob:

UnamSanctam commented 3 years ago

Haha yeah I know that feeling. After you get those you can try some other pool and see if you get any difference.

gamethrower commented 3 years ago

When I test miner on my PC (3 threads) with 70% CPU load it uses 1 threads instead of 2. Before I launch it CPU usage doesn't go above 10%, so I guess 2 threads should be available. Why it uses 33% instead of 66%?

UnamSanctam commented 3 years ago

Could be that only 1 core is idle.

gamethrower commented 3 years ago

How can I check what cores are idle? Win7 task manager doesn't show that. Here's what it shows when I start the miner: image

UnamSanctam commented 3 years ago

Use something like Process Hacker instead to see the CPU usage, it looks like all your cores are currently being used there at least.

gamethrower commented 3 years ago

With miner off: image

UnamSanctam commented 3 years ago

And with the miner on? One core could also be reserved so only 2 might be available, and then of those two only one could be idle which would lead it to only mine on 1 core (since only one is free).

gamethrower commented 3 years ago

Is this the default max-threads-hint behavior or you made some changes in xmrig?

UnamSanctam commented 3 years ago

The default max-threads-hint behavior, I have not made any changes to it (since none is required).

gamethrower commented 3 years ago

The problem is it doesn't use more CPU in Idle Mode because of this. It would be nice if miner used -t at least for Idle Mode.

UnamSanctam commented 3 years ago

Well that's only because of your bad CPU, on a real computer it will work fine, for me I have Idle mode on 80% and it uses 6 out of my 8 cores which is correct.

gamethrower commented 3 years ago

How do I know if MSR works for me? When I launch xmrig it doesn't say anything.

UnamSanctam commented 3 years ago

If you mean the normal xmrig then it will say whether it set the MSR registers correctly or if it didn't have enough permissions.

gamethrower commented 3 years ago

It doesn't say anything about MSR even if I delete the sys file.

UnamSanctam commented 3 years ago

Take a screenshot.

gamethrower commented 3 years ago

image

UnamSanctam commented 3 years ago

Because you don't have enough RAM to store the RandomX dataset, but it does have permissions as you can see at the top though it doesn't matter since you don't have enough RAM.

gamethrower commented 3 years ago

I'm just trying to figure out something. If I drop the WinRing in some location and then change the path here to that location, will it find the driver?

UnamSanctam commented 3 years ago

Yes, that's what I do in my miner.

gamethrower commented 3 years ago

After a few days of running proxy it started to reject the connections. Debug info doesn't say anything. When I restarted the proxy amount of upstream dropped to one and amount of miners increased. I was able to mine to the proxy again. What was that and why upstreams are increasing over time even tho I don't have a lot of miners online(less than 256)?

UnamSanctam commented 3 years ago

Because that's how xmrig-proxy works, over time some of those upstream slots will be filled up due to the nature of TCP connections That's no problem with the miners but just how xmrig-proxy works by design. What are you hosting it on? If you are hosting it on Linux then you might have to increase the open files limit.

gamethrower commented 3 years ago

I have checked the default limit and it's 1024. Doesn't it mean 1024 constant connections?

UnamSanctam commented 3 years ago

Technically yes, but since it's TCP connections and not UDP connections then over time not really. You should increase the limits.

gamethrower commented 3 years ago

Oh, that explains it. Thanks!

gamethrower commented 3 years ago

Will the next Monero hard fork break all miners?

UnamSanctam commented 3 years ago

All hard-forks that change the algorithm do that, since they change the algorithm, unless they hard-fork to an algorithm that the miner already has.

UnamSanctam commented 3 years ago

But it doesn't really matter if you use "Remote Configuration" since you can just mine any of the hundreds of other cryptocurrencies supported by the miner.

gamethrower commented 3 years ago

So if RandomX algo doesn't change everything should be fine. And Monero devs have no reason to change it, right?

UnamSanctam commented 3 years ago

Yes as long as the algorithm stays it will work, and will also work if they ever change it if the algorithm already exists in my miner. But yes I do not think there is any reason to change it at the moment, even more cryptocurrencies have also started using variations of RandomX as well.