A set of program elements (e.g., transcoders) are grouped together as an
administrative unit. Instead of caching the individual outputs of each
program element, preferably only the aggregate output of the set of
program elements, taken as a whole, is cached. The inventive technique
enables the effective re-use of intermediate content. In an illustrative
client-server based implementation involving a transcoding service located
at a server, the cached information may be shared across multiple server
instances to obviate redundant processing. With the present invention, a
caching mechanism in a complex software system may be extended in a
user-configurable manner by setting up optimal intermediate caching points
that are defined by groups of programs used in long computations.