It’s based on the Spell Queue Window, which is a latency tolerance system in-game.
So, your firing speed doesn’t really matter if it’s under 100 when your SQW is set to anything above 0 (1-400). If you set it (your SQW) to 0, then you will notice a difference as it’s inputting solely on your key-presses, and bypassing the tolerance system, but in setting your SQW to 0, you’re missing a lot of GCD opportunities, so it’s not worth it.
You can check you SQW in-game to see if it’s ever been altered via -
… and you can change it via -
/console SpellQueueWindow EnterNumberHere
“EnterNumberHere” is typically default at 400 for casters, 150 for melee. Sometimes 0 works if you have extremely low latency and you play a class like DH.