Skip to content

mainnet1.2.0

Compare
Choose a tag to compare
@ninjaahhh ninjaahhh released this 25 Sep 00:30
· 144 commits to master since this release
79ba0bb

Disclaimer

This release involves consensus changes (explained below). To avoid wasting mining power, please upgrade the cluster to this release before Friday, September 27, 2019 12:00:00 AM GMT-07:00 DST.

Updates

  • * Enables PoSW on root chain, allowing miners to mine root chain with lower difficulty if having enough stakes (QCEP-001)
  • * Updates cross-shard transaction execution model and gas accounting
  • * Adds pre-compiled contracts to support interactions with multi-native tokens inside smart contracts (QCEP-003, draft under review)
  • * Changes qkchash mining algorithm in shard 6 and 7 to further reduce the potential hardware acceleration (QCEP-002)
  • Supports websocket connections for event subscription
  • Updates getWork / submitWork flow to help miners manage root chain work and coinbase addresses
  • EVM will be enabled at aforementioned time which matches Constantinople version in Ethereum network

(Those items listed with asterisk * mean they are consensus changes, and would lead to forks if clients are not updated accordingly.)

Root Chain Staking

Root chain PoSW will be enabled after the network upgrade gets stable.

PoSW parameters for root chain:

  • Minimum stakes for 1 block allocation: 1,000,000 QKC
  • Maximum allocation: 512
  • Difficulty divider if PoSW effective: 10000
  • Stake locking period (in the contract): 3 days (detailed spec)

Notes

To change miner coinbase address:

./change_coinbase.sh 1000000000000000000000000000000000000000

For downloading snapshots:

curl https://s3-us-west-2.amazonaws.com/qkcmainnet/data/`curl https://s3-us-west-2.amazonaws.com/qkcmainnet/data/LATEST`.tar.gz --output data.tar.gz

Snapshots in China:

curl https://s3.cn-north-1.amazonaws.com.cn/qkcmainnet-cn/data/`curl https://s3.cn-north-1.amazonaws.com.cn/qkcmainnet-cn/data/LATEST`.tar.gz --output data.tar.gz

Running cluster after modifying config:

# inside the container
python3 quarkchain/cluster/cluster.py --cluster_config <config>
or
./run_cluster.py

Network ID

1

GPU mining shard ID

Instructions for Ethash GPU mining

ethminer -U http://$CLUSTER_IP:38391 --shard-id $SHARD_ID --cuda-devices $GPU_ID --farm-recheck $TIME --coinbase $COINBASE_ADDRESS
  • CLUSTER_IP defines the IP for the Quarkchain cluster. If you want to try the one button quick mining, you can use fullnode.quarkchain.io or fullnode2.quarkchain.io.
  • --shard-id defines one specify shard to mine. shard id 1, 10001, 20001, 30001, 40001, 50001 are Ethash.
  • --cuda-devices defines specify GPUs to mine.
  • --farm-recheck defines check interval in milliseconds for changed work. For example 1000.
  • --coinbase defines your mining coinbase address. Please use 20 bytes address generated the same way as an Ethereum address.
  • -U is for the CUDA GPU and -G is for the AMD GPU.
Chain Shard Hash Algo Parameter for Ethminer shard ID
0 0 Ethash 1
1 0 Ethash 10001
2 0 Ethash 20001
3 0 Ethash 30001
4 0 Ethash 40001
5 0 Ethash 50001

CPU mining shard ID

Instructions for Qkchash CPU mining

./ethminer --farm http://$CLUSTER_IP:38391 --coinbase $COINBASE_ADDRESS -t <n> --shard-id $SHARD_ID
  • CLUSTER_IP defines the IP for the Quarkchain cluster. If you want to try the one button quick mining, you can use fullnode.quarkchain.io or fullnode2.quarkchain.io.
  • --shard-id defines one specify shard to mine. shard id 60001 and 70001 are Qkchash.
  • --coinbase defines your mining coinbase address. Please use 20 bytes address generated the same way as an Ethereum address.
  • -t limits number of CPU miners to n
Chain Shard Hash Algo Parameter for Ethminer shard ID
6 0 Qkchash 60001
7 0 Qkchash 70001

Download Docker Image

docker pull quarkchaindocker/pyquarkchain:mainnet1.2.0