Here we will cover some important things you should know about NvEZOS functionality as well as include a few tutorials. This will be expanded upon in the future. If you have suggestions for future tutorials/information, please contact me at firstname.lastname@example.org
Before you begin…
I mention it in the install instructions, but Ill add it again here. During setup you MUST set the user you create to login automatically, the reason for this is the nvidia-settings commands used to set the overclock offset values requires a running x session to bind to. By having the user login automatically it provides a persistent environment to run these commands against insuring overclocking works consistently.
For those of you who know Linux, I’ll provide some insight into how the miners work. Its quite simple really, when you put in the command you want that miner to run, a shell script is saved with the command you created for that miner. Each miner (1-10) has an associated systemd service which runs each miner script as a daemon. The miner control area simply stops and disables all of these services then enables and starts the one(s) you wish to have running – this also insures the selected service(s) will start on reboot. All services except the dev miner service are disabled by default. When you start your first miner, or hit stop all services, the dev miner will be stopped and disabled, only to be re-enabled if you do it manually. Each miner is also logged to its own log in /nvezos/logs which is purged every 24hrs. You can access these via ssh for additional information if needed.
NvEZOS V1.03+ has reverted to using Ubuntu-Gnome 16.04.2 LTS. This appears to provide better stability without any loss of functionality. During setup you may notice an “Unexpected Error” that will popup (it can also come up on first boot) you can hit continue or just leave it in the background, it can be safely ignored – it has to do with one of the dependencies of cuda 8 and some compatibility issues with 16.04.2.
NvEZOS V1.02+ has reverted to nvidia-375 drivers due to some issues with overclocking on 384 drivers. There is no longer a need to stop the miner to apply the overclock and the overclock will automatically apply on reboot within 3-4 minutes of full load.
When using the multi-mine option, each miner command you create needs to have a flag set specifying which GPU it uses. I’ve tested, and yes, you can technically run multiple miners on a single GPU (or all miners on all GPUs), but the performance is horrible, Claymore does this through a proprietary system, it is not simply running two miners on the same GPU, but using complex task scheduling. What multi-mine allows you to do is use different GPU’s to mine different currencies, so to set it up you would want to set one miner to use say GPU 0 and 1, while another uses GPU 2 and 3, well get into some examples of this in the tutorial below.
EWBF is extremely slow to update the log (sometimes 10 minutes between updates) due to the buffer and the extremely low amount of log output. This can cause the EWBF hashrate to be quite a bit behind as well as the log output. Just keep this in mind when using EWBF. I’m working to see if there’s a way to address this, but it seems unlikely.\
When setting up the miner commands, you’ll notice a field for the “Miner Status Page”. This is where you can put in a url that links to the dashboard page for the mining pool associated with the miner. In previous versions, when you clicked the Pool Status button it would open the dashboard page in an iframe, however, most pools are blocking cross-site iframe linking, so now when clicking the Pool Status button the dashboard page will simply open in a new tab. Keep in mind this only works with single mining, as it will open the dashboard page for the last miner daemon that gets started. Also, this field is entirely optional, if you don’t want to use it, you don’t have to.
You can chose to run the dev miner at any time to help support the NvEZOS project, however, it will never be ran again automatically after the first boot. If you use the multi-mine feature, when the dev miner is enabled, it will only run on GPU 0 (using the flag –cuda-devices 0), so you can help support NvEZOS while you mine normally on the rest of your GPU’s. (Just be sure to use the appropriate device flags on the rest of your miner commands – see below)
Setting up your first miner…
This seems to be the most confusing part about NvEZOS – setting up the miner commands, so I wanted to address this first, then additional tutorials will be posted down the road.
First off, there are multiple ways to setup a miner, but in the end it’s accomplishing the same thing. If you mine via cli in a Windows or Linux OS you are launching the miner with a command. Whether you use a bat or sh script to do this or just write out a command for the miner, it’s the same thing. You’re doing the same thing here, providing the daemon with the command to run in order to mine. So let’s get into building the first miner command.
The first part of any miner command is the location of the actual miner file, for all default NvEZOS installs this will be as follows…
Ethminer – /ethminer/cpp-ethereum/build/ethminer/ethminer
EWBF – /ewbf/miner
Claymore – /claymore/ethdcrminer64
So let’s say we want to start with something basic, one of the easiest pools to configure, mining eth via ethermine.org
In this case, we’ll start off with the location of the miner /ethminer/cpp-ethereum/build/ethminer/ethminer then add the rest of the variables they want us to add….
We’ll start with the example they give…
ethminer.exe –farm-recheck 200 -G -S eu1.ethermine.org:4444 -FS us1.ethermine.org:4444 -O Your_Ethereum_Address.RigName
And the command we’ll use…
/ethminer/cpp-ethereum/build/ethminer/ethminer –farm-recheck 200 -U -S eu1.ethermine.org:4444 -FS us1.ethermine.org:4444 -O Your_Ethereum_Address.RigName
Notice the changes, ethminer.exe is changed to the full path to the ethminer (ethminer.exe is windows, linux ethminer has no extension). We also changed the -G to -U as this will use CUDA instead of OPENCL. At this point, you are ready to go, you just need to change the address and rig name to your own!
But wait… What if we want to enable multimining and mine eth on GPU 0-3 and Zen on GPU 4-7…
Let’s start by building our ZenCash command. Suprnova, the pool I personally use, provides this example –
miner.exe –server zen.suprnova.cc –user suprnova.1 –pass x –port 3618 –cuda_devices 0 1 2 3
Now edited to the proper path to ewbf and changing to the correct GPU’s we want to use (4-7), we’ll call this command1 –
/ewbf/miner –server zen.suprnova.cc –user suprnova.1 –pass x –port 3618 –cuda_devices 4 5 6 7
So now we also need to make our Eth miner only use GPUs 0-3, we can do this using the –cuda-devices flag. (Almost the same as with ewbf, but with – instead of _), we’ll call this command2 –
/ethminer/cpp-ethereum/build/ethminer/ethminer –farm-recheck 200 -U -S eu1.ethermine.org:4444 -FS us1.ethermine.org:4444 -O Your_Ethereum_Address.RigName –cuda-devices 0 1 2 3
So now we have miner 1 setup with command1 and miner 2 setup with the command2. Now you can enable multi-mine, check both miners, and hit start. Both miners should start running and hashrates should appear shortly on the monitoring page. You can also get more info by flipping between the logs on the monitoring page.
A tutorial for Claymore will be coming soon. I personally dont have a lot of experience with Claymore, so if you do, feel free to write something up and send it to me!