Bitcoin Forum
June 21, 2024, 08:51:53 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Are my solo mining settings good?  (Read 1187 times)
xion (OP)
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
November 16, 2013, 11:04:14 AM
 #1

Hi everyone,

So I decided to go solo, after having only few satoshis per day on pools, I don't want to wait 3 years for 1 btc... I'd rather try my chance to get a brand new block with 25 BTC, it's more fun I think Cheesy

So what I did so far, is that I installed bitcoin-qt on windows, and I set up bfgminer with 2 block erupter usbs without longpoll, everything seems to work fine, the best share I've got so far is 6,47K, still far from 511M I know... I have 5 more erupters coming soon, so I might have a little more chance by then. But for now I just want to know if my settings are good, will I have the 25 BTC in my wallet if I ever find a block?

Also, from what I've learned, everyone in the network just takes some transactions and start to increment the nonce, so if we have the same transactions, I would basically have no chance of finding a block faster than the many TH/s pools, as they will increment the nonce much much, very much faster... Is there a way to try random nonces? do I have to use a pool software like pushpool or something? I can set it up in ubuntu if it's necessary...

Your help would be very muck appreciated and I we could share some btc if I ever find a block Cheesy

bee7
Hero Member
*****
Offline Offline

Activity: 574
Merit: 523


View Profile
November 16, 2013, 11:24:15 AM
 #2

Hi everyone,

So I decided to go solo, after having only few satoshis per day on pools, I don't want to wait 3 years for 1 btc... I'd rather try my chance to get a brand new block with 25 BTC, it's more fun I think Cheesy

So what I did so far, is that I installed bitcoin-qt on windows, and I set up bfgminer with 2 block erupter usbs without longpoll, everything seems to work fine, the best share I've got so far is 6,47K, still far from 511M I know... I have 5 more erupters coming soon, so I might have a little more chance by then. But for now I just want to know if my settings are good, will I have the 25 BTC in my wallet if I ever find a block?

Also, from what I've learned, everyone in the network just takes some transactions and start to increment the nonce, so if we have the same transactions, I would basically have no chance of finding a block faster than the many TH/s pools, as they will increment the nonce much much, very much faster... Is there a way to try random nonces? do I have to use a pool software like pushpool or something? I can set it up in ubuntu if it's necessary...

Your help would be very muck appreciated and I we could share some btc if I ever find a block Cheesy



There is no "optimization" of nonce randomizing or guessing. The probability to find a block in some fixed period of time depends _only_ on your hash rate and current network difficulty.  You can use for example this calculator to estimate your daily earnings and the average time to find a block in solo mining: http://allchains.info/calc.html.

There is another, better calculator, that allow you to choose expected difficulty growth: http://mining.thegenesisblock.com/
xion (OP)
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
November 16, 2013, 01:40:42 PM
 #3


There is no "optimization" of nonce randomizing or guessing. The probability to find a block in some fixed period of time depends _only_ on your hash rate and current network difficulty.  You can use for example this calculator to estimate your daily earnings and the average time to find a block in solo mining: http://allchains.info/calc.html.

There is another, better calculator, that allow you to choose expected difficulty growth: http://mining.thegenesisblock.com/


Thanks for your answer, do I need a mining pool software, or this is enough for my hashing power, let's say 2,3 Gh/s?
bee7
Hero Member
*****
Offline Offline

Activity: 574
Merit: 523


View Profile
November 16, 2013, 02:40:38 PM
 #4


There is no "optimization" of nonce randomizing or guessing. The probability to find a block in some fixed period of time depends _only_ on your hash rate and current network difficulty.  You can use for example this calculator to estimate your daily earnings and the average time to find a block in solo mining: http://allchains.info/calc.html.

There is another, better calculator, that allow you to choose expected difficulty growth: http://mining.thegenesisblock.com/


Thanks for your answer, do I need a mining pool software, or this is enough for my hashing power, let's say 2,3 Gh/s?

