Some of the structure is already cached. I've been working on a major rewrite of the portal package, to integrate it equally well with OpenACS as well as .LRN, and much better caching is something I intend to look at. But reintegration with .LRN and upgrade scripts probably won't come out until end of May, which involves some personal travel and the Heidelberg .LRN/OpenACS conference.
Portal content is another issue entirely. It is really up to the application portlets to cache their own content, and most do not. A portal page with a bunch of portlets on it can be slow because it is doing the same about of work as several application index pages.
Make sure you have permissions caching turned on, BTW. This alone makes a big difference in .LRN performance.