Ty. Liang et al., Distinguishing sharing types to minimize communication in software distributed shared memory systems, J SYST SOFT, 55(1), 2000, pp. 73-85
Using thread migration to redistribute threads to processors is a common sc
heme for minimizing communication needed to maintain data consistency in so
ftware distributed shared memory (DSM) systems. In order to minimize data-c
onsistency communication, the number of shared pages is used to identify th
e pair of threads that will cause the most communication. This pair of thre
ads is then co-located on the same node. Thread pairs sharing a given page
can be classified into thee types, i.e., read/read (r/r), read/write (r/w)
and write/write (w/w). Based on memory-consistency protocol, these three ty
pes of sharing generate distinct amounts of data-consistency communication.
Ignoring this factor will mispredict the amount of communication caused by
cross-node sharing and generate wrong decisions in thread migration. This
paper presents a new policy called distinguishing of types sharing (DOTS) f
or DSM systems. The basic concept of this policy is to classify sharing amo
ng threads as r/r, r/w or w/w, each with a different weight, and then evalu
ate communication cost in terms of these weights. Experiments show that con
sidering sharing types is necessary for minimization of data-consistency co
mmunication in DSM. Using DOTS for thread mapping produces more communicati
on reduction than considering only the number of shared pages. (C) 2000 Els
evier Science Inc. All rights reserved.