1. A method for rendering text, the method comprising the steps of: receiving a request to render a glyph; generating a glyph bitmap; obtaining a list of a plurality of sub-caches in a glyph cache, each sub-cache capable of holding at least two glyph bitmaps; determining if any of the plurality of sub-caches has sufficient space for the glyph bitmap; inserting the glyph bitmap into one of the plurality of sub-caches with sufficient space; determining whether none of the plurality of sub-caches have sufficient space for the glyph bitmap; upon determining that none of the plurality of sub-caches have sufficient space for the glyph bitmap, clearing the entirety of one of the plurality of sub-caches and inserting the glyph bitmap into the entirely cleared sub-cache; and submitting a command stream to draw the glyph to a destination.