Bible Pay

Read 1141 times

  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
BIBLEPAY - RANDOMX INTEGRATION
« on: February 07, 2020, 10:28:39 AM »
RandomX Integration


Welcome to the Biblepay-RandomX Integration Testing thread.

In this thread we will be testing:
Dash 0.14.0.5 changes (these occurred between Nov 2019 and Jan 2020).  These include: https://github.com/biblepay/biblepay-evolution/commit/34851a046392e169fcfa90a0bbcd7a01e1096090 which are ddos and chainlocks enhancements.
Test BiblePay Core RandomX hashes, RandomX solo mining, RX multithread solo mining.
Test xmrig->bbpcore mining against bbpcore using RX.
Test xmrig dual-hash mining.
Test bbp->nomp pool mining.
Stress test biblepay; verify RAM utilization and reliability in running for days.
Test BBP against sancs; regression test sanctuary abilities.
Verify how many BBP memory footprints can fit on a VM.




Starting Version:    1.5.0.2+


(Please ensure your version is greater than this, otherwise your testnet branch will not sync.  We are at block  ____28050_____________ as of February 9th, 2020).
BlockHash 28189:
c6fd*****


Testnet Download Links:


Ready:
     Windows 64-bit:      https://biblepay.org/biblepayevo64develop.exe
     Linux PC 64bits Daemon:     https://biblepay.org/biblepayd-evo-testnet-x86_64-pc-linux-gnu.tar.gz
     Linux 64 bits QT:       https://biblepay.org/biblepay-qt-evo-testnet-x86_64-pc-linux-gnu.tar.gz
     MacOS QT: https://biblepay.org/biblepaycore-evo-testnet.dmg

     Linux 64 bits II (QT/biblepayd/biblepay-cli) zip:  https://biblepay.org/bbp-lin-develop-64.zip

Not ready:
(Unknown state, probably wont run due to memory constraints in the future)
       Linux ARM64 daemon: https://biblepay.org/biblepayd-evo-testnet-aarch64-linux-gnu.tar.gz


To self compile:
https://github.com/biblepay/biblepay-evolution/blob/develop/BuildBiblePay.txt
** Note above:  The instructions have changed, see the changes for randomx.  **

The ETA for MainNet for RandomX  is   April 30th, 2020.




CONFIGURING FOR TESTNET:


Create a biblepaytest.conf file with the following contents:
testnet=1
debug=1

Place the file in ~/.biblepayevolution



Start testnet by typing:
./biblepay-qt -conf=biblepaytest.conf

