mbevand / silentarmy

Zcash miner optimized for AMD & Nvidia GPUs
341 stars 189 forks source link

Allow selection of instances per GPU #15

Open ASICseer opened 7 years ago

ASICseer commented 7 years ago

Many people run mixed GPU rigs of 2gb cards and 4gb cards. Please add feature to define instances like:

--instances 1,2,2,1

This will allow users to define instances on a per-gpu basis. Right now, the only work around is to run separate miner instances with different flags.

Thank you!

mbevand commented 7 years ago

Good idea. Will consider offering this option.

ASICseer commented 7 years ago

@mbevand

It may be a good idea to allow--instances auto or something similar, to programmatically find the total vram per gpu and assign as many instances as can fit into it.

Example php code / hack way to do it (I am sure you will have a better way).

<?php

function return_threads(){

        $vram_array = explode(" ",file_get_contents("vrams.file")); // vrams.file = "4 2 2 4"

        $count = 0;
        foreach($vram_array as $vram){
                $gpus[] = $count;
                $count++;
                if($vram >= 3.5) { 
                        $threads[] = 2;
                } else {
                        $threads[] = 1;
                }
        }

        $instances = implode(",",$threads);
        $use_gpus = implode(",",$gpus);
        return array($use_gpus,$instances);

}
?>
mbevand commented 7 years ago

I've noticed a GPU may have enough memory for 3, 4, or more instances but may still run faster with 2.