We address the problem of organizing a set T of shared data into the memory modules of a Distributed Memory Machine (DMM) in order to minimize memory access connicts (i.e. memory contention) during read operations. Previous solutions for this problem can be found as fundamental subprocedures of the PRAM simulation methods on DMM presented during the last years. The eeciency of such solutions relies on the assumption that the set of shared data is relatively small. Indeed, each shared data is replicated in at least two copies; moreover, the number of processors and that of memory modules are polynomial in the number of the shared data. This assumption is reasonable to the aim of PRAM simulations (where the shared data consist only on the shared program variables) but it is not realistic in the case of parallel systems for large public-accessible databases where the number of available resources (such as processors and memory modules) is tipically signiicantly (say exponentially) smaller than the size of the database. As for the latter case, we present a new randomized scheme that given any positive parameter , with high probability, performs any set of r unrelated read operations on the shared data set T in O(logr + log) parallel time with no memory contention using r processors (where each processor consists of O(r 3 +) Boolean gates of fan-in two). The set T is distributed into m DMM memory modules where m is polynomial in r and , and the overall size of the shared memory used by our scheme is not larger than (1 + 1=())jTj) (this means that the data replication can be made arbitrarily small). Our solution is thus very eecient in the case of a large number of shared data. Furthermore, the memory organization scheme and most part of all the computations do not depend on the read requests, so they can be performed once and for all during an oo-line phase.
更多
查看译文
关键词
Parallel Computing,Performance Optimization,Heterogeneous Computing,String Matching,Memory Systems