[eluser]tonanbarbarian[/eluser]
1.2Mb of memory is nothing.
CI is in fact the lightest framework I have used
As an example I tried to create a site using CakePHP. It was pretty straight forward crud for some average tables and CakePHP 1.1 used 4+Mb to display the page, CakePHP 1.2 used 5+Mb
And coming from a background where I have been building apps for an open source CMS for the last 3 years I am used to the CMS using 3-5M of memory before my code is even executed.
And by the way once I converted the above mentioned app to CI it was 1.5Mb to do the same functionality.
If you use CI properly you can create apps that use minimal memory. I plan one day to write a big post about how I feel this should be done, but here are some quick pointers, the ultimate goal of which is to reduce the amount of PHP code that is loaded. (Loading code that is not executed is one of the largest causes of PHP memory usage)
1. use the autoload is seldom as possible. I only really autoload the URI helper because it has redirection as well as site_url, if I dont need one I invariably need the other.
2. do not autoload the database unless you really need to. If your site has lots of redirects in it why load the database connection to simply redirect. If however you are using a db session or you have an authentication system that uses the database then definately autoload.
3. Put code into libraries where possible. If you have a controller with 400 lines of code in it with only 4 methods then consider breaking the code into multiple libraries and using them. You may be able to get the controller down to 50 lines and have 4 libraries of 100 lines each.
But ultimately if you are uber concerned by memory usage and 1.2Mb is too much for you then do not use a framework, or build your own framework from scratch so that you know 100% what is being run at each stage of the process. I have looked into the code CI code and I cannot find anything that I feel is unnecessary that is being loaded automatically.