Abstract:
Computer memory management systems and methods are provided hi which data block buffering and priority scheduling protocols are utilized in compressed memory systems to mask the latency associated with memory reorganization work following access to compressed main memory, to particular, data block buffers and priority scheduling protocols are implemented to delay and prioritize memory.reorganization work to allow resources to be used for serving new memory access requests and other high priority commands. In one aspect, a computer system ( 10) includes a main memory ( 160) comprising first (161) and second (162) memory' regions having different access characteristics, a memory controller (130) to manage the main memory (160) and to allow access to stored data items in the main memory (160), wherein the memory controller ( 130) implements a memory reorganization process comprising an execution flow of process steps for accessing a data hem that is stored in one of the first (161) or second memory region (162), and storing the accessed data item in the other one of the first (161) or second (162) memory region, and a local buffer memory (150) operated under control of the memory controller (130) to temporarily buffer data items to be written to the main memory (160) and data items read from the main memory (160) during the memory reorganization process, wherein the memory controller (130) temporarily suspends the execution flow of the memory reorganization process between process steps, if necessary, according to a priority schedule, and utilizes the local buffer memory (150) to temporarily store data that is to be processed when the memory reorganization process is resumed
Abstract:
Computer memory management systems and methods are provided hi which data block buffering and priority scheduling protocols are utilized in compressed memory systems to mask the latency associated with memory reorganization work following access to compressed main memory, to particular, data block buffers and priority scheduling protocols are implemented to delay and prioritize memory.reorganization work to allow resources to be used for serving new memory access requests and other high priority commands. In one aspect, a computer system ( 10) includes a main memory ( 160) comprising first (161) and second (162) memory' regions having different access characteristics, a memory controller (130) to manage the main memory (160) and to allow access to stored data items in the main memory (160), wherein the memory controller ( 130) implements a memory reorganization process comprising an execution flow of process steps for accessing a data hem that is stored in one of the first (161) or second memory region (162), and storing the accessed data item in the other one of the first (161) or second (162) memory region, and a local buffer memory (150) operated under control of the memory controller (130) to temporarily buffer data items to be written to the main memory (160) and data items read from the main memory (160) during the memory reorganization process, wherein the memory controller (130) temporarily suspends the execution flow of the memory reorganization process between process steps, if necessary, according to a priority schedule, and utilizes the local buffer memory (150) to temporarily store data that is to be processed when the memory reorganization process is resumed