I am going to expand on this a bit more since it is a pet peeve of mine to see people blindly complain about a minor display difference between clients and look no further than that for confirmation. I should actually keep quiet as it is less competition for me, but I am home sick today and bored so here goes...
I have many rigs running various algorithms and like most people, once I have a build I like I keep copying it, which means I have several theoretically identical rigs.
They are theoretically identical because while I can control the hardware and use the same mobo, CPU, RAM, GPUs, software, etc. for the build, some things are beyond my control such as the ASIC quality of the parts. In the end even these identical rigs with the same software and configuration settings can perform differently in terms of mining performance, sometime by as much as 5%.
I have ran hundreds of different types of tests to try and find out as many of these differences that I can and have spent considerable amounts of time to try and eliminate those I do find so that all my rigs perform at their peak. One of these testing procedures involves comparing pool performance.
One method that has seemed to work well involves using two identical rigs as far as hardware, software, and configuration and point them each to their own dedicated payment address (or account) on the same pool. This means each will have their own little silo of performance statistics so as to not be thrown off by other rigs sharing the same address. I do not mean different worker IDs, but actual separate pool accounts.
Secondly, I will then start each rig and point them to their dedicated pool account as simultaneously as I can. I will then baseline these rigs for one week to detect any differences that I outlined above and make note of it, i.e. rig A is 5% faster that rig B, all week long. Ideally if they are truly similar both would have the same overall stats, one may outperform the other on one day but the next day it flip flops and viceversa. This is why I like to baseline for at least week before any serious testing.
After I have a baseline established, so I can account for any generic differences, I will often try different settings or different mining clients to compare and find any performance differences I can take advantage of. Using the client testing example I mentioned in my previous post, I would run an instance of the latest Optiminer and an instance of the latest Claymore, maximizing the settings so I am getting the highest hashrates with similar power draw from each rig as I can.
I would again point each rig to their own dedicated pool account (same pool of course) and run them for at least a week to ferret out any differences. Sometimes the differences are blatantly obvious right away so you can abort the test and not waste a week on it, but the more subtle differences take time to correctly deduce. I would say anything within a 5% margin of one another would warrant a full week to be sure, and even a 10% difference you might want to run for at least 24 hours to eliminate a random run of bad luck before giving up.
While this is a lot of work, it is the only way to know for sure about small differences in settings or clients that may not be immediately obvious. I know many clients displayed hash rates have little to do with their real performance pool-side, not that they are internally manipulated or anything, but they are measuring a different criteria than the pool is measuring.
Your client will show you the hash-rate it calculates and it may very well be correct in that it is doing X guesses per second, but maybe its guessing sucks. Whereas the pool will base your hashrate upon how many valid shares per hour it receives and then calculates the results to display an “estimated” hashrate which is also based on the current network and pool conditions. Some pools will also display the reported hashrate, which again is simply the hashrate sent along from your client and may or may not match up with the poolside calculated rate. Usually the pool rate is lower and this is the first source of forum whining that something “must” be amiss.
Nothing is wrong, it is just a different way to arrive at your hashrate and will be more accurate as it is based off you shares submitted, which is what you are paid off of anyway. This last point bears repeating, it is the number of valid shares submitted that you are paid against not hashrate.
So going back to the testing, your end goal is to see which configuration, or client, yields the most pool-side valid shares. Anything else is just a distraction. While the local displayed hashrate may be useful for tweaking your settings as changes are more obvious and provide instantaneous feedback, the testing is not truly completed until you have verified your changes against the pools submitted share counts.
Of course this involves more work which is why people do not do it and why we see an endless flood of forum posts that complains that client A shows 150 MH/s while client B only shows 146 MH/s.
Another example is extreme overclocking where the hashrate looks good locally but the amount of shares submitted actually goes down when pushed too far.
Astute miners will already be using utilities such as HWMonitor to look for excessive memory errors, but less savvy types simply crank up the clocks until they crash, reduce the settings a bit to keep from crashing all the time, and then post “wow I am getting mega HPS with these settings” and never bother to investigate any further, meanwhile they are burning through electricity and probably shortening the lifespan of the cards all at the same time as they are submitting less overall shares to the pool.
Anyway, the rant is over and I feel better. Take some of this or leave it, I don’t care. Sorry to Optiminer for putting this in his thread, but it seemed appropriate due to some of the responses. And finally, I am not endorsing or commenting on which miner performs better or worse (that's your job, see above). My main beef is the lack of any investigation what-so-ever other than a quick glance at a console display or pool readout and instantly "knowing" without doubt that something is better or worse, or some pool is cheating, etc. Also I am not picking on anyone in particular either, just been noticing a common symptom of laziness I see displayed all over this forurm.