Im with planetsim. Theres no reason to use session as a cache because it saves the pages for every user in their own session file.
Use ready made cache systems like Cache Lite, Zend Cache or even Memcached.
They all are good ones but memcached is different from those options and it needs a daemon to be run and extension for PHP. It also uses memory so its different that way also when the other 2 are file based caches.
I personally like the Pear Cache_Lite as it is very light and easy to use(well the usage is pretty much the same for all of them).