In the basic form of merge processing, that is sort processing, two sorted
partial data string pairs are input, and one series of sorted data string
is output as a whole. Conventionally, high parallelism of this processing
has been considered difficult. A method for dividing a sorted partial
data string pair into a plurality of segment pairs, if invented, would
allow an advanced parallel merge processing to be performed even in a
homogeneous configuration parallel computer system, such as a tightly
coupled multi-processor sharing a main storage. The basis of merge
processing is processing to input a pair of two sorted partial data
strings and to output one sorted data string. A method for sub-dividing
this input data string pair into arbitrary data string pairs from the
first part of both data strings of the input data string pair, while
considering the magnitude of the key value, has been invented. This
method, if implemented, enables a merge operation at a parallelism k if
the data string is divided into any number of data string pairs, for
example, k sets of data string pairs, and if merging in descending order
(merging the data string pair from the first part to the last part
thereof, and outputting it from the first part to the last part in the
output area) and merging in ascending order (merging the data string pair
from the last part to the first part thereof and outputting it from the
last part to the first part in the output area) are used, a merge
operation with a parallelism 2k can also be possible.