SRBMiner Cryptonight V8 AMD GPU Miner

SRBMiner

Windows only!

Download :
https://github.com/CrazyMining/SRBMiner/blob/master/SRBMiner.rar?raw=true
Recommended drivers: 
Adrenalin 18.5.1Adrenalin 18.5.2Adrenalin 18.6.1

Don’t use 18.3.4 and older drivers if you want to mine V8! Your hashrate will be very bad. Instead use minimum 18.5.1 and newer drivers!
DON’T COMPILE kernels on drivers 18.7.1+ because they will create faulty binaries, use the bundled pre-built binary kernels instead.

Supported algos:

– CryptoNight V8 (cnV2) [normalv8]
– CryptoNight V7 (cnV1) [normalv7]
– CryptoNight [normal]
– CryptoNight Lite V7 [litev7]
– CryptoNightLite [lite]
– CryptoNight Heavy [heavy]
– CryptoNight Haven [haven]
– CryptoNight Fast [fast]
– CryptoNight BitTubeV2 [bittubev2]
– CryptoNight StelliteV4 [stellitev4]
– CryptoNight ArtoCash [artocash]
– CryptoNight Alloy [alloy]
– CryptoNight B2N [b2n]
– CryptoNight MarketCash [marketcash]
– CryptoNight Italo [italo]
– CryptoNight Red [mox]

Supports Nicehash & SSL/TLS encrypted connections

DevFee:
– DevFee is very low, it’s only ~ 0.85% (both in normal mode and in algo switching mode)
– Using the same algo as user for devfee mining, so there is no difference in algo settings, power usage, etc..

Extra:
– Watchdog that monitors your GPU threads, if they stop hashing for a few minutes, miner restarts itself
– Hash monitor, if 5 minute average hash falls under the value you define, miner restarts itself
– Set system shutdown temperature, to protect your GPU’s from overheating
– Restart (disable/enable) Vega gpu’s before mining for maximum performance
– API for rig monitoring
– Set compute mode and disable crossfire on all cards
– Benchmark every algo locally without connecting to a pool

Here’s a (not complete) list of supported coins, and which algo has to be used

normalv8
+Monero (from block 1685555)
+Wownero

normalv7
+Monero
+MoneroV
+Intense/Lethean
+Graft
+BBS
+Lines
+Fonero
+Myztic
+Catalyst
+Quantum Resistant Ledger
+ReCoal
+xDrop
+Leviar
+Elya
+Festival
+Electroneum classic
+Safex-Cash
+Xcash

normal
+Electroneum
+Monero Classic
+ByteCoin
+Karbo
+DigitalNote
+Leviar
+Ultranote
+BalkanCoin
+BitSum
+CrepCoin
+DinastyCoin
+LeviarCoin
+BitCoal
+Sumo
+IntuCoin
+Geldum
+Newton
+X12Coin

litev7
+Turtlecoin
+Iridium
+Aeon
+Arqma
+Worktips
+Bitsum
+42
+Triton
+MonkeyTips
+Arqma
+BitcoiNote

heavy
+Ryo
+Loki
+Bloc.Money
+BixBite
+Saronite
+Ombre
+ItaloCoin
+Niobio
+ZBucks
+Veronite
+CitiCash

bittubev2
+Ipbc/BitTube

artocash
+Artocash

alloy
+Alloy

marketcash
+MarketCash

b2n
+Bitcoin2Network

stellitev4
+Stellite

fast
+Masari
+Conceal
+PrivatePay
+Kepl
+Electronero

haven
+Haven

italo
+ItaloCoin

mox
+MoX Project

————————————————————————–
CONFIG.TXT
————————————————————————–

You can use these options :
Note: use all lowercase characters

