Bitcoin Forum
April 25, 2024, 05:49:07 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 »
  Print  
Author Topic: New stratum/getwork proxy with Web-based GUI and pools management  (Read 120835 times)
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
August 25, 2014, 09:09:18 PM
 #181

In the package you have downloaded (the ZIP file), there are 2 sample configuration files:
stratum-proxy-full-sample.conf
stratum-proxy-minimal-sample.conf

You can modify one of them with your pool configuration and leave all the default option for a basic use.

Then, you can run the proxy with the following line:
java -jar /path/to/stratum-proxy.jar -f /path/to/modified/configuration/file.conf



Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
1714024147
Hero Member
*
Offline Offline

Posts: 1714024147

View Profile Personal Message (Offline)

Ignore
1714024147
Reply with quote  #2

1714024147
Report to moderator
1714024147
Hero Member
*
Offline Offline

Posts: 1714024147

View Profile Personal Message (Offline)

Ignore
1714024147
Reply with quote  #2

1714024147
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
tmpwhore
Full Member
***
Offline Offline

Activity: 343
Merit: 100


View Profile
August 26, 2014, 01:22:14 AM
 #182

The grizzly logs are ine the same log file but you have to enable a lower log level with the configuration file option:
"apiLogLevel" : "DEBUG"

Could ypu send me the log file with this option ? Thanks.

EDIT: Could you give the absolute path to your stratum-proxy.jar file? I suspect a bug with some kind of special characters. Do you run the proxy with administrator privileges ?

Fixed it. Popped the folder in the root (c:). I had it under c:\programfiles(x86) <----- probably hates the characters. Maybe in the readme suggest popping the dir in the root. Cheers.
crossini
Newbie
*
Offline Offline

Activity: 22
Merit: 0


View Profile
August 28, 2014, 12:10:25 PM
 #183

Hi,

I have installed the proxy that works corretamente. I just have a problem with the web interface that does not start

I tried ancjhe to change the port from 8888 to 9400 or more, in the configuration file but nothing happens.


2014-08-28 14:08:05,501 ERROR    [main]:strat.mining.stratum.proxy.Launcher - Failed to start the proxy.
[Suspicious link removed].rs.ProcessingException: Failed to start Grizzly HTTP server: Address already in use: bind
        at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory.createHttpSer ver(GrizzlyHttpServerFactory.java:244)
        at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory.createHttpSer ver(GrizzlyHttpServerFactory.java:87)
        at strat.mining.stratum.proxy.Launcher.initGetwork(Launcher.java:349)
        at strat.mining.stratum.proxy.Launcher.main(Launcher.java:129)
Caused by: java.net.BindException: Address already in use: bind
        at sun.nio.ch.Net.bind0(Native Method)
        at sun.nio.ch.Net.bind(Unknown Source)
        at sun.nio.ch.Net.bind(Unknown Source)
        at sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)
        at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)
        at org.glassfish.grizzly.nio.transport.TCPNIOBindingHandler.bindToChannelAndAddres s(TCPNIOBindingHandler.java:132)
        at org.glassfish.grizzly.nio.transport.TCPNIOBindingHandler.bind(TCPNIOBindingHandler.java:88)
        at org.glassfish.grizzly.nio.transport.TCPNIOTransport.bind(TCPNIOTransport.java:233)
        at org.glassfish.grizzly.nio.transport.TCPNIOTransport.bind(TCPNIOTransport.java:213)
        at org.glassfish.grizzly.nio.transport.TCPNIOTransport.bind(TCPNIOTransport.java:204)
        at org.glassfish.grizzly.http.server.NetworkListener.start(NetworkListener.java:680)
        at org.glassfish.grizzly.http.server.HttpServer.start(HttpServer.java:276)
        at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory.createHttpSer ver(GrizzlyHttpServerFactory.java:241)
        ... 3 more
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
August 28, 2014, 12:16:01 PM
 #184

The proxy fails to start the Getwork HTTP server. If you do not need Getwork protocol (mainly for old workers), disable it.
"disableGetwork": "true", in your configuration file.

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
MagNaMan
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
August 31, 2014, 03:17:25 AM
Last edit: August 31, 2014, 03:57:17 AM by MagNaMan
 #185

Hey just wondering how the Web UI is coming along,  is there a new build going to be available to allow us to see workers etc.

