1. A method for allocating memory comprising: determining whether a surface stored in a memory location is being referenced by a graphics processing circuit; and evicting the surface from the memory location to a system memory backing store based on dynamic surface allocation priority data, wherein the evicting is based on a computation of the dynamic surface allocation priority data that comprises: a weight factor associated with the surface and static surface information indicating a determined static surface type of a plurality of different static surface types, wherein the evicting depends on the determined static surface type.