“cryptonight_type” : “normal, normalv7, lite, litev7, heavy, bittubev2, artocash, alloy, marketcash, b2n, stellitev4, haven, fast, italo”
“intensity” : 0-300, if set to 0 miner will try to find best settings for every video card
“worksize” : 1-256, if set, every video card will use this worksize, if not set, using auto detected value
“double_threads” : true or false, set it to true for best performance
“giveup_limit” : number, how many times to try connecting to a pool before switching to next pool from pools.txt
“timeout” : number – seconds, when is a connection to a pool treated as time out
“retry_time” : number – seconds, how much to wait before trying to reconnect to a pool
“reboot_script_gpu_watchdog” : filename to a batch file in miner directory, if set it turns off built in miner reset procedure on gpu failure, and instead runs this script
“reboot_script_min_rig_speed” : filename to a batch file in miner directory, if set it turns off built in miner reset procedure on min_rig_speed trigger, and instead runs this script
“main_pool_reconnect” : number – seconds (minimum is 3 minutes or 180 sec), how often to try to reconnect back to the main pool. Default is 10 minutes.
“min_rig_speed” : number – in H/S, it defines the minimum rig hashing speed we want to maintain. If 5 minute average hashing speed is less than this, miner restarts.
“min_rig_speed_duration” : number – in seconds (minimum is 30 sec), defines the time period for average hashing speed calculation, used with ‘min_rig_speed’ parameter
“target_temperature” : number between 0-99, miner will try to maintain this temperature on all found video cards (ADL must be enabled, works only on cards supporting OverdriveN)
“shutdown_temperature” : number between 0-100, if this temperature is reached, miner will shutdown system (ADL must be enabled)

=================================
Manual GPU setup (advanced)
=================================

To manually set up video cards, you must create a “gpu_conf” array in the config.txt file.

Example :

“gpu_conf” :
[
{ “id” : 0, “intensity” : 50, “worksize” : 4, “threads” : 1},
{ “id” : 1, “intensity” : 45, “worksize” : 4, “threads” : 2},
{ “id” : 2, “intensity” : 40, “worksize” : 8, “threads” : 3},
{ “id” : 3, “intensity” : 55, “worksize” : 8, “threads” : 4}
]

Additional parameters:

“bralock”: 1-256, parameter to tune, it *may* add some extra hash, it can differ between algos
“target_temperature” : 0-99, if set miner will try to maintain this temperature for this particular video card. If option ‘target_temperature’ on top of config.txt is set, this option WILL BE IGNORED. (ADL must be enabled, works only on cards supporting OverdriveN)
“target_fan_speed” : 0-6000, if set miner will try to set the video card fan speed to this speed. Setting is in RPM (rounds per minute) (ADL must be enabled)
“adl_type” : 1 or 2 , 1 – USE OVERDRIVEN , 2 – USE OVERDRIVE 5. Default is 1 if not set. Option 2 (Overdrive 5) is suitable for older cards
“persistent_memory” : true or false, if set miner will try to allocate extra memory for the video card, if it is available. CAUTION, MINER CAN BECOME UNSTABLE AND CRASH if using this option
————————————————————————–
POOLS.TXT
————————————————————————–

Example:

{
“pools” :
[
{“pool” : “pool_1_address”, “wallet” : “pool_1_wallet”, “password” : “x”},
{“pool” : “pool_2_address”, “wallet” : “pool_2_wallet”, “password” : “x”},
{“pool” : “pool_3_address”, “wallet” : “pool_3_wallet”, “password” : “x”}
]
}

Pool on first position is the MAIN pool, others are counted as FAILOVER pools.

Additional parameters:

“worker” : worker name, not every pool supports this
“nicehash” : true or false, set this to true if you are using Nicehash
“keepalive” : true or false, not every pool supports this
“pool_use_tls”: true or false, if true miner will use SSL/TLS to connect to pool
“job_timeout” : number in seconds, if no job is received for this period, miner will reconnect to the pool (Default is 20 minutes)
“max_difficulty” : number, if pool difficulty is above this value miner will reconnect to the pool
“cryptonight_type” : if defined, and –usealgoswitching is used, it indicates the algo for the pool.

A short explanation of “cryptonight_type” and how to use it :

{
“pools” :
[
{“pool” : “pool_1_address”, “wallet” : “pool_1_wallet”, “password” : “x”, “cryptonight_type” : “haven”},
{“pool” : “pool_2_address”, “wallet” : “pool_2_wallet”, “password” : “x”, “cryptonight_type” : “normalv7”},
{“pool” : “pool_3_address”, “wallet” : “pool_3_wallet”, “password” : “x”, “cryptonight_type” : “normalv7”},
{“pool” : “pool_4_address”, “wallet” : “pool_4_wallet”, “password” : “x”, “cryptonight_type” : “fast”}
]
}

Set the algo used on the pool with the “cryptonight_type” parameter.
Set the –usealgoswitching parameter in start.bat

If needed, miner will re-init with the pool algo before switching to the pool.
For example if you are mining on pool_1 using haven algo, and you manually switch to the next pool, miner will re-init with normalv7 algo
before connecting to pool_2.
Also if there are connection errors to pool_1, and miner automatically switches to the next pool, if the algos of pools aren’t the same, miner will re-init with the defined cryptonight_type for pool_2.

————————————————————————–
START.BAT
————————————————————————–

