m4rkw / minotaur

MIT License
7 stars 4 forks source link

Merge gpustatd and remove dependency on it #12

Open gordan-bobic opened 6 years ago

gordan-bobic commented 6 years ago

A large part of the complexity and unreliability comes from over clocking and fan setting requirements, both of which are handled by gpustatd.

It therefore makes sense to remove total dependency on gpustatd before minotaur will start. If gpustatd is not present, we should simply omit setting of clock speed and profiles, as per leave_graphics_clocks_alone: true Added bonus: Not setting and re-setting GPU clocks after starting and before finishing each worker also means less congestion and lag on querying GPU status.

Additionally, for GS to work, the GPU metrics should be read directly by minotaur, which essentially means deprecating gpustatd and merging the GPU status reading functionality into minotaur.

OC and fan settings then become a separate set of functionality that can be made completely optional and off by default. When disabled, there is no dependency on Xorg and configuration thereof.

Pushing OC out to optional/non-critical feature set isn't as crippling as it sounds. On a typical 1080Ti it yields approximately 5% higher hash rate with 5% higher power limit on daggerhashimoto/ethash, and other algorithms yield even more questionable improvements.

Removing dependency on Xorg would make it much easier to create bootable images that work for everyone out of the box.

gordan-bobic commented 6 years ago

Note: power limit setting does NOT require Xorg, and would remain available regardless of disablable functionality - and power limit setting is where the vast bulk of usefulness of tuning is.