Multicoin Cryptocurrency Mining Pool

ProPool

Multicoin Cryptocurrency Mining Pool

  • Blockchain
  • Web
  • Cryptocurrency
  • Mining
  • Trading
  • Blockchain
  • Web
  • Cryptocurrency
  • Mining
  • Trading

PixelPlex developed a profitable, efficient, and fault-tolerant multicoin mining pool to meet a client’s needs. The solution constitutes a comprehensive service for coin mining and includes a set of web and desktop apps for managing mining processes.

Project goals

We carefully analyzed the crypto mining market and identified the pain points:

  • Mining profit often does not exceed the cost of consumed electricity
  • Difficulties associated with software setup lead to platform owners losing potential users
  • The imperfection of monitoring systems results in equipment overheating which stops the mining process
  • Since mining is a kind of competition, the race can be “lost” if there is a delay in sending shares. This might happen if a lot of equipment is located in hard-to-reach places with poor Internet connectivity
arrow

Based on the results of our analysis, we set the following goals:

  • Create a reliable, profitable, and configurable mining pool with auto-switching coin/algorithm technology
  • Ensure easy application launch for users with all levels of mining experience
  • Provide a high level of fault tolerance
  • Develop a robust monitoring system, disaster recovery plan, resilience to heavy loads, and a scaling plan

Work done

  • High-performance auto-switching mining pool with GPU & ASICs support
  • Built-in mined coins arbitrage
  • Proxy mining functionality, making it possible to send shares to a larger external pool if solo mining cannot be carried out
  • R&D activities to introduce merged mining functionality and form a virtual computation cluster from resources primarily used for mining
  • Configuration of fees, owner wallets, and all other admin functions from configuration files
  • A miner’s personal account where they can view all their workers and statistics and manage payment settings

Solution

Our team developed ProPool, a multicoin mining pool, which, on the one hand, saves miners time setting up software and allows them to mine smoothly and earn more, and on the other hand, opens up new monetization opportunities for our client.
This is a win-win solution.

In addition to this, our mining application is:

  • High-performance

    288PH/s hashrate, up to 2000 miners connected from various geographic locations

  • Highly profitable

    Up to 5% extra profit due to merged mining, auto-switching, and arbitrage with crypto exchanges

  • Easy to set up

    The installation process takes no more than 5 minutes

  • Failure-resistant

    Uninterrupted operation thanks to smart load balancing and well-thought-out disaster recovery plan

The main purpose of the mining pool is to distribute the task of finding the hash of the block among the pool’s participants by summing up their computing power. The pool then calculates the contribution of each miner and distributes coins according to their contribution.

Details

The UI of several ProPool pages
  • Mining pool for users of any level

    We combined the necessary tools for all target groups in one product – professionals and mining beginners can work as one.

    Beginners can start “smart” mining in just one click with max profit settings, whereas professional miners receive a wide range of instruments for mid- and top-size mining farms.

    None of the users needs to constantly monitor cryptocurrency movements and reconfigure mining equipment, since ProPool does this automatically.

  • Rewarding system for miners

    There are three reward types implemented in our mining pool: Proportional, PPS, and PPLNS. For each coin, a reward scheme plus payout intervals and limits and pool fees are selected by the pool. Pool fees are paid to individual wallets.

    Initially, the pool aggregates everything at one address. From there, ProPool distributes rewards to miners’ wallets and to the fee-paying pool owners specified in the list of wallets.

Autoconversion to BTC and withdrawal

All mined coins are automatically exchanged for Bitcoins or a stablecoin (USDT/USDC) at the best rates among several cryptocurrency exchanges thanks to the built-in arbitrage module. Conversion starts as soon as your coin balance is confirmed by the coin’s network.

Users can withdraw mined coins from their account page to their wallets. Withdrawal is available for balances that are confirmed by the coin’s network and have passed the coin conversion.

The screenshot of Balance and transaction page of ProPool

Automated crypto trading on ProPool

This feature is implemented through PixelPlex’s crypto arbitrage solution.

The solution allows the user to capitalize on cryptocurrency price discrepancies on the largest exchanges.

Got an idea? Let’s work together

Research & Development

In order to offer miners more opportunities to make bigger profits, and to help the client increase the attractiveness of the application, our team also carried out R&D.

Based on its results, we formed a virtual computation cluster from the resources primarily used for mining, analyzed the possibility of implementing merged mining functionality, and introduced rendering and machine learning activities.

Merged mining

ProPool supports the classic LTC/DOGE merged mining approach, which means both cryptocoins can be mined simultaneously without affecting in any way the overall efficiency of the mining pool.

The process goes as follows:

  • An LTC pool is set up on the side of ProPool
  • The pool communicates with Doge daemon, receiving aux info via getauxblock
  • Miners mine LTC, but extra data is added to the information they produce. Getdata returns info considered valid for LTC mining, that can also be used in merged mining
  • When the shares arrive, the pool sends the shares with complexity matching that of the LTC network separately from those which match the DOGE network.
