1. An information handling system comprising: one or more processors; a memory coupled to at least one of the processors; a set of computer program instructions stored in the memory and executed by at least one of the processors in order to perform actions of: selecting a page of data that is compressed by a first compression algorithm, wherein the compressed page of data is stored in a first one of a plurality of memory blocks; decompressing the page of data by the first compression algorithm, resulting in a decompressed page of data; storing the decompressed page of data into an uncompressed memory area; combining the first memory block with one or more of the plurality of memory blocks that are unallocated, resulting in a larger memory block; identifying one of a plurality of pre-defined memory block sizes corresponding to the larger memory block; updating one of a plurality of linked lists corresponding to the identified pre-defined memory block size to indicate that the larger memory block is unallocated; recompressing, by one of the processors, the page of data using a second compression algorithm in response to determining that the compressed page of data is utilized less than a utilization threshold, the recompressing resulting in a recompressed page of data; determining a size of the recompressed page of data; selecting one of the plurality of pre-defined memory block sizes based upon the size of the recompressed page of data, wherein each of the plurality of pre-defined memory block sizes corresponds to a size of a memory block located in memory; identifying, in an index array, one of a plurality of indexes that is assigned to the selected pre-defined memory block size; determining whether the identified index includes a pointer that points to one of the plurality of linked lists comprising an address location of a second one of the plurality of memory blocks that corresponds to the selected pre-defined memory block size; and in response to determining that the identified index includes the pointer, storing the recompressed page of data in the second memory block.