1. A method for managing memory in a system including a CPU, a data movement engine (DME), and one or more memory modules comprising system memory, wherein at least one memory module includes a compression engine, the method comprising: the data movement engine reading first data from the system memory; the data movement engine writing the first data to the compression engine; the compression engine included on the at least one memory module compressing the first data to form a first compressed data; the data movement engine reading the first compressed data from the at least one memory module; and the data movement engine writing the first compressed data to the system memory.