I've uploaded a new package to CRAN called cacheSeave for caching computations in Sweave. One problem with Sweave is that everytime you edit a .Rnw file, you need to "recompile" the entire thing, even if the code didn't change. If the code is stable, you might be better off caching the results of the computations and just loading them from the disk. Using the cacheSweaveDriver() function as a Sweave driver, you can set "cache = true" in your Sweave code chunks and any objects created in that code chunk will be cached to a database.
The cacheSweave uses the stashR and filehash packages. The cached computations are stored in a stashR databases and then lazy-loaded into the R workspace using the dbLazyLoad() function from filehash.
Using the cacheSweave package requires a little modification to the way .Rnw files are written. For example, in order to make a plot, I usually have one code chunk for setting up the data and then another code chunk to do the plotting. That way, all of the data for plotting can be cached separately and then in future runs all you need to do is the plotting.