Skip to content

Config Directory

MaynardMiner edited this page Jun 9, 2019 · 11 revisions

Modifying Background Miners/SWARM config

All background miners in SWARM are ran with default settings. You may experience better hashrates/performance modifying each miner. This is a simple explanation on how to modify miners. Ultimately, you must consult the readme's or run the miner with a -h or --help to view all available parameters.

Arguments vs. Configs

There are items in the config folder to which specify the same parameters as arguments. For example, -Altwallet1 is an argument, but in wallet.json there is an Altwallet setting. In the event that both are set, Arguments will ALWAYS override any config if there is a conflict. Arguments have a higher precedence than any config setting.

Config Folder

The folder labeled "config" contains all the possible user adjustable configurations within SWARM. SWARM can be heavily modified to user specifications. Each folder contains a certain configuration for SWARM. I will quickly explain each folder and its related settings:

asic
This allows you to set multiple asic rigs for SWARM to control. 
This is detailed in another wiki article.
miners
The miners folder contains the configuration files for all miners within SWARM. 
How to modify them, can be found in the README.md located in the directory. It
is also detailed further in another wiki article.
pools
Pools contains the configuration for pool naming. Most of the pools use the 
same name for algorithms, but if they change, the naming convention is different, 
or a new algorithm appears: This file determines what algorithms/naming conventions 
to search for across pools. Some pools use different names as other, this file covers
these different names. Also, specific bans for miners/device group/pools 
can be set here.
oc
oc folder contains the default oc settings for SWARM, if you choose to use the 
oc tuning option that is built into SWARM. There is a sample .json which explains 
how to properly fill out form. By filling out this form- You enable SWARM to 
manage your oc settings. Leaving it blank, and SWARM will not manage your oc 
settings. It is detailed in the README.md located in the folder.
parameters
parameters are the recorded user arguments for SWARM. There can be up to three 
files located in this folder: 1.) arguments.json: It is written the first time 
user starts SWARM, and is modified by adding arguments to launch. 2.) default.json: 
It comes packaged in SWARM, and is used as a reference for writing other 
parameters.json. SWARM uses a parameters in this json, if it was not specified 
in your arguments. 3.) newarguments.json: This is allows SWARM to save windows 
user's flight sheets. This applies to only Windows, and is written whenever a 
user runs rocket launch/config through HiveOS. This file is written, so users 
do not have to modify the .bat file repeatedly to match their online flight 
sheet. Removing it, resets your parameters, and SWARM will default to the 
arguments in the .bat file.
power
power folder contains the .json that SWARM uses to record your watt ratings for 
each algorithm, if the user specified -WattOMeter Yes. Users can also manually 
modify this .json, including changing the Kw/Hr parameter. There is another wiki 
available on power settings.
update
This contains the path/url information for all miners in SWARM. When SWARM 
initiates a download/update- The information contained in these .jsons are 
used to gather miners online and build SWARM.
wallets
wallets.json allows users to be more specific with altwallets, allowing users
to specify altwallets specific towards pools. An example of this: Users could
hypothetically mine to their RVN wallet while on zergpool, but mine to their
Litecoin wallet while on zpool. There is instructions in wallets.json on how
to add these altcoin wallets. Note: -AltWallet parameter/argument overrides these
settings, so that you can force bind an altwallet remotely. If you utilize
wallets.json- you should omit -AltWallet and -AltPassword from your arguments.

Modifying miners:

Within the miners folder, contains 1 file for each miner within SWARM. This .json is the configuration file. Within this file is the .json parameters which are the default settings of the miners. For NVIDIA, since it is capable of running multiple device group- there is 1 configuration for each NVIDIA device group. If you wish to modify NVIDIA2, you would locate the NVIDIA2 settings, and modify them there:

name

This is the name of the miner, which matches the .json. The main purpose for this parameter is for when the developers need to modify json during the update process. It should not be changesd

delay

This parameter, which is expressed in seconds, is for users that wish to add a delayed launch to the miner. This allows for a 'cooldown' period if a user so desires to have one. This will delay the miner from starting x seconds after it was selected to be the most profitable miner. The biggest example of the need to add a delay, is if users are performing oc tuning, and wish to add a delay to give a moment for oc settings to change.

prestart

prestart is used for adding environment, path, or other variables to the console prior to launch. The biggest example of this is for adding a library, or exporting a value for gpu, such as "export GPU_MAX_HEAP_SIZE=100". You would enter the item here, as if you were typing it into the console. It will be inputted into the console prior to launching the miner. So you can run your own program create your own launch scripts, etc.

commands

commands are additional command line arguments. If you would like to add an additional item to miner launch, such as:

"x16r": "-i 19" 

to set a ccminer intensity of 19 for x16r, you would do so here. The commands are added to the current command line set. You can add as many command line arguments as you desire. Most miners have a readme file located in their folder (located in the bin folder). Alternatively, you can run the miner manually, and specify -h or --help to see their built in manual. Most miners have a manual such as that.

difficulty

This is for setting the difficulty of the miner. Just a number is needed.

"x16r": "200"

This would set a starting pool difficulty of 200. Technically it will add d=200 to the pool password parameter in most miners.

naming

Some miners have special names for algorithms. A good example is Z-enemy. In order to mine aergo algorithm, you must actually use -a aeriumx. This is the section in which you can modify in order to add/change algorithm naming conventions for a specific miner. The first part is the pool naming convention, the second part is the miner naming convention.

"aergo":"aeriumx"

In this example- if I aergo was detected to be the most profitable algorithm, z-enemy would launch with the -a aeriumx argument.

oc

Oc is for oc tuning. Consult the oc wiki for how to set the default oc, and active oc tuning. You would modify these parameters the same way as you would the default file. When the miner starts, and runs that algorithm- It will set the oc settings you specified here. If not, then it will set the default settings.

Protip:

SWARM has a feature in which during benchmarking, it pulls the log file 
(if available), and searches for any lines that contain the works 
difficulty or intensity.

If it find any, it saves a log of these lines.

The location of these small logs are within the miner file, 
located in the bin folder.

This does not work for all miners, but it may help you see what default 
intensities, anddifficulties the miner was running at, which is useful 
for helping you fine tune your miners.