Patent ID: 8719821
Filing Date: 2014-05-06
Classification: G06F

Abstract:
1. A process allocation apparatus for allocating processes to multiple nodes connected with each other, the process allocation apparatus comprising: a processor and a memory; a process allocation storing unit that stores node location information on the multiple nodes and identifiers of the processes allocated to the multiple nodes; an inter-process communication traffic storing unit that stores an identifier of a process used as a communication source, an identifier of a process used as a communication destination, and inter-process communication traffic that indicates communication traffic between the process used as the communication source and the process used as the communication destination; an evaluation value calculating unit that specifies a hop count from a communication source node to which the process used as the communication source is allocated to a communication destination node to which the process used as the communication destination is allocated from the process allocation storing unit, acquires the inter-process communication traffic from the inter-process communication traffic storing unit, and calculates an evaluation value of process allocation by multiplying the hop count and the inter-process communication traffic; an internode total communication traffic calculating unit that specifies a communication route from the communication source node to the communication destination node, acquires inter-process communication traffic between processes allocated to nodes on the specified communication route from the inter-process communication traffic storing unit, and calculates internode total communication traffic that indicates a sum of the communication traffic between the nodes from the acquired inter-process communication traffic; a correction evaluation value calculating unit that calculates a sum of the evaluation values of the multiple nodes, extracts the maximum value of the internode total communication traffic among the nodes, and calculates a correction evaluation value by multiplying the calculated sum of the evaluation values and the extracted maximum value of the internode total communication traffic; and a process allocation unit that relocates the allocated processes among the multiple nodes when the calculated correction evaluation value is above a predetermined value.