(Note the blocks and chainstate will sync into the ./biblepayevolution/testnet3 folder.


NOTE: This version will also work side-by-side our production nodes,
so, you also have the option if you are short on machines, to run TestNet side by side a prod node!

To run a TestNet Sanctuary:
https://forum.biblepay.org/index.php?topic=391.msg5968#msg5968

How to create a deterministic sanc from scratch:
https://docs.dash.org/en/stable/masternodes/dip3-upgrade.html

__________________________________________________________________________________________________________________________________________________________________________________________


POOLS for TESTNET (RandomX):

http://rxtest.biblepay.org


Instructions to pool mine:

Launch xmrig.exe or xmrig with these args:

xmrig-bbp-win64.exe -o rxtest.biblepay.org:3008 -u your_biblepay_testnet_address -p your_monero_prod_address --threads nproc_count

Where your bbp receive address for testnet receives Biblepay rewards, and your monero prod address receives prod rewards.


___________________________________________________________________________________________________________________________________________________________________________________________
XMRIG - The dual-hash miner for Biblepay + XMR:

To download Xmrig - binaries are here:

linux-64-bit :  https://github.com/biblepay/xmrig/raw/master/binaries/xmrig-bbp-linux64
windows-64-bit:  https://github.com/biblepay/xmrig/raw/master/binaries/bbprig.zip
(Extract the zip file to a folder on your machine, such as c:\mining\).  Run the miner from a batch file in that subdirectory (this allows the miner to use the dependencies).

To build your own xmrig:
https://github.com/biblepay/xmrig

How to mine:
xmrig-bbp-win64.exe -o rxtest.biblepay.org:3008 -u your_biblepay_testnet_address -p your_monero_prod_address --threads nproc_count
Where your bbp receive address for testnet receives Biblepay rewards, and your monero prod address receives prod rewards.

___________________________________________________________________________________________________________________________________________________________________________________________

How to get a monero production wallet, without running the full monero client (How to get an XMR address to mine to):
Since it is not allowed to mine to SX, we need to go with the next best option.
I'm sure other SPV wallets exist, but I'm currently using this one:

https://mymonero.com/

Just install it, then create a wallet.  Then use that address for your mining reward address.
NOTE:  The XMR side of the pool has a complicated payment strategy that we will explain asap.    For now know that XMR is held until the balance gets to 1xmr, but we will explain how to lower the threshhold etc.

The BiblePay payment side works the same as usual:  After the mined block matures in the pool, all the BBP is dispersed automatically.
____________________________________________________________________________________________________________________________________________________________________________________________


What is so special about XMR+BBP dual-hash mining?  What entices me as an XMR miner to mine BiblePay+XMR?


  • You get double the hashrate.  If you mined at 5,000 HPS with XMR, you will mine at 10,000 HPS with BBP+XMR.  This translates into a potential profit of almost double (minus the 10% we give to orphan-charity).
  • If you generate 1 XMR per month with XMR mining alone, you stand to generate .90 XMR + 80,000 BBP for the same amount of work (the amount of BBP is speculative, based on current rates).

How does this work, why am I earning double what I earn in XMR alone?

The way it works is when you mine XMR alone, the solution can only go to one pool because you are solving a blockheader based on the current height and time and nonce for Monero.
However, BiblePay, with RX integrated can also be solved *at the same time*.  How?  Every randomx hash is checked against our current height and difficulty, giving you one chance to win a biblepay block for every XMR hash.


Why is biblepay interested in integrating wtih XMR?

We are interested because we want more miners, because miners give us more PR.  And we want to help more orphans.  Theoretically, the more XMR miners that dual-hash-mine, the more of our 10% tithe goes to orphan-charity.  That is a win-win for us, XMR, and the orphans!

How are the payments allocated for the work I spend mining?

For every 100,000 hashes, 90,000 go toward your personal account and 10,000 toward our orphan-charity XMR address (IE we tithe 10% to orphan charity, dispersed in XMR liquidations to our charity partners).  Out of the 90,000 that go toward your personal account, every single hash has an equal chance at winning a BBP block.  On the biblepay side, we pay out 100% of the earnings to your personal BBP address (we keep no overhead, unless a pool charges a small bit of overhead, TBD).   On the orphan-charity side that we spend from our collected revenue for our foundation, our liquidated XMR is guaranteed to go 100% to our voted charity (with no overhead kept by us).  We only partner with charities who are 75%+ efficient, such as compassion.com, Cameroon-one, Kairos, etc (therefore the maximum passes through to the children in need.  You can also see our orphan collage at https://accountability.biblepay.org).

__________________________________________________________________________________________________________________________________________________________________________________________________

Hashrate comparison chart, supplied by earlzmoade, showing a 200% increase in hashrates between xmrig plain vanilla and xmrig dual mode:

https://wiki.biblepay.org/RandomX_Hashing_Speed_Comparison









« Last Edit: February 25, 2020, 11:18:35 AM by Rob Andrews »


  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #1 on: February 08, 2020, 03:14:49 PM »
Exciting times!  We look forward to an influx of thousands of randomx miners into biblepay to help donate to orphan charity!

Let's get started by simply testing the core wallet first.


For now, please restart the node with -erasechain=1 as transitioning to the first randomx block will tell you 'block index needs rebuilt, rebuild now?'  If you do not start with an empty chain, you can do that rebuild also.  Please see the op post for the blockhash and the block number.

Once we confirm this, then let's try solo mining.

Note that solo mining from the BBPcore wallet is 40 times slower than xmrig mining.  This is because the rx-core small-footprint algo is designed to conserve ram and is designed for syncing, and for efficient use of resources on sancs (this lets sancs run multiple copies and exchanges run bbp without kicking us off the exchange).

Each biblepaycore solo mining thread uses up 256meg of ram (due to the randomx virtual machine).  BE Very Careful about how you start the miner!  As you can crash biblepay if you attempt to use all your machine's ram at once.  For example, first test it with 'setgenerate true 1'.  Then increase to 3.  Slowly increase to see how much ram you can tolerate losing on your machine. 

Know that it will never be profitable to solo mine using the built in miner - because it is tuned for syncing and core efficiency.  The purpose for the solo miner is to allow us to debug when all nodes have failed (IE testnet) and ensure randomx is working.  In prod, most likely everyone will be running xmrig. 

The randomx-nomp pool is almost ready.  But please dont try it yet.

We will need to revive our sancs.  Technically since the chain in testnet is still intact this should just mean 'exec revivesanc sancname'.

Good luck everyone!

Let's hope this project breathes new life into Biblepay and puts us in the top 50!

« Last Edit: February 11, 2020, 07:29:34 PM by Rob Andrews »


  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #2 on: February 08, 2020, 06:48:25 PM »
Ok, now 3 versions are ready:

Windows 64

Linux 64 bit biblepayd

Linux 64 bit QT



  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #3 on: February 08, 2020, 06:58:10 PM »
I just did a rough calculation, and it may be possible that just 8 new randomx miners would be able to support 1 Venezuelan orphan.

($25 of mining revenue per month = $2.50 towards orphan-charity, roughly) and at our potential wholesale rate, that means just 8 miners could sponsor one orphan.

I look forward to this test scenario.  We really can make a huge impact in the world if the goal is reached.



  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #4 on: February 08, 2020, 08:49:34 PM »
See OP post - XMRig has been released for windows and linux.



  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #5 on: February 09, 2020, 08:50:36 AM »
** Pause Testing **

Ok, I was able to mine up until the superblock, but since we have no sancs, this exploited a problem.

In creating a solution I have discovered a bug that needs fixed; so please halt testing until the next mandatory upgrade.




  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #6 on: February 10, 2020, 10:44:57 PM »
BiblePay - Mandatory Upgrade for TestNet
1.5.0.2f

- Make randomx compatible with GSC superblocks



* See OP Post for updated blockhash.
« Last Edit: February 11, 2020, 10:14:11 AM by Rob Andrews »


  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #7 on: February 11, 2020, 10:16:17 AM »
BiblePay - Mandatory Upgrade for TestNet
1.5.0.2f

- Make randomx compatible with GSC superblocks



* See OP Post for updated blockhash.

Ok everyone, it looks like testing is ready now.

- Windows, linux and mac binaries are released now.

- Remember to start with a clean chain, just pass -erasechain=1 when you start (this should get you over the hump at the randomx_cutover_height).

- The xmrig miner is ready, go ahead and download it and try it.

- The randomx nomp pool is up:    rxtest.biblepay.org
(I realize I have some hps ratios and labels to update still, but it appears to be functioning in a primitive form now).



  • earlzmoade
  • Newbie

    • 29


    • 6
    • August 02, 2018, 03:22:01 AM
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #8 on: February 11, 2020, 11:47:27 AM »
This for sure is a nice step for   biblepay i think.

I will try testnet on one of my ryzen 1600s machine.


  • earlzmoade
  • Newbie

    • 29


    • 6
    • August 02, 2018, 03:22:01 AM
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #9 on: February 12, 2020, 01:42:57 PM »
So i tried to run xmrig-bbp miner but i just get this message  " The code execution cannot proceed because VCRUNTIME140_1.dll was not found"


  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #10 on: February 12, 2020, 04:13:47 PM »
So i tried to run xmrig-bbp miner but i just get this message  " The code execution cannot proceed because VCRUNTIME140_1.dll was not found"

Hi, please tell us your bitness and OS, and please paste the command line you used so I can reproduce?  (Please be sure to paste the exact command line so I can trace the filename also).

Thanks.


  • sunk818
  • Sr. Member

    • 355


    • 14
    • April 24, 2018, 02:02:20 PM
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #11 on: February 12, 2020, 10:34:21 PM »
Hi, please tell us your bitness and OS, and please paste the command line you used so I can reproduce?  (Please be sure to paste the exact command line so I can trace the filename also).

Thanks.


I have same error:
https://github.com/biblepay/xmrig/blob/master/binaries/xmrig-bbp-win64.exe
Using Windows 10 64-bit


  • oncoapop
  • Full Member

    • 133


    • 13
    • October 23, 2018, 12:31:17 PM
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #12 on: February 13, 2020, 01:46:20 AM »
Results from compiling the Linux ubuntu 18.04 version from source,

Platform: Linux 4.15.0-76-generic #86-Ubuntu SMP Fri Jan 17 17:24:28 UTC 2020 x86_64 x86_64 x86_64 GNU
Hardware: 6 x vCPU x Intel(R) Xeon(R) CPU E5-2650L v3 @ 1.80GHz with 16 Gb RAM (VPS)

Repo:
git clone http://github.com/biblepay/biblepay-evolution

Code: [Select]
# RandomX Part
>cd biblepay-evolution/src/crypto/RandomX

>biblepay-evolution/src/crypto/RandomX: No such file or directory
The directory also does not appear in the source repo

https://github.com/biblepay/biblepay-evolution/tree/master/src/crypto

Finally compilation halts with the following message:
Code: [Select]
In file included from bls/bls.cpp:5:0:
bls/bls.h:14:10: fatal error: chiabls/bls.hpp: No such file or directory
 #include <chiabls/bls.hpp>
          ^~~~~~~~~~~~~~~~~
compilation terminated.
Makefile:9971: recipe for target 'bls/libbiblepayconsensus_la-bls.lo' failed
make[2]: *** [bls/libbiblepayconsensus_la-bls.lo] Error 1
make[2]: Leaving directory '/home/xmrbbp/biblepay-evolution/src'
Makefile:11657: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/xmrbbp/biblepay-evolution/src'
Makefile:686: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

Advice would be greatly appreciated!

Thanks.


  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #13 on: February 13, 2020, 08:33:22 AM »
Results from compiling the Linux ubuntu 18.04 version from source,

Platform: Linux 4.15.0-76-generic #86-Ubuntu SMP Fri Jan 17 17:24:28 UTC 2020 x86_64 x86_64 x86_64 GNU
Hardware: 6 x vCPU x Intel(R) Xeon(R) CPU E5-2650L v3 @ 1.80GHz with 16 Gb RAM (VPS)

Repo:
git clone http://github.com/biblepay/biblepay-evolution

Code: [Select]
# RandomX Part
>cd biblepay-evolution/src/crypto/RandomX

>biblepay-evolution/src/crypto/RandomX: No such file or directory
The directory also does not appear in the source repo

https://github.com/biblepay/biblepay-evolution/tree/master/src/crypto

Finally compilation halts with the following message:
Code: [Select]
In file included from bls/bls.cpp:5:0:
bls/bls.h:14:10: fatal error: chiabls/bls.hpp: No such file or directory
 #include <chiabls/bls.hpp>
          ^~~~~~~~~~~~~~~~~
compilation terminated.
Makefile:9971: recipe for target 'bls/libbiblepayconsensus_la-bls.lo' failed
make[2]: *** [bls/libbiblepayconsensus_la-bls.lo] Error 1
make[2]: Leaving directory '/home/xmrbbp/biblepay-evolution/src'
Makefile:11657: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/xmrbbp/biblepay-evolution/src'
Makefile:686: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

Advice would be greatly appreciated!

Thanks.
So there are a few issues here:
1) When you git clone you must clone the develop branch (not only to get the right branch, but also to get the randomx part):
for example:
cd /
mkdir biblepay-develop
cd biblepay-develop
git clone http://github.com/biblepay/biblepay-evolution
git pull origin develop

(You can also git clone develop initially, if you want, but I think you get the idea) - the pull origin develop will pull the develop branch into the evolution folder that you cloned.
Then when you build you will of course see the RandomX part.

The 2nd problem is it appears your depends directory was not compiled, (ie resulting in the chiabls error) -- please see this compile doc:
https://github.com/biblepay/biblepay-evolution/blob/develop/BuildBiblePay.txt

Notice the part about setting the environment variables, then cd to depends then make depends then cd back to making biblepay.

ChiaBLS is part of the depends build.






  • Rob Andrews
  • Administrator

    • 2359


    • 31
    • June 05, 2017, 08:09:04 PM
    • Patmos, Island Of
    more
Re: BIBLEPAY - RANDOMX INTEGRATION
« Reply #14 on: February 13, 2020, 10:12:35 AM »
So i tried to run xmrig-bbp miner but i just get this message  " The code execution cannot proceed because VCRUNTIME140_1.dll was not found"
I have same error:
https://github.com/biblepay/xmrig/blob/master/binaries/xmrig-bbp-win64.exe
Using Windows 10 64-bit


Ok, so I did reproduce this on our other windows box that does not contain a development environment, and received the same error.  So the root cause of this is the c++ compile must be compiled with more switches allowing us to statically link the dependencies in (for the windows builds).

So I have updated the OP post with a new download URL:  A zip file instead.  This allows us to pack in the other dependencies also.

Please try again with the zip file version.