The screenshot of My workers page of ProPool

Rendering & ML activities

ProPool provides miners with the opportunity to increase their profits by participating in rendering and machine learning activities. The miner doesn’t need to do anything other than launch ProPool to receive their income.

It’s worth noting that ProPool only switches the miner’s equipment to the most profitable activity and does not require any manual configuration.

Computing resources can also be combined into a high computation virtual cluster, depending on the task and required computing power.

  • 120 times higher profit

    Miners can earn by joining rendering activities (other than mining itself)

  • 80-100 times higher profit

    Miners can earn by joining ML activities (other than mining itself)

How it works

  • 1

    The miner connects their GPU to ProPool

  • 2

    A computation power renting request is received through a separate service that aims to deliver a virtual cluster for machine learning or rendering activities using the ProPool miners' resources

  • 3

    The miner’s GPU automatically switches to various operations depending on the incoming task. It could be the actual mining process, training a neural network using a model, or high-end rendering

  • 4

    When the renting period ends, the equipment switches back to mining

Machine learning models that miners help to test include:

  • MobileNet
  • ResNet50
  • VGG16
  • DenseNet169
  • InceptionResNetV2
The screenshot of Pool info page of ProPool

Monetization mechanisms for the client

  • Profit from transaction fees. The platform owner decides what percentage of the miner's transaction cost they will receive
  • Once a crypto arbitrage operation has been completed, an additional fee of 15% is charged based on the difference between the official and maximum coin rates
  • Extra profit from merged mining
  • Formation and sublease of computing power through a temporarily created virtual cluster

Technical solutions

Technology stack

  • Sentry logo

    A service that helps us track errors and monitor our mining application’s performance

  • Elastic logo

    A log analytics tool for collecting, searching, analyzing, and visualizing application data

  • Prometheus logo

    A software application that we use for event monitoring and alerting

  • Grafana logo

    An observability and data visualization platform for tracking and analyzing metrics and logs

  • C++ logo
  • JavaScript logo
  • Node.js logo
  • Nest logo
  • React logo
  • PostgreSQL logo
  • Redis logo
  • Kafka logo
  • Timescale logo
  • Kubernetes logo

Infrastructure

  • TimescaleDB and Kafka in the AWS cloud

    Databases

    By using these, we can avoid the extra costs of creating and maintaining databases on PixelPlex servers.

    These databases support replication and quick disaster recovery.

  • Kubernetes

    Backend

    This is the gold standard for mining pools as it provides scalability, transparency, deep control of components, and smart updates.

  • AWS S3 & CloudFront

    Frontend

    These provide reduced server load and highly reliable content delivery to the user.

Architecture

Launching ProPool

How to launch ProPool for GPU miners

  • 1

    Download an application: Nvidia miner or AMD miner

  • 2

    Register and/or log in to the ProPool account through the miner

  • 3

    Run benchmark to analyze hardware power

  • 4

    Depending in the parameters and power of the hardware, the app chooses specific algotithms

  • 5

    Adjust coin settings and start mining

How to launch ProPool for ASIC miners

  • 1

    Register and/or log in to the ProPool account through the miner

  • 2

    Go to the ASIC admin panel

  • 3

    Find your ASICs IP on the local network and paste its address into the browser

  • 4

    Go to Miner General Configuration settings, paste stratum+tcp://dash.propool.io:3333 into Pool URL, and enter your username

  • 5

    Adjust coin settings and start mining

In addition, the miner can independently select and enable/disable algorithms. Our mining pool supports the following algorithms:

  • SHA256
  • Scrypt
  • Scrypt-Jane
  • Scrypt-N
  • Quark
  • X11
  • X13
  • NIST5
  • Keccak
  • Skein
  • Groestl

Project features

  • A blue icon of sliders
    Automatic switching of mining devices to the most profitable coins
  •  A blue icon of a gear
    Remote management of mining devices and configuration of the mining process
  • A blue icon of a light bulb
    Manual or automatic adjustment and selection of mining strategy
  • A blue icon of a square with an arrow inside
    Merged mining for several coins/protocols
  • A blue icon of a shield with a lock
    Two-factor authentication when logging in to account
  • A blue icon of a chart and a downward arrow
    Built-in arbitration module to minimize losses from the high volatility of some mined coins
  • A blue icon of a wallet
    Setting up automatic payouts in the selected currency
  • A blue icon of an eye in a frame
    Switching to rendering/machine learning as orders for these lines of activity appear
  • A blue icon of a line chart
    Built-in statistical module, as well as extended statistical packages
  • A blue icon of a thermometer
    Overheating control and device temperature monitoring
  • A blue icon of Zendesk
    Ticketing service implemented with Zendesk