http://www.codinginstinct.com/2008/04/ioc-container-benchmark-unity-windsor.html for some performance testing. Each test was running 1000000 creations.
Note that the benchmark shows singleton resolution and transient resolution: a singleton is there you register an instance of a class e.g. (using Unity):
container.RegisterInstance<IMyType>(new ConcreteMyType());
and this instance is returned every time (which is quite quick).
A transient is where you register just the class type and the IoC framework will do the job of creatnig it for you e.g. (in Unity)
container.RegisterType<IMyType, ConcreteMyType>();
This takes more time that returning a singleton.
In terms of overall optimisation, the overhead of the dependency injection is small beer; other performance bottlenecks are more likely to be the things to optimise.