Thanks
Mags
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
August 31, 2014, 07:32:04 AM
 #186

Since I will be busy for next days (weeks), I have released a 0.5.1 version with:
-Add an option to remove hash rate history when removing a pool (on the confirmation window)
-Fix worker disconnection when miner try to use stratum over SSL (bfgminer default behaviour). Bug #16
-Add users details page.
-Fix a bug about the jar location search (database files not at the good place, GUI not available...)
-Add pool edition in GUI and some others improvements

https://github.com/Stratehm/stratum-proxy/releases

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
MagNaMan
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
September 01, 2014, 04:57:12 PM
 #187

Thanks for the update.  Checked the users under webui.  Still says not available yet.

Is the users details section somewhere else?  API?
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
September 01, 2014, 05:37:26 PM
 #188

Try to clear the cache of the browser or force the cache refresh: Ctrl +F5 to force cache refresh.

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
kornjacanasolji
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
September 01, 2014, 06:21:54 PM
 #189

Hey,

I'm browsing your code, since I've tried to do something similar in the past. Could you please clarify a few things for me?

I've struggled to figure out what to do exactly when the pool sends the notify message with a new job. Just passing the unmodified message to the miners would result in duplicate work being submitted, correct? I have tried to pass the jobs to the miners in a round robin fashion, or something similar, but that resulted in timeouts and such. When the miner connects, I pass them all the data I received from the pool as subscribe response. 

Now, in your code, I see that you are sending a modified extra nounce when the miner connects:

request.setExtranonce2(extranonce1Tail + request.getExtranonce2());

I'm guessing that your are somehow "splitting" the work over the connected miners, correct? Can you please explain how does this work?


Then, you are just passing the work to every connected miner without problems (onPoolNotify you iterate through all of them), right?

Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
September 01, 2014, 08:35:19 PM
 #190

Quote
Just passing the unmodified message to the miners would result in duplicate work being submitted, correct?

Right.

Quote
When the miner connects, I pass them all the data I received from the pool as subscribe response. 

The subscribe response contains only the extranonce1 and the size of extranonce2.

So, you have to send unique extranonce1 to each miner. To do so, you reduce the size of extranonce2 sent to miners and append a unique value to the extranonce1 value.

For example, if a pool send you an extranonce2Size of 4 and an extranonce1 which is "0152F784", you will have to send an extranonce2Size of 3 to workers and send to each workers an extranonce1 which is "0152F784" + "xx" where xx is a 1-byte unique value in Hexadecimal.

Then, when the pool send a new job notification , just send it back to all miners.

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
kornjacanasolji
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
September 02, 2014, 03:01:49 AM
 #191

