Profitable Scala XLA mining GUIDE on A VPS


  • 30 min read
  • 1 hour to implement (You'll get faster every time you do it)

Here I'll show you how to get started finding affordable VPSes, how to set up your mining software, and a I'll also share a few tweaks to squeeze out every hash/s possible.

Requirements

  • Some start-up cash, 30-50 gbp/eur/usd will be plenty

  • A terminal (Putty if on Windows, if on Linux I'm sure you'll know)

  • Basic command-line skills, don't worry I'll try make it simple

  • Some time, for both research and setup

Finding affordable VPSes and Calculating Profitability

Finding a cheap VPS that performs well and matches the needed criteria can be a bit of luck but here I'll try to give you the tools and knowledge needed to make educated guesses before you purchase anything. We'll start with the criteria so we know what to look for in a VPS.

VPS Criteria

There's four main criteria that VPS resellers will use to market their services, CPU Cores, RAM, Disk space/type, and Bandwidth.

  • CPU Cores - I'd argue the most important criteria, the more of these you can get for a cheap, the better.

  • RAM - The VPS's RAM is a little more complicated as there's a dividing line around the 2GB mark that you should consider. I'll talk about this more below.

  • Disk Space/Type - Hey if it's got a disk at all that's good enough for us. SSD or not, doesn't matter.

  • Bandwidth - Again, not too important as mining doesn't tend to use huge amounts of transmitted data.

  • Operating system, not too important but for best results choose either Ubuntu 16+ or Centos 6+ when purchasing. The latest OS version possible will be best.

RAM continued...

The algorithm under the hood of Scala is called "Panthera" and it's based on the RandomX algorithm from the Monero guys. RandomX has two operating modes, Fast-mode (normal mode) and Slow-mode. Slow-mode allow less powerful machines to take part in the mining process even though they might not reach the minimum recommended requirements to mine at the normal rate. Slow-mode is enabled for computers with less than 2GB of available RAM for mining and will severely reduce your mining hash rate.

Slow-mode isn't all that bad though as lower specced VPSes are often significantly cheaper in comparison. Because of this, for RAM our Criteria is going to be split into two sections. Slow-mode VPSes and non-Slow-mode VPSes. The RAM Criteria for a Slow-mode VPS is "some amount higher than 0.5GB but ideally the less the better". In the case that you find a VPS with a good core count but low RAM you are better off trying to find the cheapest version of that server available which will mean going for the lowest workable amount of RAM which I've found to be around 0.5GB.

For non-Slow-mode, anything over 3GB is good. We're choosing to skip the ~2-3GB range here as you need 2GB FREE RAM in order to avoid using Slow-mode so choosing a VPS with 2GB RAM or similar will likely mean you're wasting your money. Your operating system will eat into that 2GB of available ram and lower the total amount of free RAM to below Slow-mode levels.

Finding cheap deals

A simple Google search for "cheap VPS" will often lead you to some good results but a tool that I personally use is LowEndBox.com

Low End Box is dedicated to helping people run websites and services on low end dedicated servers and virtual private servers, where you only need to pay a few dollars a month to get full root access. Our mission is to help people find cheap vps hosting.

LowEndBox is a fantastic place to look for VPS deals, especially in the "Cheap VPS under $X/month" category. The servers here are often well reviewed and tested by either LowEndBox themselves or in the forums and comments by members of the public.

Calculating Profitability

Without purchasing a VPS and actually testing the hash rate for yourself you can never be 100% sure of the actual performance of your VPS but we can make some estimates to see where your profitability lies.

It's comfortable to guess approximately 400H/s for a Slow-mode CPU core and more like 600-700H/s for a non-Slow-mode CPU core. These numbers will vary from machine to machine as different VPSes will be hosted on differently specced hardware underneath. Looking at this example below we can run some basic calculations:

We can see this server meets all of our Criteria for a Slow-mode VPS which is great. 1.5GB of RAM is more than enough for Slow-mode and our operating system. Three CPU cores is a fine number and means we'll be able to run three mining threads at once. 20GB SSD storage is acceptable. 4B Bandwidth is acceptable. 1Gbit Port is a faster internet speed. Full root access is a must. Location doesn't really matter but I trust the uptime of a datacentre in a big cities. Pricing of $2 is great, lets see if we can profit from this.


To calculate our estimated profits for this example we can use CryptUnit's XLA profit calculator. Plugging in our Slow-mode estimated CPU core speeds of 400H/s and multiplying by our three cores we get 1200H/s which on CryptUnit gives ~$5 of revenue as of time of writing this in April 2021. $3 profit per VPS we purchase isn't too bad when you consider how autopilot these miners are once you've done your initial setup and the ease with which you can spin up many of these servers.

With these estimations made, you can start to find good looking deals on the internet and start purchasing some servers. If the servers turn out to not be as profitable as you hoped, you can always look at the sellers refund policy and move on to another potential.

Setting up your miner


You will need:


Setting up xlarig

I'll be using Putty for this example because I'm hoping that Linux users won't need a guide on ssh'ing.

So first, download Putty from the link above (or Google it if you don't trust my links (you probably shouldn't, you don't know me)) and open run the .exe

The only relevant field in the Putty configuration window you'll need is "Host Name (or IP address)". Put your VPS's IP address in there and hit "Open".

You'll be asked for your server username (usually "root") and password, both of these you should have set up when you purchased your VPS. If you don't know these, check your emails, usually VPS sellers will contact you with the server login details when you first request a server.

Once logged in you'll be in the home directory of the user you logged in as. Usually this will be a path like /root or /home/ubuntu or /home/skel if your login user is root, ubuntu, or skel respectively.

Here we'll run a few commands to download xlarig to the server and also fetch some necessary files. From the links above, go to the xlarig releases Github page and for this guide I'll be using version v5.2.1, specifically XLArig-v5.2.1-linux-x86_64.zip. Right click the link to that zip file and copy the address. Now go back to Putty and type the following commands.

  • wget "YOUR_XLARIG_ZIP_URL_PASTED_HERE"

  • unzip XLArig*.zip

  • chmod +x xlarig

  • wget "https://pastebin.com/raw/WJV2R9pz"

  • mv WJV2R9pz config.json

  • ls


wget is used to download the xlarig miner, then unzip is used to extract this .zip file, then chmod is used to make the xlarig file able to be executed, then wget is used again to download the config file, then mv is used to rename this config file from the pastebin name to config.json, then finally ls is just used to show us all the files we've downloaded so far. Easy enough.

Right now if you ran the command...

  • ./xlarig


...the miner would probably start and work fine, maybe give it a go now, you can use Ctrl + C to exit once you're happy that it's started mining. Before you leave this, you'll want to change some important settings in the config file.


Configuring xlarig

With the config.json file downloaded from pastebin, you'll want to make a few changes before you start mining. The most important of these are: Setting up your wallet address, changing your thread count, and naming your miner.

Depending on which OS you installed when purchasing, different text editing software will be preinstalled on your VPS. The choices will either be "nano" or "vim". Type "nano" into your terminal, if it doesn't open try "vim". One of these will work. Because this guide is getting lengthy I won't be teaching you how to edit text files, it's a very Googleable topic. Instead we'll start with the changes you need to make.

Open your config.json file and find the section "user", currently this will have a long value something like "Svkc5vEzm..." you'll want to change this to your own wallet address. (Unless you want to mine for me instead for some reason?)

Next scroll to the section above this called "panthera", noting that we're not looking at the section that looks like "algo" : "panthera" but instead at the section that looks like "panthera" : [-1, -1, -1]. You will want to change this list of "-1" depending on how many CPU cores your VPS has. In the example case from earlier, our SkeldoorVPS server has three cores so we must have three "-1" in this list.

Lastly you will want to change your "rig-id". This is a personal name for your miner that you will use to recognise it later on the pool server. Examples could be "MyVPS" or "SkeldoorVPS-Number-1"

Something to note here is the pool server setup for this config.json is "url": "scala.party:3333" which is actually my pool for mining XLA that I'd love for you to join if you're interested in taking part in my pool party :) You can visit my pool using this link: Scala.Party If you're not interested this value can be changed too to the pool host of your choice but I'll be very sad about that.

Now running the following command will start up your miner with the correct number of threads for your VPS and start mining on Scala.Party and paying out to your wallet address.

  • ./xlarig


You might realise here that if you close your Putty window or ssh session that the miner stops mining. A quick solution to this is to put "nohup" at the start of the command and "&" at the end, like this:

  • nohup ./xlarig &


Doing this will force the miner to run in the background so that you can close Putty without stopping the miner process. If you're doing that I'd also recommend using the log-file command so that you can open it later to quickly check on the status of your miner. You can do this with the below command which will make a file called xla.log in your home directory for you to take a look at when needed

  • nohup ./xlarig --log-file ~/xla.log &


Tweaking your setup for best performance & how to mine forever

This page is a work in progress, I'm working on writing this section now. Come back soon.