|
|
@ -1,6 +1,7 @@ |
|
|
|
/*
|
|
|
|
/*
|
|
|
|
* Copyright 2010 Jeff Garzik |
|
|
|
* Copyright 2010 Jeff Garzik |
|
|
|
* Copyright 2012-2014 pooler |
|
|
|
* Copyright 2012-2014 pooler |
|
|
|
|
|
|
|
* Copyright 2014-2015 tpruvot |
|
|
|
* |
|
|
|
* |
|
|
|
* This program is free software; you can redistribute it and/or modify it |
|
|
|
* This program is free software; you can redistribute it and/or modify it |
|
|
|
* under the terms of the GNU General Public License as published by the Free |
|
|
|
* under the terms of the GNU General Public License as published by the Free |
|
|
@ -59,6 +60,7 @@ int cuda_num_devices(); |
|
|
|
void cuda_devicenames(); |
|
|
|
void cuda_devicenames(); |
|
|
|
void cuda_devicereset(); |
|
|
|
void cuda_devicereset(); |
|
|
|
int cuda_finddevice(char *name); |
|
|
|
int cuda_finddevice(char *name); |
|
|
|
|
|
|
|
void cuda_print_devices(); |
|
|
|
|
|
|
|
|
|
|
|
#include "nvml.h" |
|
|
|
#include "nvml.h" |
|
|
|
#ifdef USE_WRAPNVML |
|
|
|
#ifdef USE_WRAPNVML |
|
|
@ -283,6 +285,7 @@ Options:\n\ |
|
|
|
-T, --timeout=N network timeout, in seconds (default: 270)\n\ |
|
|
|
-T, --timeout=N network timeout, in seconds (default: 270)\n\ |
|
|
|
-s, --scantime=N upper bound on time spent scanning current work when\n\ |
|
|
|
-s, --scantime=N upper bound on time spent scanning current work when\n\ |
|
|
|
long polling is unavailable, in seconds (default: 10)\n\ |
|
|
|
long polling is unavailable, in seconds (default: 10)\n\ |
|
|
|
|
|
|
|
-n, --ndevs list cuda devices\n\ |
|
|
|
-N, --statsavg number of samples used to display hashrate (default: 30)\n\ |
|
|
|
-N, --statsavg number of samples used to display hashrate (default: 30)\n\ |
|
|
|
--no-gbt disable getblocktemplate support (height check in solo)\n\ |
|
|
|
--no-gbt disable getblocktemplate support (height check in solo)\n\ |
|
|
|
--no-longpoll disable X-Long-Polling support\n\ |
|
|
|
--no-longpoll disable X-Long-Polling support\n\ |
|
|
@ -320,7 +323,7 @@ static char const short_options[] = |
|
|
|
#ifdef HAVE_SYSLOG_H |
|
|
|
#ifdef HAVE_SYSLOG_H |
|
|
|
"S" |
|
|
|
"S" |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
"a:c:i:Dhp:Px:qr:R:s:t:T:o:u:O:Vd:f:mv:N:b:"; |
|
|
|
"a:c:i:Dhp:Px:mnqr:R:s:t:T:o:u:O:Vd:f:v:N:b:"; |
|
|
|
|
|
|
|
|
|
|
|
static struct option const options[] = { |
|
|
|
static struct option const options[] = { |
|
|
|
{ "algo", 1, NULL, 'a' }, |
|
|
|
{ "algo", 1, NULL, 'a' }, |
|
|
@ -338,6 +341,7 @@ static struct option const options[] = { |
|
|
|
{ "debug", 0, NULL, 'D' }, |
|
|
|
{ "debug", 0, NULL, 'D' }, |
|
|
|
{ "help", 0, NULL, 'h' }, |
|
|
|
{ "help", 0, NULL, 'h' }, |
|
|
|
{ "intensity", 1, NULL, 'i' }, |
|
|
|
{ "intensity", 1, NULL, 'i' }, |
|
|
|
|
|
|
|
{ "ndevs", 0, NULL, 'n' }, |
|
|
|
{ "no-color", 0, NULL, 1002 }, |
|
|
|
{ "no-color", 0, NULL, 1002 }, |
|
|
|
{ "no-gbt", 0, NULL, 1011 }, |
|
|
|
{ "no-gbt", 0, NULL, 1011 }, |
|
|
|
{ "no-longpoll", 0, NULL, 1003 }, |
|
|
|
{ "no-longpoll", 0, NULL, 1003 }, |
|
|
@ -2028,6 +2032,10 @@ void parse_arg(int key, char *arg) |
|
|
|
opt_statsavg = INT_MAX; |
|
|
|
opt_statsavg = INT_MAX; |
|
|
|
opt_statsavg = v; |
|
|
|
opt_statsavg = v; |
|
|
|
break; |
|
|
|
break; |
|
|
|
|
|
|
|
case 'n': /* --ndevs */ |
|
|
|
|
|
|
|
cuda_print_devices(); |
|
|
|
|
|
|
|
proper_exit(0); |
|
|
|
|
|
|
|
break; |
|
|
|
case 'q': |
|
|
|
case 'q': |
|
|
|
opt_quiet = true; |
|
|
|
opt_quiet = true; |
|
|
|
break; |
|
|
|
break; |
|
|
|