Maybe I'm wrong, but seems that MH/s isn't single performance indicator.
The equal or maybye higher importance indicator is "utility" (number of shares / minute)
I order to deal with it I recomend to try CGMINER
This miner takes ton of input parameters and shows lot of info.
Let me to cite part of its readmy.txt:
The output line shows the following:
[(5s):204.4 (avg):203.1 Mh/s] [Q:56 A:51 R:4 HW:0 E:91% U:2.47/m]
Each column is as follows:
A 5 second exponentially decaying average hash rate
An all time average hash rate
The number of requested work items
The number of accepted shares
The number of rejected shares
The number of hardware erorrs
The efficiency defined as the accepted shares / requested work
The utility defines as the number of shares / minute
The cgminer status line shows:
TQ: 1 ST: 1 LS: 0 SS: 0 DW: 0 NB: 1 LW: 8 LO: 1 RF: 1 I: 2
TQ is Total Queued work items.
ST is STaged work items (ready to use).
LS is Longpoll Staged work items (mandatory new work)
SS is Stale Shares discarded (detected and not submitted so don't count as rejects)
DW is Discarded Work items (work from block no longer valid to work on)
NB is New Blocks detected on the network
LW is Locally generated Work items (during slow server providing work)
LO is Local generation Occasions (server slow to provide work)
RF is Remote Fail occasions (server slow to accept work)
I is current Intensity (changes in dynamic mode).