Patent ID: 7774564
Filing Date: 2010-08-10
Classification: G06F

Abstract:
1. A multi-processor system using a plurality of multi-chip packages mounted with at least one processor and at least one memory, comprising: a memory absolute address register for storing a memory absolute address recognized by the processor; an address converting table for converting higher-order bits of the memory absolute address into higher-order bits of a memory real physical address on a platform; a trace collecting table provided for each of the processors, comprising an entry provided for each of memory address spaces that can be swapped in the memory real physical address and a counter for recording a number of a memory access from a corresponding processor to the memory address corresponding to each entry; a load state determining unit for referring to contents of the trace collecting table, deciding the memory address space to execute a memory swap, and executing a swap of the memory real physical address in the address converting table, and also making a status of the entry corresponding to the memory real physical address that performed the swap in the trace collecting table as completed; a memory real physical address combiner for combining the higher-order bits of the memory real physical address stored in the address converting table with lower-order bits of the memory absolute address stored in the memory absolute address register and outputting a combined address as a memory real physical address; a memory copy unit for executing the memory swap in response to an instruction of the load state determining unit; and a timer, wherein the load state determining unit searches for a maximal value among the counters of the trace collecting table and recognizes a corresponding processor and an implementing place of the memory indicated in the entry, and if they are not mounted to the same multi-chip package, makes the memory address space indicated by the entry as a candidate for swapping, and then refers to the trace collecting table, and searches for an entry with a minimal value of the counter among memory that is mounted to the same multi-chip package to which the corresponding processor is mounted and whose entry is not in a completion status, and decides the memory address space indicated by the entry as a counterpart of the swap, and wherein the load state determining unit is activated in a certain cycle of counts of the timer, performs a determination whether the memory swap is needed or not, and when the determination completes, clears the counter of the trace collecting table.