Vitalik Buterin gave a presentation about Ethereum to Hyperledger April 28 2016 and had this slide:
#EVM Requirements#
EVM Requirements
● Small code size (so that very many contracts from
many users can be stored by one node)
● VM security designed around running untrusted
code from arbitrary parties
● Multiple implementations (for cross-checking, and
to mitigate developer centralization in the public
chain)
● Perfect determinism (for consensus)
● Infinite loop resistance
- This itself must be accomplished perfectly
deterministically; timeouts are a no-go
Vitalik clarified the third point as the developer centralization observed in Bitcoin, where a single implementation is deemed the protocol.
There was no time in the presentation available to discuss the evaluation against existing virtual machines.