Git Product home page Git Product logo

scaletest's Introduction

KMD Scaling Test

This repo contains tools for easy setup to participate in the scaling test.

Please sign up here: Signup Sheet for Scaling Test

Install Steps

These steps are for installing on an empty server/vps. If you are using a testnet notary don't build komodo, just make sure you are on beta branch. The scripts will be compaitable with komodo in ~/komodo. There is also a docker folder, from PatchKez that will generate all these assetchains into docker containers. If you want to do it this way wait for more information, I haven't tested these yet.

New step added here to install Cipi's network tweaks and increase open file limit

sudo apt-get install git
git clone https://github.com/blackjok3rtt/scaletest.git
cd scaletest
./applytweaks.sh
sudo reboot
./buildkomodo.sh

When this is complete please refer to the section below for the role you are filling.

FOR ALL NODES

You will need to create a pubkey.txt file and place it in the scaletest directory in the format.

pubkey=<yourpubkey>

To get a pubkey run validateaddress on an Raddress you have the private key for. (see txtest-cli) section below for an example of how to get a new address if you don't already have one you want to use.

Next you will perform the initial sync and run importprivkey on all the test assetchains (see assets-cli) before continuing.

./sync_assets
./assets-cli importprivkey <your private key>

After importing the private key, you will need to restart your chains.

You will need funds sent to the address from the seed node operator to the R address of pubkey.txt in this folder.

Make sure your Raddress is posted in the Signups Page so the operator can send funds.

For Transaction Blasters

For Large Powerful Systems

To blast transactions, this script will send 100 loops of 5 transactions on each chain. 50,000 Transactions each with 100 outputs. 5M payments per call.

./sync_assets
sh blastloop.sh

For Smaller Systems 1-4 Core VPS

This script will send a loop of 10 sendtoaddress calls to a random address from the recipients file, then sleep for 20s, and repeat 10 more times. To send a total of 1000 TX. If the CPU is not being maxed out you can decrease sleep time. You might have to fine tune for your particualr system.

./sync_assets
sh slowloop.sh

For CPU Miners

./mineassets

For Regular Nodes (Stats, Mining Pool etc)

./sync_assets

assets-cli

This file lets you interact with all the chains.

Examples:

./assets-cli importprivkey

./assets-cli stop

TXTEST-cli

Interacts with just the first of the test chains only.

Examples:

./TXTEST-cli getnewaddress
./TXTEST-cli validateaddress
./TXTEST-cli dumpprivkey

Generating Chains

FOR THE FIRST ROUND OF TESTS THESE ARE NOT REQUIRED OF TESTERS

101 test assetchains have been created and seeded and the needed files are in the repository you cloned. Do not run these scripts or you might overwrite files needed in the first round of testing.

The genac script creates the initial parameters new test chains.

Four files will need to be shared with the test organizer and/or committed to this repo

./genacs <numchains> <chainname> <supply>
File Description
acufwenable UFW enable rules for generated ACs
acufwdisable Disable UFW rules for these ACs
coinlist Generated list of ACs needed for other scripts to run
seedip Your node IP address to be used as seed for other test nodes

Mining Pool Setup - ZNOMP

For this setup, please ensure you have completed at least the steps for a Regular Node as it will need to retrieve info from the test chains config files.

cd ~/scaletest/znomp/
nano generate

Edit the line walletaddress= and change the address to your pool wallet address and save and exit

./generate

Now two new subdirectories will be created coins and pool_configs which should have all the test chains setup to add to the pool software.

Stratum ports are set to start at 20777 and increment by 1 for each additional test chain.

scaletest's People

Contributors

webworker01 avatar patchkez avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.