A method for unifying a value list in a control device of each memory module in an information processing system, the system comprising
- a plurality of memory modules, each module having a memory and a control device;
- and
- data transmission paths for connecting the memory modules and transmitting a value from one of the memory modules to other memory modules,
- in which each of the memory modules retains a list of values of a plurality of items, the values being ranked in an ascending or descending order without duplication, wherein
- the method comprises:
- (a) a list retaining step for retaining value lists of combinations of plural unification items including a first item, or a second item to be unified, or the first item and the second item;
- (b) a data sending step for sending values included in the value lists constituting the combinations of the plural unification items to the other memory modules;
- (c) a data receiving step for receiving values included in the value lists constituting the combinations of the plural unification items from the other memory modules;
- and
- (d) a unifying step for referring to the value list of the first item and the value list of the second item constituting the combinations of the unification items for each of the combinations of the unification items in the other memory modules received in the data receiving step, and for deciding a ranking of the values in the value list of the first item, or the values in the value list of the second item, or the values in the value list of the first item and the values in the value list for the second item, for each of the combinations of the unification items in view of the values included in the value lists of the first and the second items constituting the combinations of the unification items from all of the other memory modules,
- the unifying step comprising
- i. a first ranking decision step
- (i-1) for referring to the value list of the first item in each of the memory modules, or the value list of the second item in each of the memory modules, or the value list of the first item and the value list of the second item in each of the memory modules, as well as the value lists of the first and the second items from the other memory modules received in the data receiving step,
- (i-2) for comparing the values of the value list of the second item in each of the memory modules, the values of the value lists of the first item in the other memory modules, or the values of the value lists of the second item in the other memory modules with the values of the value list of the first item in each of the memory modules and, if any of the values in the compared value list is equal to the values of the value list of the first item in each of the memory modules, deleting the identical value and
- (i-3) for deciding a global value ranking for the first item in view of the values included in the value lists of the first item and the second item in each of the memory modules and the other memory modules and storing the decided ranking in a first global order storage array for storing the global value ranking at a position corresponding to a value of each of the memory modules;
- and
- ii. a second ranking decision step
- (ii-1) for referring to the value list of the first item in each of the memory modules, or the value list of the second item in each of the memory modules, or the value list of the first item and the value list of the second item in each of the memory modules, as well as the value lists of the first item and the second item from the other memory modules received in the data receiving step,
- (ii-2) for comparing the values of the value list of the first item in each of the memory modules the values of the value lists of the first item in the other memory modules, or the values of the value lists of the second item in the other memory modules with the values of the value list of the second item in each of the memory modules, and, if any of the values in the compared value list is equal to the values of the value list of the second item in each of the memory modules, deleting the identical value, and
- (ii-3) for deciding a global value ranking for the second item in view of the values included in the value lists of the first item and the second item in each of the memory modules and the other memory modules and storing the decided ranking in a second global order storage array for storing the global value ranking at the position corresponding to the value of each of the memory modules.