Hash rate : Algebraic Equation I recently made a post on stack, Calculate hash rate in IOS, in hopes of deciphering how the hash rate is calculated when benchmarking performance. The reason I wanted to do this is to compare against the results that are presented in Is it Possible to Mine Cryptocurrencies with an iPhone? After days of hunting around on the internet, I've come to a conclusion that calculating the hash rate is not as straight forward as it seems.
My Thoughts
I was under the impression, especially after reading How can I calculate how many hashes I generate per second?, Explaining Hash Rate Or Hash Power In Cryptocurrencies and How is hash rate of mining hardware calculated, that calculating the hash rate is done as follows:
Have collection of x number of messages (M) 80 bytes in size
Loop through records, and calculate the sha256(sha256(M))
Divide the number of computed hashes against elapsed time
    # the result is hash rate ( in seconds, given your elapsed time is in s )

After doing so, I see results up to 24000 hashes per second, or 24KH/s. Obviously, this is alarming, as the reference article I am attempting to compare to, has these results:

The iPhone 6 has 25/30 Hash Rate (H/s)
The iPhone 8 55 H/s
The iPhone X (iPhone 10) 65 hashes per second

I later continued my hunt, and stumbled upon this Stack post how to calculate hash rate of your rig?, and the accepted answer mentions that the hash rate is something that is defined empirically. While I do not doubt the author, I now find it difficult to determine what hash rate really is. ( Does the &quot;nonce&quot; have any impact on calculating the hash rate? i.e Is the standard hash rate determined by calculating the number of times my machine can ensure that the hashed result begins with 3 ( or 5, or 7 ) leading zeros in 1 second? )
TL;DR
I want to compute a hash rate for my IOS device. What algorithm and algebraic expression should I use to calculate the hash rate, to be able to compare my results against other devices, like laptops and graphics cards?
The hash rate is literally how many distinct block header hashes you can try per second. Nothing more, nothing less. Note that I say "try" and not "compute". Determining whether a particular block header is interesting is somewhat faster than fully computing the hash:


You can drop the last few rounds of the hash implementation, and only compute the first 32 bits of the output (and if that those 32 bits are 0, recompute the hash in less optimized software to determine if it's a fully valid block).
You can exploit the fact that successive attempted block headers only differ in a few bytes, reusing part of the computation.
You can precompute things to find combinations of multiple block header attempts that share more parts of the evaluation than random ones (this is what AsicBoost is based on).


So determining the exact hashrate of certain hardware is a nontrivial engineering effort because of the above, and is complicated by things like architecture specific optimization, and things like exploiting special hardware instructions.

Such engineering has obviously not been done for iPhone, as it's a nonsensical target for computation. My back of the envelope computation suggests it could probably do a few MH/s, but as that still means ~50 million years to find a block, not much effort will be spent on this.