Cool, thanks for the explanation.
gigica viteazu`
Sr. Member
****
Offline Offline

Activity: 458
Merit: 250

beast at work


View Profile
September 06, 2014, 02:11:27 PM
 #192

can this be used for something like this ?

wallet(win64) < proxy < minerd(rPI)
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
September 06, 2014, 02:56:19 PM
 #193

No, this feature is not implemented. Maybe one day, but it is a lots of work.

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
tmpwhore
Full Member
***
Offline Offline

Activity: 343
Merit: 100


View Profile
September 08, 2014, 02:07:35 AM
Last edit: September 08, 2014, 06:03:59 AM by tmpwhore
 #194

To use the appendWorkerNames features, just turn on the "appendWorkerNames" parameters of your pool in the configuration file:

{
    "name" : "Nicehash X11",
    "host" : "stratum.nicehash.com:3336",
    "user" : "19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi",
    "password" : "d=0.02;p=0.24",
    "enableExtranonceSubscribe" : true,
    "appendWorkerNames" : true,
    "workerNameSeparator" : ".",
    "useWorkerPassword" : false,
    "isEnabled": true
}

With the above example, your miners will be authorizes the names:  19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi.<miner1Name>, 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi.<miner2Name>...

The miner1Name and miner2Name are names that are configured in your mining software to connect to the proxy. So if in your miner, you were using 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi.miner1 before using the proxy, you now have to use only miner1.

You can change the workerNameSeparator if the pool uses another separator than '.' between the first part and the second part of the name (for Nicehash/Wafflepool, between the BTC address and the worker name). The "useWorkerPassword" has to be turned on only if you want to authorize the workers with their own password instead of the one configured for the pool in the proxy.

If you are using Nicehash with its new WorkerName feature, I have not done test. There may be some issues since the appendWorkerNames was implemented for MPOS based pools. I see one potential issue. If there is no worker which connect on the proxy for a while, no authorization are sent to Nicehash (but subscribe request is sent). Maybe Nicehash has a timeout between the subscribe request and the authoriation request. So your proxy will be often disconnected from Nicehash.

Moreover, I am not sure that Nicehash accept several workers by connection (maybe, maybe not).






Thanks for the great work!

I would also like to know how to get different workers to work on Nice hash. The reason why is this. I have 3 miners. 1 Is a Gridseed black which is 25 M/hs second which works great at around 4096 difficulty. And 2 Gridseed blades with a total of 4 cards each at 2.5 M/hs for a total of 10 M/hs. When I connect to other pools(say wafflepool) I split the workers into 5 workers so I can optimize the speeds of the card. Ie. I'll connect the black at d=4096 and the 4 other cards as d=256 or d=512. Here would be my username config:

bitcoinaddress.black         -p d=4096(or 2048 depending on the pool)

Connection syntax on miner GUI dialog box: bitcoinaddress.black

bitcoinaddress.blade1       -p d=256(or 512)
bitcoinaddress.blade2       -p d=256(or 512)
bitcoinaddress.blade3       -p d=256(or 512)
bitcoinaddress.blade4       -p d=256(or 512)

Connection syntax on miner GUI dialog box: bitcoinaddress.blade1, bitcoinaddress.blade2, bitcoinaddress.blade3, bitcoinaddress.blade4

The problem is is since I can't assign different workers to different speeds Nice hash counts up ALL the workers for a total of around 30-35 M/hs to determine difficulty. No matter even if I put in my config file "d=4096" as a compromise for the difficulty level. After a while around say 45 minutes or so(sometimes longer) the proxy server is slowly climbing in difficulty until it hits around 8196 or even 16384 before the hashrate goes to nothing and the proxy server goes "haywire" then the difficulty starts back down to what was pre-set or say 512(when I use just a generic "x" password) and then slowly climbs up again to to 8196 or 16384 then goes "haywire" again then reconnects. As such my hashrate has suffered. Even when it is "working" at 4096 or 8196 it's way too high a difficulty for the blades as even if I comprimise the blades into one worker (10 M/hs) which only slightly less optimized and does work at say 2048 or even 1024 difficulty. What I would like to do is have a minimum of 2 workers on different difficulty settings if possible make it optimized with 5 ideally. Is there anyway the workers can connect to the proxy server and the proxy server handles different difficulty settings per different workers?


My basic config file:


{
  "isScrypt" : true,
  "disableStratum" : true,
  "pools" :
  [
  {
    "name" : "Nicehash Scrypt",
    "host" : "stratum.nicehash.com:3333",
    "user" : "<bitcoinaddress>.black",              
    "password" : "x",
    "enableExtranonceSubscribe" : true
  },
  {
    "name" : "Westhash Scrypt",
    "host" : "stratum.westhash.com:3333",
    "user" : "<bitcointalk>.black",
    "password" : "x",
    "enableExtranonceSubscribe" : true
  }
  ]
}

For fun I tried this:

"name" : "Nicehash Scrypt",
    "host" : "stratum.nicehash.com:3333",
    "user" : "<bitcoinaddress>.black, <bitcoinaddress>.blades",              
    "password" : "d=4096, d=1024",
    "enableExtranonceSubscribe" : true

Obviously no go.


I'm assuming it might look like this:

{
    "name" : "Nicehash scrypt",
    "host" : "stratum.nicehash.com:3336",
    "user" : "<mybitcoinaddress>",
    "password" : "x",                                       <--- Do I delete this so that it uses the worker passwords?
    "enableExtranonceSubscribe" : true,
    "appendWorkerNames" : true,
    "workerNameSeparator" : ".",
    "useWorkerPassword" : true,
    "isEnabled": true
}

Then I use the GUI syntax I normally use for say wafflepool:

bitcoinaddress.black         -p d=4096(or 2048 depending on the pool)

Connection syntax on miner GUI dialog box: bitcoinaddress.black

bitcoinaddress.blade1       -p d=256(or 512)
bitcoinaddress.blade2       -p d=256(or 512)
bitcoinaddress.blade3       -p d=256(or 512)
bitcoinaddress.blade4       -p d=256(or 512)

would that be correct? Except I'm assuming you don't need to have the bitcoin address as the username. Ie I could use:

blade1, blade2, blade3, blade4 because the proxy server is connecting under my bitcoin address already correct?

Hell even if I can "lock" the difficulty at say 4096 or 2048 that would be fine but it always changes no matter what which I'm assuming is a nice hash deal. I'm assuming it's fighting with the boxes with the blades saying "easier, easier" and the black saying "harder, harder". I can tell when it's going to puke as it will go up to 8196 difficulty or higher with a shitload of rejects and within 10 minutes it will crap out and go back down to 512 or default or whatever. I'm asuming it's going up to 8196 because it starts mining a crazy easy coin. Howerver nicehash never tells you what coin it's mining otherwise I would have pool difficulty metrics for you to troubleshoot. What I think is happening is it mines a crazy easy coin at 8196 for a while then changes to a harder coin but still stays at the superhigh difficulty so nicehash probably is fooled into thinking it's disconnected from that miner and cuts it off. Then the proxy reconnects and Nice hash treats it as a new connection and starts the difficulty at 512 again slowly climbing up. If I could either A "lock" the difficulty or B put my boxes on different difficulty levels it would stabilize it greatly.


Just noticed now when the proxy server goes "haywire" it's switching from 128 difficulty up to 32K and back again trying to get some shares in. Restarting the proxy server fixes it. I hope that helps.
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
September 08, 2014, 09:00:13 AM
 #195

Pools define the difficulty by connections, not by workers. Without proxy, each worker has its own connection, so they can each have their own difficulty value. With the proxy, the pool only see a single connection, and thus think there is only one worker => only one difficulty value.

Behind the proxy, all workers will have the same difficulty value (it is what you have already seen). I remember that Nicehash have implemented VarDiff recently. That is why your difficulty rises up, since Nicehash sees about 35 MH/s on the connection.

In the current version of the proxy, there is no solution to use different difficulty values by worker. I have already thought about a solution (since you are not the first one to ask me for this kind of feature), but I do not know when I will have enough time to implement it.

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
tmpwhore
Full Member
***
Offline Offline

Activity: 343
Merit: 100


View Profile
September 08, 2014, 12:24:04 PM
Last edit: September 08, 2014, 01:45:06 PM by tmpwhore
 #196

How about creating 2 instances of the proxy server? How would this be achieved? I've tried to create 2 batch files pointing to different config files but couldn't get it to run probably because of a port issue. How could I use my basic config file to create 2 configs. Here's an alternate config for a second instance a worker called "blades":


{
  "getworkListenPort" : 8333,  <---I believe this is the syntax correct?(used next port up from the standard 8332 used on the first instance.)
  "isScrypt" : true,
  "disableStratum" : true,
  "pools" :
  [
  {
    "name" : "Nicehash Scrypt2",
    "host" : "stratum.nicehash.com:3333",
    "user" : "1CZcmzEsYnE86ZTkygV1gu8RG51vUfFJTs.blades",  <-----should I even bother with another worker?
    "password" : "x",
    "enableExtranonceSubscribe" : true
  },
  {
    "name" : "Westhash Scrypt2",
    "host" : "stratum.westhash.com:3333",
    "user" : "1CZcmzEsYnE86ZTkygV1gu8RG51vUfFJTs.blades",
    "password" : "x",
    "enableExtranonceSubscribe" : true
  }
  ]
}

WHen I run a second batch file using this config it just gives me an error.

C:\stratum-proxy-0.5.0>java -jar stratum-proxy.jar -f stratum-proxy-nicehash2.co
nf
Log directory not set. Use the tmp OS directory.
Use log directory C:\Users\SCHTIC~1\AppData\Local\Temp
2014-09-08 08:22:53,852 INFO     [main]:strat.mining.stratum.proxy.configuration
.ConfigurationManager - Using INFO LogLevel.
2014-09-08 08:22:53,853 INFO     [main]:strat.mining.stratum.proxy.configuration
.ConfigurationManager - API log level not set. API logging disabled.
2014-09-08 08:22:53,858 INFO     [main]:strat.mining.stratum.proxy.configuration
.ConfigurationManager - Database directory not specified. Using default one: C:\
stratum-proxy-0.5.0\database.                                    <-------could this be the problem? Using the same file could be a windows filesharing error
2014-09-08 08:22:53,861 INFO     [main]:strat.mining.stratum.proxy.database.Data
baseManager - Starting DatabaseManager...              
2014-09-08 08:22:53,950 ERROR    [main]:strat.mining.stratum.proxy.Launcher - Fa
iled to start the proxy.  <<<<<<<< Error<<<<<<<<<<Error<<<<<<<<<
com.db4o.ext.DatabaseFileLockedException: C:\stratum-proxy-0.5.0\database\dbpool
s                                                    <-----------locked file due to first instance. Whats the syntax for changing database path?
        at com.db4o.internal.JDK_1_4.lockFile(JDK_1_4.java:64)
        at com.db4o.internal.Platform4.lockFile(Platform4.java:439)
        at com.db4o.io.RandomAccessFileFactory.newRandomAccessFile(RandomAccessF
ileFactory.java:21)
        at com.db4o.io.FileStorage$FileBin.<init>(FileStorage.java:43)
        at com.db4o.io.FileStorage.open(FileStorage.java:22)
        at com.db4o.io.StorageDecorator.open(StorageDecorator.java:27)
        at com.db4o.io.CachingStorage.open(CachingStorage.java:52)
        at com.db4o.internal.IoAdaptedObjectContainer.openImpl(IoAdaptedObjectCo
ntainer.java:57)
        at com.db4o.internal.ObjectContainerBase$1.run(ObjectContainerBase.java:
140)
        at com.db4o.foundation.DynamicVariable.with(DynamicVariable.java:54)
        at com.db4o.foundation.Environments.runWith(Environments.java:28)
        at com.db4o.internal.ObjectContainerBase.withEnvironment(ObjectContainer
Base.java:161)
        at com.db4o.internal.ObjectContainerBase.open(ObjectContainerBase.java:1
31)
        at com.db4o.internal.IoAdaptedObjectContainer.<init>(IoAdaptedObjectCont
ainer.java:35)
        at com.db4o.internal.ObjectContainerFactory.openObjectContainer(ObjectCo
ntainerFactory.java:18)
        at com.db4o.Db4oEmbedded.openFile(Db4oEmbedded.java:65)
        at strat.mining.stratum.proxy.database.DatabaseManager.<init>(DatabaseMa
nager.java:60)
        at strat.mining.stratum.proxy.database.DatabaseManager.getInstance(Datab
aseManager.java:75)
        at strat.mining.stratum.proxy.Launcher.initDatabaseManager(Launcher.java
:213)
        at strat.mining.stratum.proxy.Launcher.main(Launcher.java:123)



If I get it to work I'll post a tutorial for those that have different hashrates with different miners so everyone can benefit.
tmpwhore
Full Member
***
Offline Offline

Activity: 343
Merit: 100


View Profile
September 08, 2014, 02:02:15 PM
 #197

Yea! Success!. We'll see how it goes. Ok here is how it works:


I have 2 batch files called proxy_black.bat (for the 25 mHs)
and                              proxy_blades.bat (for the 10 Mhs total)

proxy_black.bat command:
java -jar stratum-proxy.jar -f stratum-proxy-nicehash.conf

proxy_blades.bat command:
java -jar stratum-proxy.jar -f stratum-proxy-nicehash2.conf

First instance config file:

stratum-proxy-nicehash.conf:

{
  "isScrypt" : true,
  "disableStratum" : true,
  "pools" :
  [
  {
    "name" : "Nicehash Scrypt",
    "host" : "stratum.nicehash.com:3333",
    "user" : "<your bitcoin address.black", <----you can rename "black" to what you want just make sure there is a "." seperating the bitcoin address
    "password" : "x",
    "enableExtranonceSubscribe" : true
  },
  {
    "name" : "Westhash Scrypt",
    "host" : "stratum.westhash.com:3333",
    "user" : "your bitcoin address.black",
    "password" : "x",
    "enableExtranonceSubscribe" : true
  }
  ]
}


Second config file:

stratum-proxy-nicehash2.conf:

{
  "getworkListenPort" : 8333,               <----different port number to connect your miners ie http://proxyip:8333
  "databaseDirectory": "database1",      <----different directory for database must be different for each instance
  "isScrypt" : true,
  "disableStratum" : true,
  "pools" :
  [
  {
    "name" : "Nicehash Scrypt2",
    "host" : "stratum.nicehash.com:3333",
    "user" : "1your bitcoin address.blades",   <-------different worker name for second instance
    "password" : "x",
    "enableExtranonceSubscribe" : true
  },
  {
    "name" : "Westhash Scrypt2",
    "host" : "stratum.westhash.com:3333",
    "user" : "your bitcoin address.blades",
    "password" : "x",
    "enableExtranonceSubscribe" : true
  }
  ]

There you go you can just keep creating instance as long as you give each instance there own directory for the database file. Just create database1, database2, etc and copy the dbpools and dbusers from the original database directory.
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
September 08, 2014, 03:25:38 PM
 #198

To run several instances of the proxy on the same host, you will need to modify the following parameters:
stratumListenPort, getworkListenPort, apiListenPort and databaseDirectory.

If you do not use stratum, getwork or the API/GUI, you can use the options disableStratum, disableGetwork and disableApi to free the ports.

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
tmpwhore
Full Member
***
Offline Offline

Activity: 343
Merit: 100


View Profile
September 08, 2014, 03:53:27 PM
Last edit: September 08, 2014, 04:17:56 PM by tmpwhore
 #199

Thanks did some tweaks and made some observations for Nicehash.

1. It's best to start the miner/instance with the LOWEST hashrate first and run it for a few minutes to stabilize it's difficulty. If you don't they both go haywire for a lot longer until they settle down(Nicehash's fault)
2. With 2 instances the reject rate is DRAMATICALLY lower. I haven't calculated it yet but it looks like it kills %90 of the rejects, especially when switching coins with radically different difficulty levels.
3. Hashrate especially on the blades has increased. Obviously because the little blades are not trying to do the same work as the big miner.
4. When Nicehash does switch coins to a different difficulty level and the proxy goes "haywire"(adjusting a radical difficulty level) it recovers much faster with less errors.
5. It's not perfect but a definite improvement, next test would be to try an individual instance for each of the blade boards to improve it more, however it may be worth more trouble than it's worth.
6. I've set the stats page on different ports 8888, 8889. If you wish you can make a hosts entry so all you need to type in your browser "black" or "blades".

Updated config files:

For the black server(25 Mh/s):

{
  "isScrypt" : true,
  "disableStratum" : true,
  "pools" :
  [
  {
    "name" : "Nicehash Black",
    "host" : "stratum.nicehash.com:3333",
    "user" : "your bitcoin address.black",
    "password" : "d=2048",
    "enableExtranonceSubscribe" : true
  },
  {
    "name" : "Westhash Scrypt",
    "host" : "stratum.westhash.com:3333",
    "user" : "your bitcoin address.black",
    "password" : "d=2048",
    "enableExtranonceSubscribe" : true
  }
  ]
}

Config file for the Blades:

{
  "getworkListenPort" : 8333,             <-------Different listening port
  "databaseDirectory": "database1",    <-------Different database directory(copy contents from \database dir)
  "apiListenPort" : 8889,                    <-------Different port for statistics(ie http://yourproxyip:8889)
  "isScrypt" : true,
  "disableStratum" : true,
  "pools" :
  [
  {
    "name" : "Nicehash Blades",            <-----Different Pool name for web interface page
    "host" : "stratum.nicehash.com:3333",
    "user" : "your bitcoin address.blades",            <-------Different username so you can see the stats on Nicehash
    "password" : "d=512",                                     <-------Different starting difficulty for lower hashrate on this server
    "enableExtranonceSubscribe" : true
  },
  {
    "name" : "Westhash Scrypt2",
    "host" : "stratum.westhash.com:3333",
    "user" : "your bitcoin address.blades",
    "password" : "d=512",
    "enableExtranonceSubscribe" : true
  }
  ]
}

Everyone is free to use any or all of this code. Happy mining!


jorneyflair
Hero Member
*****
Offline Offline

Activity: 672
Merit: 500



View Profile
September 08, 2014, 04:21:15 PM
 #200



anyone can help me? Cry
Pages: « 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 »
  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!