Why is my bare-metal 16x 2.93GHz cores computer performing poorer than a VPS with 4x 2.5GHz cores?
Processor advancements, clock speed and IPC calculations can make it almost impossible to try to reasonably compare decade old CPUs to modern ones. Not only are the instructions per cycle going to vary, but newer processors have instruction sets dedicated to complex calculations (Intel has added AES-NI as an example), clock speed is no longer a reasonable comparator, due to these factors (did I mention multi-core vs hyperthreading...). With enough time and patience you could certainly figure out how many older procs equal 1 newer proc but the calculations will end up saying its cheaper and faster to buy a new CPU.
I don't want to sound terrible by emphasizing something that should be obvious here, but you're comparing a high-end server processor from 2014 to a high-end server processor from 2007.
I don't think this requires much more explanation.
There's a reason an HP ProLiant DL580 G5 is available so inexpensively today. They were large, slow and lack many features that are desirable in more modern servers. I sold my last one in 2009. It was a bad purchase, and you would be better served with a CPU from the Nehalem or Westmere CPU families, if you are forced to purchased used equipment.
In addition, the servers you purchased are very inefficient in terms of power consumption, so they will be costly to operate.
It appears as though your physical servers are running in a power-savings mode that scaled back your CPU clock speed. You'll want to go into the BIOS (press F9 at boot) and reset the server to factory defaults (who knows what else was modified from default?)