I have, actually done this comparison many times.
Long story short--generally CentOS wins, but it depends on package versions, library version, and most importantly the kernel version they're using.
Ubuntu LTS vs a seasoned CentOS release (that'd be 6 or older), CentOS will usually win out on performance simply because it has fewer services running by default in the background. If you disable the unneeded services on Ubuntu, then it can perform as well as CentOS.
A perfectly well-tuned of both yields about the same performance metrics if they're running the same kernel version. Newer kernels don't necessarily mean better performing. 2.6 has the smallest footprint and even running 3.12 on my box doesn't keep up with it quite as well-but we're talking about 1-2 ms difference.
However, both of them are going to be dwarfed by the more advanced distros.
For both a VM and a physical server, I'd give preference to CentOS because it has a smaller footprint on a VM and it has better support for virtualization than Ubuntu. FreeBSD is probably the best choice for a VPS in terms of cost to run and maintain, but CentOS isn't all that far behind it.
If given free-reign over which distro goes where and I'm optimizing for performance, I put Arch on a server, then CentOS, then Debian and never mess with Ubuntu because it's generally bloatware. If it's a VM, then usually I want a specific distro for a specific purpose.