adjustments for cpuminer

This commit is contained in:
Ben Wilson 2023-08-05 10:52:14 -04:00
parent b2f5cb5806
commit 7dbe64300a
2 changed files with 19 additions and 8 deletions

View File

@ -36,6 +36,7 @@ export class StratumV1Client {
private clientAuthorization: AuthorizationMessage;
private clientSuggestedDifficulty: SuggestDifficulty;
private stratumSubscription: Subscription;
private backgroundWork: NodeJS.Timer;
private statistics: StratumV1ClientStatistics;
private stratumInitialized = false;
@ -82,6 +83,7 @@ export class StratumV1Client {
public destroy() {
this.stratumSubscription.unsubscribe();
clearInterval(this.backgroundWork);
}
private getRandomHexString() {
@ -275,6 +277,12 @@ export class StratumV1Client {
this.stratumInitialized = true;
switch (this.clientSubscription.userAgent) {
case 'cpuminer': {
this.sessionDifficulty = 0.1;
}
}
if (this.clientSuggestedDifficulty == null) {
console.log(`Setting difficulty to ${this.sessionDifficulty}`)
@ -297,14 +305,18 @@ export class StratumV1Client {
).subscribe(async (jobTemplate) => {
try {
await this.sendNewMiningJob(jobTemplate);
await this.checkDifficulty();
await this.watchdog();
} catch (e) {
this.promiseSocket.socket.emit('end', true);
console.error(e);
}
});
this.backgroundWork = setInterval(async () => {
await this.checkDifficulty();
await this.watchdog();
}, 60 * 1000);
}
}
@ -454,7 +466,7 @@ export class StratumV1Client {
return false;
}
await this.checkDifficulty();
//await this.checkDifficulty();
return true;
}

View File

@ -52,13 +52,13 @@ export class StratumV1ClientStatistics {
public getSuggestedDifficulty(clientDifficulty: number) {
// miner hasn't submitted shares in one minute
if (this.submissionCache.length == 0 && (new Date().getTime() - this.submissionCacheStart.getTime()) / 1000 > 60) {
if (this.submissionCache.length == 0 || (new Date().getTime() - this.submissionCacheStart.getTime()) / 1000 > 60) {
return this.nearestPowerOfTwo(clientDifficulty >> 1);
}
if (this.submissionCache.length < CACHE_SIZE) {
return null;
}
// if (this.submissionCache.length < CACHE_SIZE) {
// return null;
// }
const sum = this.submissionCache.reduce((pre, cur) => {
pre += cur.difficulty;
@ -75,7 +75,6 @@ export class StratumV1ClientStatistics {
}
return null;
}
private nearestPowerOfTwo(val): number {