There are some options that must be set in start.bat, and not within config.txt or pools.txt.
For example if you want to create configurations for multiple coins, you must define a ‘start.bat’ like file for every coin.

Parameters:

–config filename (use config file other than config.txt)
–pools filename (use pools file other than pools.txt)
–logfile filename (enable logging to file)
–listdevices (list available devices)
–listdevicesreordered (list available devices ordered by busid)
–gpureorder (order devices by busid)
–adldisable (disable ADL)
–disablegpuwatchdog (disable gpu crash detection watchdog)
–resetfans (reset fans back to default settings on miner exit)
–enableduplicategpuid (enables the usage of the same gpu id in gpu_conf multiple times)
–sendallstales (send every stale share – may increase number of rejected shares)
–setcomputemode (sets AMD gpu’s to compute mode & disables crossfire – run as admin)
–runbenchmark (benchmark your current algo settings offline)
–benchmarkduration (how long to run the benchmark in seconds, max is 3 minutes, def. is 1 min.)
–resetvega (disable/enable Vega video cards before mining)
–startupscript filename (run custom batch script before mining)
–usealgoswitching (use miner in algo switching mode – pool must support it)
–usealgomapping value (type of algo mappings to use with algo switching: 1-short, 2-long, def. is short)
–algoswitchmintime value (minimum time to mine using same algo, in seconds, min is 3 minutes, def. is 10 min. – pool must support it)
–apienable (enable statistics API)
–apiport value (port where statistics API is reachable – default 21555)
–apirigname value (identifier name for your rig in statistics API)
–forcedshutdown (never try to free resources on restart/shutdown)

When setting any of these parameters, DON’T use ” or ‘ around the value!

To setup your video cards in cmd line :

These settings override the settings in config.txt
If you want to set everything in cmd line, you still need to have an empty config.txt file (which contains just : {}, or any other parameter like api etc etc )
First list devices (–listdevices or –listdevicesreordered if you are going to use –gpureorder), then you know the GPU id’s and can set them up easy.

Parameters:

–ccryptonighttype value (algo to use)
–cgpuid value (gpu id, comma separated values, use –listdevices to see available)
–cgpuintensity value (gpu intensity, comma separated values)
–cgputhreads value (number of gpu threads, comma separated values)
–cgpuworksize value (gpu worksize, comma separated values)
–cgpubralock value (1-256, comma separated values)
–cgputargettemperature value (gpu temperature, comma separated values)
–cgputargetfanspeed value (gpu fan speed in RPM, comma separated values)
–cgpuadltype value (gpu adl to use (1 or 2), comma separated values)
–cgpukernel value (gpu kernel to use (1 or 2), comma separated values)

To setup your main pool in cmd line :

If set here, this will be the MAIN pool, you can also add more pools in pools.txt config file.

Parameters:

–cworker value (worker name or rig id – pool must support it)
–cpool url:port (pool address:port without stratum prefix)
–cwallet address (user wallet address)
–cpassword value (pool password)
–ctls value (use SSL/TLS, true or false)
–cnicehash value (force nicehash, true or false)

Examples:

Use 1 GPU with id 0 , intensity 120, 2 threads on algo cryptonight v7 on nanopool:

SRBMiner-CN.exe –ccryptonighttype normalv7 –cgpuid 0 –cgpuintensity 120 –cgputhreads 2 –cpool xmr-eu1.nanopool.org:14444 –cwallet 4A5hJyu2FvuM2azexYssHW2odrNCNWVqLLmzCowrA57xGJLNufXfzVgcMpAy3YWpzZSAPALhVH4Ed7x o6RZYyw2bUtbm12g.donation

Use 5 GPUS with id 0,1,2,3,4 , intensities 56,56,55,58,55, 2 threads for each GPU, on algo cryptonight v7 on nanopool:

SRBMiner-CN.exe –ccryptonighttype normalv7 –cgpuid 0,1,2,3,4 –cgpuintensity 56,56,55,58,55 –cgputhreads 2,2,2,2,2 –cpool xmr-eu1.nanopool.org:14444 –cwallet 4A5hJyu2FvuM2azexYssHW2odrNCNWVqLLmzCowrA57xGJLNufXfzVgcMpAy3YWpzZSAPALhVH4Ed7xo6RZYyw2bUtbm12g.donation

How does this work?

The pool always sends you a job for the algo that is most profitable to mine with your rig at that moment.
It is simple as that.

How to set it up ?

There is a file with name algos.txt, where every algo that SRBMiner supports is filled.
You need to edit the ‘hashrate’ value in every algo, and ‘startup_script’ if you are going to use it.
Also if you want, you can fully customize configs for every algo. You can find them in the ‘Config’ folder.

Short explanation of parameters ————————————————————————–

ALGO SWITCHING MODE
————————————————————————–

in algos.txt:

The parameter “config” expects a filename to a config file where you set up everything for a specific algo (config-normalv7.txt is for CNV7 as you can guess).
So on every new algo switch SRBMiner will initialize settings specific for that algo.

“pools” is a config file for pools, where you can define multiple pools with algo switching ability, so you have failovers too.

“hashrate” is a parameter where you should write the total hashrate of your rig (in H/S) for that specific algo (you can easily find it out by running a benchmark for example).
This field is used by the pool in calculating what is the most profitable algo for you to mine.

“startup_script” can be used to run a script (batch file) before miner starts. You can for example set clocks, voltages, etc. specific to that algo

There is also a file with name pools-algoswitch.txt where i predefined a few pools on Monero Ocean (the only algo switching pool at the moment), where you need to change the wallet address to your own.

Now that you have algos.txt and pools-algoswitch.txt set up, start the miner by running start-algo-switching.bat

It is VERY IMPORTANT to use config files here, and not set GPU’s and pool in command line. If you do so, algo switching probably won’t work.
You can start with any algo you wish, because the pool will change it if it’s not the most profitable algo to mine at that moment.

TIP:
– To speed up the restarting process of the miner when changing algo, you can use the –forcedshutdown parameter. This way it won’t wait for the GPU’s to finish their job, and free their resources, but it will force a restart. This can sometimes produce a video driver crash.

– To always get the maximum hashrate from your Vega’s, use the –resetvega parameter , so on every algo change you disable/enable your cards before mining.
Example :

Code:
SRBMiner-CN.exe –config Config\config-normalv7.txt –pools pools-algoswitch.txt –logfile log-algo-switching.txt –usealgoswitching –resetvega

————————————————————————–
KEYBOARD SHORTCUTS
————————————————————————–

– Press ‘s’ to see some basic stats
– Press ‘h’ to see hashing speed
– Press ‘r’ to reload pools
– Press ‘p’ to switch to the next pool
– Press ‘o’ to switch to the previous pool
– Press number from 0-9 to disable/enable from gpu0-gpu9, then shift+0 for gpu10, shift+1 for gpu11..etc. until gpu19 max (use US keyboard where SHIFT+1 = !, SHIFT+2 = @ ..etc..)

————————————————————————–
CONFIGURATIONS
————————————————————————–
The X/X/X means : INTENSITY/WORKSIZE/THREADS

Vega56 (samsung and hynix) with stock and 64 bios

heavy/haven/bittubev2/italo : 60/9/2 ( ~1550+HR )
v7/stellitev7 : 112/16/2  or 120/8/2 ( ~2000+HR )
fast : 112/16/2 or 120/8/2 ( ~3800/3900HR )
lite/litev7 : 234/8/2 ( ~4200+HR )
alloy : 120/16/2 ( ~960/1050HR )
artocash : 112/16/2  ( ~1950HR )

Vega 64

heavy/haven/bittubev2/italo : 63/9/2 ( ~1550+HR )
v7/stellitev7 : 120/16/2 ( ~2100/2200+HR )
fast : 120/16/2 ( ~4000+HR )

Rx 550 2G

heavy/haven/bittubev2/italo : 14/12/2 ( ~350HR )
v7/stellitev7 : 27/12/2 ( ~520HR )
fast : 21/12/2 ( ~890HR )
lite/litev7 : 45/12/2 ( ~1050HR )

————————————————————————–
OVERDRIVENTOOL SETTINGS
————————————————————————–
The X/X means : MHZ/mV

Vega56 air ref (samsung) 64 bios
GPU: P7 = 1442/906
MEM: P3 = 1095/906

Vega56 (hynix) stock bios
GPU: P7 = 1448/930
MEM: P3 = 908/930

Vega 64 Liquid (samsung)
GPU: P7 = 1478/920
MEM: P3 = 1100/910

Rx 550 2G (elpida)
GPU: P7 = 1170/875
MEM: P3 = 1900/875

Rx 550 2G (hynix)
GPU: P7 = 1170/875
MEM: P3 = 2030/875

Download :
https://github.com/CrazyMining/SRBMiner/blob/master/SRBMiner.rar?raw=true

Leave a Reply

Your email address will not be published. Required fields are marked *