Addjusted algo switch tester code
This commit is contained in:
parent
8253b1c4f3
commit
66ab9900fc
1 changed files with 24 additions and 4 deletions
|
@ -2,6 +2,16 @@
|
||||||
|
|
||||||
// Miner Tester: testing miner algo switch stability
|
// Miner Tester: testing miner algo switch stability
|
||||||
|
|
||||||
|
// sudo apt-get update -y
|
||||||
|
// sudo apt-get install -y git build-essential cmake libuv1-dev libmicrohttpd-dev libssl-dev libhwloc-dev nodejs
|
||||||
|
// git clone https://github.com/MoneroOcean/xmrig.git
|
||||||
|
// cd xmrig
|
||||||
|
// cmake .
|
||||||
|
// make -j`nproc`
|
||||||
|
// cp src/config.json .
|
||||||
|
// sed -i 's/"url": *"[^"]*",/"url": "localhost:3333",/' config.json
|
||||||
|
// sed -i 's/"user": *"[^"]*",/"user": "44qJYxdbuqSKarYnDSXB6KLbsH4yR65vpJe3ELLDii9i4ZgKpgQXZYR4AMJxBJbfbKZGWUxZU42QyZSsP4AyZZMbJBCrWr1",/' config.json
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
// *****************************************************************************
|
// *****************************************************************************
|
||||||
|
@ -14,7 +24,7 @@ const net = require('net');
|
||||||
// *** CONSTS ***
|
// *** CONSTS ***
|
||||||
// *****************************************************************************
|
// *****************************************************************************
|
||||||
|
|
||||||
const algos = [ "rx/wow", "rx/loki" ];
|
const algos = [ "rx/wow", "rx/loki", "cn/r" ];
|
||||||
|
|
||||||
// *****************************************************************************
|
// *****************************************************************************
|
||||||
// *** WORKING STATE ***
|
// *** WORKING STATE ***
|
||||||
|
@ -40,6 +50,16 @@ function err(msg) {
|
||||||
|
|
||||||
const test_blob_str = "7f7ffeeaa0db054f15eca39c843cb82c15e5c5a7743e06536cb541d4e96e90ffd31120b7703aa90000000076a6f6e34a9977c982629d8fe6c8b45024cafca109eef92198784891e0df41bc03";
|
const test_blob_str = "7f7ffeeaa0db054f15eca39c843cb82c15e5c5a7743e06536cb541d4e96e90ffd31120b7703aa90000000076a6f6e34a9977c982629d8fe6c8b45024cafca109eef92198784891e0df41bc03";
|
||||||
|
|
||||||
|
function makehex(length) {
|
||||||
|
var result = '';
|
||||||
|
var characters = 'abcdef0123456789';
|
||||||
|
var charactersLength = characters.length;
|
||||||
|
for ( var i = 0; i < length; i++ ) {
|
||||||
|
result += characters.charAt(Math.floor(Math.random() * charactersLength));
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
let miner_server = net.createServer(function (miner_socket) {
|
let miner_server = net.createServer(function (miner_socket) {
|
||||||
if (curr_miner_socket) {
|
if (curr_miner_socket) {
|
||||||
err("Miner server on localhost:3333 port is already connected (please make sure you do not have other miner running)");
|
err("Miner server on localhost:3333 port is already connected (please make sure you do not have other miner running)");
|
||||||
|
@ -68,7 +88,7 @@ let miner_server = net.createServer(function (miner_socket) {
|
||||||
if ("method" in json && json.method === "login") {
|
if ("method" in json && json.method === "login") {
|
||||||
miner_socket.write(
|
miner_socket.write(
|
||||||
'{"id":1,"jsonrpc":"2.0","error":null,"result":{"id":"benchmark","job":{"blob":"' + test_blob_str +
|
'{"id":1,"jsonrpc":"2.0","error":null,"result":{"id":"benchmark","job":{"blob":"' + test_blob_str +
|
||||||
'","algo":"cn/1","job_id":"benchmark1","target":"10000000","seed_hash":"0000000000000000000000000000000000000000000000000000000000000001","id":"benchmark"},"status":"OK"}}\n'
|
'","algo":"cn/wow","job_id":"benchmark1","target":"10000000","height":10,"seed_hash":"' + makehex(64) + '","id":"benchmark"},"status":"OK"}}\n'
|
||||||
);
|
);
|
||||||
curr_miner_socket = miner_socket;
|
curr_miner_socket = miner_socket;
|
||||||
}
|
}
|
||||||
|
@ -93,10 +113,10 @@ function change_algo() {
|
||||||
log("Switching to " + algo);
|
log("Switching to " + algo);
|
||||||
curr_miner_socket.write(
|
curr_miner_socket.write(
|
||||||
'{"jsonrpc":"2.0","method":"job","params":{"blob":"' + test_blob_str + '","algo":"' + algo +
|
'{"jsonrpc":"2.0","method":"job","params":{"blob":"' + test_blob_str + '","algo":"' + algo +
|
||||||
'","job_id":"benchmark' + ++job_num + '","height":0,"seed_hash":"0000000000000000000000000000000000000000000000000000000000000000","target":"10000000","id":"benchmark"}}\n'
|
'","job_id":"benchmark' + ++job_num + '","height":10,"seed_hash":"' + makehex(64) + '","target":"10000000","id":"benchmark"}}\n'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
const sleep = Math.floor(Math.random() * 5);
|
const sleep = Math.floor(15 + Math.random() * 10);
|
||||||
log("Waiting " + sleep + "s");
|
log("Waiting " + sleep + "s");
|
||||||
setTimeout(change_algo, sleep * 1000);
|
setTimeout(change_algo, sleep * 1000);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue