There are 16 cores @ 2,5 GHz on the host. And I have 2 x 4-way vSMP VM's with 10000 MHz cpu reservation each running on it.
Lets say that I add 12 non-vSMP guests running at 100% cpu (inside guest) ALL the time. Will the two 4-way vSMP guests
ALLWAYS get cpu resources with little or no delay compared to running alone on the host?
The answer is, it depends how you configure. As depping said, (love yellowbicks btw) you can lock down to specific cores if you're not making use of DRS. Given the 2.5Ghz quad core, you are also likely to be on Opteron, so assign your cores thinking wisely of your memory nodes.
The approach, while it may seem to be a good idea, is something I'd recommend against unless you have no alternative. You'd schedule your 4vCPU VMs on two of the quad cores and prevent any other VM from scheduling time on those cores.
Best situation is to use resource pools to schedule priority, avoid 4 vCPU vm's if possible (even though Microsoft loves to recommend them). Typically those application people who demand x amount of Ghz without documented evidence for their application to run are simply concerned that their application may be throttled way down due to an improperly managed hyper visor environment. Bottom line is, given a sense of what is important and what is not, the vmkernel should be able to schedule better than you or I.
If you are in a situation which you're being asked for guarantees, perhaps suggest that you test and tune the application as needed, and come up with an acceptable response or load for the application. The guarantee should be based on some type of application performance (number of transactions, complete a process within x minutes....etc) rather than how many MHz a given CPU can provide.
CPU core speeds change much more quickly than application requirements.