If possible, it would be the best to use some form of dependency injection so you can plug out one module and switch it with another. You would need to create unique interface for such libraries before that tho (wrapper that is), which makes a job harder but overall design better. On the positive side, if you want to benchmark earlier interface doesn't have to be complete but just to expose what you think would be most benefitial when perf. is in question.
The abilities very much depend on the language used.
I don't like artificial tests. They are most of the time inacurate IMO, people tend to overlook that one library function does more or less then other library function while they both look like the same thing. I rarely encounter benchmarks that didn't have that kind of property.
On the other sides, there is rarely such a thing as totally better library. Many libraries present good performance in some scenarios where other similar libraries may suck, and vice-versa.
So, if performance is the most important thing for your app, the best thing to do IMO is to create interface for the operations you would like to import, then plugin/out couple of libraries and see the differences in real benchmarks, benchmarks of your app in action, not some artifical math mumbo jumbo...