Page 1 of 1

Major release coming Tuesday, April 7

Posted: Tue Apr 07, 2015 10:10 am
by Steve Sokolowski
We've finally made it. The most significant release in the pool's history is coming tonight, beginning around 6:00pm EDT. Services will be offline for up to 30 minutes, after which it is possible that we might need to go up and down a few times if we encounter any unforeseen bugs.

There are more changes than we've ever made before in one release, but I'll try to summarize them in categories below. The system will be changing so dramatically that we encourage reports of any issues that come up. While we can test with simulators, we are deploying something that has never been done before, and we have no idea how it will effect the coin networks and block-finding, which we can't test with fake miners.

Performance improvements
  • Many of the pool's tasks are now multithreaded. As a result, there is less likely to be a delay between the time a share is received and when it is evaluated to see whether a block has been found or not. This change should improve profitability because we will find more blocks and reject fewer stale shares.
  • The memory leak that previously caused crashes and mandated a server restart every 12h has been resolved.
  • Inefficient data structures have been replaced with more efficient ones. The pool was tested at 600GH/s with fake miners and performed adequately, a 10,000% performance improvement from the current code.

Bugfixes and fairness
  • The orphan rate of many coins is very high because sometimes, the same person finds multiple blocks in a row for an easy coin. The second, third, and subsequent blocks are orphaned by the daemon. Now, we will reject blocks from miners when a block has already been found for the same height by someone else in the pool. This change will significantly lower the orphan rate. It is possible that profitability will increase by as much as 20% due to this change alone. The orphan rates will take one week to decline, so profitability will increase slowly until it reaches an equilibrium.
  • Previously, jobs were not marked as stale quickly enough, so miners with very high ping times ended up with fewer stale shares than they should have. Meanwhile, miners with low pings paid for these other miners' stale shares from their own well-performing rigs. Now, the pool is more aggressive about stale shares. Even though the same amount of money is being earned, miners who have good connections will receive a greater portion of it. The result is that profitability will increase moderately, and stale shares will increase a little (except for the few miners who are very high latency, who will get a lot of stale shares).
  • The present code sends two work restarts when only one is necessary at least 75% of the time. This major bug is fixed in the new release.
  • Customers using automatic variable difficulties previously had the variable difficulties calculated across all miners using the account. If a customer had ten low-powered miners, it was possible that they could all be assigned difficulties of 65536. Now, each miner's variable difficulty is computed individually.
  • A problem that caused some litecoin-denominated markets to be marked as having errors has been resolved, so profitability will increase now that we can trade these coins.

User interface improvements
  • The "share details" dialog displays the coin your miner actually mined, in addition to the existing data that shows the proportions that all miners were mining.

Work restart accounting
  • Upon connect, miners will be sent six difficulty 1 shares to test their work restart times and network latencies. Subsequent coin assignments will be chosen based, in part, upon these two values. These test shares are ignored, but normal mining begins after this testing period ends. One additional test share is sent every hour thereafter and the latency is the median of all the values.
  • The work restart delay is used to mathematically determine which coin is the most profitable to mine, and whether more time would be lost switching than money would be gained in the event that a more profitable coin becomes available. For example, kires's miners are so inefficient (work restart median of 8s) that he mined litecoins 50% of the time in testing, but that was still the best choice for his miners.
  • Whether or not to request a work restart when a merge mined coin has a new block is determined mathematically. When a merge mined coin gets a new block, the amount of money lost not mining the primary coin during the work restart is computed. If more money would be lost than would be gained from merge mining, then that miner receives no work restart. All the merge mining shares will be stale until the next primary block occurs - but the miner is still making the most money possible. Kires's miners, surprisingly, lost money with dogecoin restarts, so he will probably end up merge mining only half of the time.
  • The "work restart penalty" is the percentage of money your miner is earning compared to the money earned by mining the coin it would have mined were there no network latency or work restart delay. The "average work restart penalty" is the average value for the entire pool. If your miner performs better than average, then you receive a bonus; if not, you receive a penalty. Either way, you receive consistent, pay-per-share earnings that are mathematically proven to be the most your miner can possibly make.
  • The earnings reported to PoolPicker and other sites, and posted at the top of the page, will be the earnings of a hypothetical miner with the average work restart penalty, which, had we not made the changes in the "bugfixes" section, would be lower than they are now. That doesn't mean that earnings are actually lower; it means that many people could not achieve the earnings reported previously because of work restarts and network latency.

With such a major change, there are bound to be issues after the release. We appreciate your patience if any come up. We believe that these changes will significantly increase profitability for all miners, will make the pool more fair, and will allow miners who previously would receive too many work restarts to join in. Feel free to offer comments, before and after these changes take effect.

Re: Major release coming Tuesday, April 7

Posted: Tue Apr 07, 2015 3:29 pm
by kires
I'm definitely looking forward to trying out this new release. Now that you'll be differentiating between workers under the same user, I think I'll bring some of my smaller (and more nimble) asics back online to join in the fun. Speaking of which, is the work restart penalty applied per worker or per user?

Re: Major release coming Tuesday, April 7

Posted: Tue Apr 07, 2015 3:52 pm
by Steve Sokolowski
Everything in the entire system will now be determined by worker. However, since we don't accept a "worker name" in the password field, the data in the database is stored with a random ID (and therefore that meaningless ID is not displayed on the website).

At some point in the future, I'd like to be able to replace this random ID with a user-specified ID for each worker, which would then allow us to track statistics and display them on the site.

Re: Major release coming Tuesday, April 7

Posted: Tue Apr 07, 2015 9:30 pm
by Chris Sokolowski
The release of the new mining server did not proceed well. CPU usage spiked to a 100% causing miners to have very low efficiency. Steve will explain more, but the problem may take a few days to diagnose and resolve on our development server. Until then, we have reverted to the previous version.

Re: Major release coming Tuesday, April 7

Posted: Tue Apr 07, 2015 9:36 pm
by kires
Oh. That explains it, then. Please feel free to ignore the hell out of my post over on support.

Re: Major release coming Tuesday, April 7

Posted: Wed Apr 08, 2015 8:46 am
by nineteenseventy
I understand the goal of this pool is to be able to mine multiple altcoins, depending on whichever are most profitable at the moment and trade them for BTC. Is it even profitable anymore for people to mine altcoins?

Re: Major release coming Tuesday, April 7

Posted: Wed Apr 08, 2015 9:03 am
by kires
Yes. Yes, it absolutely is profitable to mine altcoins, although not as profitable as it has been. To see how profitable on any given day, check out the following calculator or one like it.
http://www.coinwarz.com/cryptocurrency/

Re: Major release coming Tuesday, April 7

Posted: Wed Apr 08, 2015 7:37 pm
by Steve Sokolowski
We tried again to release this code. While there are no errors and everything works as expected, CPU usage was swamped, causing most shares to be rejected because the CPU can't accept them in time.

We reverted yet again. Hopefully we'll figure out a performance improvement that works tomorrow night.

Re: Major release coming Tuesday, April 7

Posted: Wed Apr 08, 2015 10:40 pm
by loszhor
nineteenseventy wrote:I understand the goal of this pool is to be able to mine multiple altcoins, depending on whichever are most profitable at the moment and trade them for BTC. Is it even profitable anymore for people to mine altcoins?
Due to the cost of equipment and difficulty it has always been a challenge to make a profit mining but if you choose carefully what you mind it is definitely possible to do so.

Also, thank you to the development team for continuing to improve and maintain the site.