fireice-uk / xmr-stak-nvidia

Monero NVIDIA miner
GNU General Public License v3.0
249 stars 99 forks source link

Feature Idea: Multiple Runlevels #133

Closed retronoodle closed 6 years ago

retronoodle commented 6 years ago

So this could apply to AMD or CPU as well - just with different elements

It would be cool if you could define say 3 diff levels, like this

"gpu_threads_conf" : [
  { "name":"High Performance",
    "index" : 0,
    "threads" : 64, "blocks" : 9,
    "bfactor" : 12, "bsleep" :  100,
    "affine_to_cpu" : false,
  },

{   "name":"Mid Performance",
    "index" : 0,
    "threads" : 16, "blocks" : 4,
    "bfactor" : 12, "bsleep" :  100,
    "affine_to_cpu" : false,
  },

{   "name":"Low Performance",
    "index" : 0,
    "threads" : 8, "blocks" : 4,
    "bfactor" : 12, "bsleep" :  100,
    "affine_to_cpu" : false,
  },
],

And then choose the one you want while the app is running - ideally - maybe t could toggle between them. Or even a "variable" at the top of the config, which would still require a restart but that would be ok.

"gpu_conf_level" : 1, 

Which might correspond to the first element, or even by name

"gpu_conf_level" : "Low Performance" 

To set the current run level.

Then, at night, you could set it to high performance and during the day, low, etc.

Just an idea!

Thanks

psychocrypt commented 6 years ago

This suggestion will not be possible on a mixed multi gpu setup. The problem is also that it is time expensive to change the runlvl because all memory on gpu needs to be freed and allocated with the new config. This will be a introduce many bugs.

It is much more easy to control this runlvl by restarting the miner with a different config.

Am 19.09.2017 21:08 schrieb "Tim Monaghan" notifications@github.com:

So this could apply to AMD or CPU as well - just with different elements

It would be cool if you could define say 3 diff levels, like this

"gpu_threads_conf" : [ { "name":"High Performance", "index" : 0, "threads" : 64, "blocks" : 9, "bfactor" : 12, "bsleep" : 100, "affine_to_cpu" : false, },

{ "name":"Mid Performance", "index" : 0, "threads" : 16, "blocks" : 4, "bfactor" : 12, "bsleep" : 100, "affine_to_cpu" : false, },

{ "name":"Low Performance", "index" : 0, "threads" : 16, "blocks" : 4, "bfactor" : 12, "bsleep" : 100, "affine_to_cpu" : false, }, ],

And then choose the one you want while the app is running - ideally - maybe t could toggle between them. Or even a "variable" at the top of the config, which would still require a restart but that would be ok.

"gpu_conf_level" : 1,

Which might correspond to the first element, or even by name

"gpu_conf_level" : "Low Performance"

To set the current run level.

Then, at night, you could set it to high performance and during the day, low, etc.

Just an idea!

Thanks

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/fireice-uk/xmr-stak-nvidia/issues/133, or mute the thread https://github.com/notifications/unsubscribe-auth/AYsxtoMZgAUz4xeNp98p3ubex1BQhNPKks5skBEigaJpZM4Pc32U .

psychocrypt commented 6 years ago

The way to use different settings is to use a config for each setting.