I have quite a few libraries and models that get loaded into a controller, and each library/model creates an instance of CI using $this->CI =& get_instance();
in the __construct
function.
Are there any performance issues with this and is there a better way?
That class is using the Singleton pattern. It is not creating multiple instances, it is just returning you the same/one instance of the CodeIgniter to be used. So no performance issues there.