If you go solo, then it is possible that you find a block in 1 day as well as you spend 265027.352 hours (30 years) to find a block.

So, I would recommend you to go for pooled mining.
eid
Hero Member
*****
Offline Offline

Activity: 616
Merit: 500


View Profile
November 16, 2013, 02:59:35 PM
Last edit: November 16, 2013, 03:58:22 PM by eid
 #5

Do you have the -coinbase-addr option set up with your receiving address either in your run command or your bfgminer.conf? You wont get your reward otherwise. (INCORRECT see following posts).


When I set my solo mining up, I used the testnet to make sure everything was good. Took me less than an hour to find a block and get my reward. You do this by using the -testnet=1 option when starting bitcoin-qt (remember to insert an address from this testnet wallet into your bfgminer.conf (-coinbase-addr)



I read somewhere you should put another pool address into your bfgminer.conf for longpolling. I did but I'm not entirely sure if its working.


Here's a copy of my bfgminer.conf (with private details removed) in case that's helpful:



_______________________


{
"pools" : [
   {
      "url" : "http://localhost:8332",
      "user" : "USER-NAME",
      "pass" : "PASSWORD",
      "coinbase-addr" : "1Lq5XNtzMHKvZGxYJjwSHHmTdtm3n7eBXY",
      "pool-priority" : "0"
   },
   {
      "url" : "POOL-URL",
      "user" : "USER-NAME",
      "pass" : "PASSWORD",
      "pool-priority" : "1"
   }
]
,
"temp-cutoff" : "95",
"temp-target" : "89",
"algo" : "fastauto",
"api-mcast-port" : "4028",
"api-port" : "4028",
"expiry" : "120",
"expiry-lp" : "3600",
"failover-only" : true,
"disable-gpu" : true,
"gpu-dyninterval" : "7",
"log" : "5",
"no-pool-disable" : true,
"no-show-processors" : true,
"no-show-procs" : true,
"queue" : "1",
"scan-time" : "60",
"skip-security-checks" : "0",
"submit-stale" : true,
"temp-hysteresis" : "3",
"shares" : "0",
"scan-serial" : "erupter:all",
"cpu-threads" : "0",
"kernel-path" : "/usr/share/bfgminer"
}
----------------------------------------

It was created by bfgminer from the settings and some of the options are probably redundant but you get the picture I hope.


You may find these 2 pages helpful:

https://en.bitcoin.it/wiki/Running_Bitcoin

https://github.com/luke-jr/bfgminer/blob/bfgminer/README


eid
bee7
Hero Member
*****
Offline Offline

Activity: 574
Merit: 523


View Profile
November 16, 2013, 03:14:08 PM
 #6

Do you have the -coinbase-addr option set up with your receiving address either in your run command or your bfgminer.conf? You wont get your reward otherwise.


This is not true. If you mine solo without this option you get your generated coins in one of pre-created addresses in your  wallet.
eid
Hero Member
*****
Offline Offline

Activity: 616
Merit: 500


View Profile
November 16, 2013, 03:37:50 PM
Last edit: November 16, 2013, 03:55:30 PM by eid
 #7

Do you have the -coinbase-addr option set up with your receiving address either in your run command or your bfgminer.conf? You wont get your reward otherwise.


This is not true. If you mine solo without this option you get your generated coins in one of pre-created addresses in your  wallet.


Interesting. It definitely says so on the bfgminer GitHub page: "you need to specify ........... the --coinbase-addr
option to specify the Bitcoin address you wish to receive the block rewards...

Maybe it only matters if you're using a third party wallet?




eid
bee7
Hero Member
*****
Offline Offline

Activity: 574
Merit: 523


View Profile
November 16, 2013, 03:52:06 PM
 #8

Do you have the -coinbase-addr option set up with your receiving address either in your run command or your bfgminer.conf? You wont get your reward otherwise.


This is not true. If you mine solo without this option you get your generated coins in one of pre-created addresses in your  wallet.


Interesting. It definitely says so on the bfgminer GitHub page: "you need to specify ........... the --coinbase-addr
option to specify the Bitcoin address you wish to receive the block rewards...

Maybe it only matters if you're using a third party wallet?


eid
I did not check the source of bfgminer in respect of getblocktemplate protocol when the address is not specified. Originally, the miner sw used submitwork request so client build the block.

This makes sense when you wish your block rewards to be credited to a specific address. For example, you have two locations with miners but you prefer to collect all rewards to the same address.
eid
Hero Member
*****
Offline Offline

Activity: 616
Merit: 500


View Profile
November 16, 2013, 03:56:59 PM
 #9

I just tested it for myself and you are right, so thanks for the correction. I shall edit my post to reflect this.



eid
whitemage
Full Member
***
Offline Offline

Activity: 214
Merit: 100


View Profile
November 16, 2013, 04:07:18 PM
 #10

Hi everyone,

So I decided to go solo, after having only few satoshis per day on pools, I don't want to wait 3 years for 1 btc... I'd rather try my chance to get a brand new block with 25 BTC, it's more fun I think Cheesy

So what I did so far, is that I installed bitcoin-qt on windows, and I set up bfgminer with 2 block erupter usbs without longpoll, everything seems to work fine, the best share I've got so far is 6,47K, still far from 511M I know... I have 5 more erupters coming soon, so I might have a little more chance by then. But for now I just want to know if my settings are good, will I have the 25 BTC in my wallet if I ever find a block?

Also, from what I've learned, everyone in the network just takes some transactions and start to increment the nonce, so if we have the same transactions, I would basically have no chance of finding a block faster than the many TH/s pools, as they will increment the nonce much much, very much faster... Is there a way to try random nonces? do I have to use a pool software like pushpool or something? I can set it up in ubuntu if it's necessary...

Your help would be very muck appreciated and I we could share some btc if I ever find a block Cheesy



Good luck on that, it would take many years until you get one block...

xion (OP)
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
November 16, 2013, 06:55:23 PM
 #11

Quote
"temp-cutoff" : "95",
"temp-target" : "89",
"algo" : "fastauto",
"api-mcast-port" : "4028",
"api-port" : "4028",
"expiry" : "120",
"expiry-lp" : "3600",
"failover-only" : true,
"disable-gpu" : true,
"gpu-dyninterval" : "7",
"log" : "5",
"no-pool-disable" : true,
"no-show-processors" : true,
"no-show-procs" : true,
"queue" : "1",
"scan-time" : "60",
"skip-security-checks" : "0",
"submit-stale" : true,
"temp-hysteresis" : "3",
"shares" : "0",
"scan-serial" : "erupter:all",
"cpu-threads" : "0",
"kernel-path" : "/usr/share/bfgminer"

Do I have to set all these settings to solo mine "better" ?
bee7
Hero Member
*****
Offline Offline

Activity: 574
Merit: 523


View Profile
November 16, 2013, 07:57:12 PM
 #12

just studied cgminer sources due to the similar discussion in the another thread (Russian one, so useless for you).
The finding is not optimistic: the solo mining with only cgminer (version 3.6.6) and bitcoind involved would make your mining spending hash power for 30 seconds (at average) of each 7.35 minutes (present average time between blocks) for chewing on already solved block.

Proof:

Code:
static void gen_gbt_work(struct pool *pool, struct work *work)
{
unsigned char *merkleroot;
struct timeval now;

cgtime(&now);
if (now.tv_sec - pool->tv_lastwork.tv_sec > 60)
update_gbt(pool);

Code:
static bool work_decode(struct pool *pool, struct work *work, json_t *val)
{
json_t *res_val = json_object_get(val, "result");
bool ret = false;

cgtime(&pool->tv_lastwork);
if (!res_val || json_is_null(res_val)) {
applog(LOG_ERR, "JSON Failed to decode result");
goto out;
}

The pool->tv_lastwork is updated only inside work_decode function. When you use pooled mining then the issue is solved by long poll option or stratum protocol if pool server supports either.
bee7
Hero Member
*****
Offline Offline

Activity: 574
Merit: 523


View Profile
November 16, 2013, 08:02:01 PM
 #13

Quote
"temp-cutoff" : "95",
"temp-target" : "89",
"algo" : "fastauto",
"api-mcast-port" : "4028",
"api-port" : "4028",
"expiry" : "120",
"expiry-lp" : "3600",
"failover-only" : true,
"disable-gpu" : true,
"gpu-dyninterval" : "7",
"log" : "5",
"no-pool-disable" : true,
"no-show-processors" : true,
"no-show-procs" : true,
"queue" : "1",
"scan-time" : "60",
"skip-security-checks" : "0",
"submit-stale" : true,
"temp-hysteresis" : "3",
"shares" : "0",
"scan-serial" : "erupter:all",
"cpu-threads" : "0",
"kernel-path" : "/usr/share/bfgminer"

Do I have to set all these settings to solo mine "better" ?


Provided you have 2,3GHs and taking to account my previous post no optimizations of these settings would make any sense.
xion (OP)
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
November 16, 2013, 10:45:47 PM
 #14

bee7 I'm using bfg miner without longpoll, do you think is has the same issue? and what can I do to make things right?
bee7
Hero Member
*****
Offline Offline

Activity: 574
Merit: 523


View Profile
November 16, 2013, 10:59:44 PM
 #15

bee7 I'm using bfg miner without longpoll, do you think is has the same issue? and what can I do to make things right?

Be honest, I am a bit tired and is going to sleep now. I will take a look if bfgminer has the same issue tomorrow.

The proper solution IMHO for this to be fixed is to implement a way to notify cgminer of a new block on the network by means of rpc call and/or unix signal on unix-like os or named-event on windows.

The original bitcoin client has a switch that allows to start an external program each time coin daemon discovers a new block on the network. Pool's software uses this feature to get signaled thus making long pool option and stratum protocol feasible. This way the cgminer could also be triggered to request a new work from the coin daemon instead of generating a new work from a cached response.
xion (OP)
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
November 16, 2013, 11:18:49 PM
 #16

Ok, I understand, thanks for your answers Smiley
specgamer
Sr. Member
****
Offline Offline

Activity: 252
Merit: 250

I love bitcoins.


View Profile
November 16, 2013, 11:18:59 PM
 #17

Let me get this straight, you are solo mining with 660 MH/s with 3 BEs?  Dude, you've got serious balls, it's going to take you many, many years before you see the light of day again lol

█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
▓▓▓▓▓  BIT-X.comvvvvvvvvvvvvvvi
→ CREATE ACCOUNT 
▓▓▓▓▓
█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
bee7
Hero Member
*****
Offline Offline

Activity: 574
Merit: 523


View Profile
November 17, 2013, 12:31:46 AM
 #18

Ok, I understand, thanks for your answers Smiley

Ok, did not get asleep, so looked in. It seems that '--scantime' and '--expiry' logic is not broken in bfgminer, so you could decrease expiry time to, say, 15 seconds so, you get 7.5 avg of searching on already solved block. But still, the 'pull' strategy is worse in this respect than 'push' strategy
xion (OP)
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile
November 17, 2013, 12:48:38 AM
 #19

Ok, so expiry 15 secondes and scantime I keep it to 60 or I will have to change it too?
bee7
Hero Member
*****
Offline Offline

Activity: 574
Merit: 523


View Profile
November 17, 2013, 12:53:50 AM
 #20

Ok, so expiry 15 secondes and scantime I keep it to 60 or I will have to change it too?

Try to change expiry only and look into bitcond's debug log how often it checks for the new work. The work expiry logic by Luke is quite complicated so I don't wont to get clear understanding Smiley
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!