{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,1,2]],"date-time":"2023-01-02T19:54:23Z","timestamp":1672689263882},"reference-count":0,"publisher":"World Scientific Pub Co Pte Lt","issue":"04","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Parallel Process. Lett."],"published-print":{"date-parts":[[1995,12]]},"abstract":"<jats:p> In this paper, we develop an automatic compile-time computation and data decomposition technique for distributed-memory machines. Our method handles complex programs containing perfect and non-perfect loop nests with or without loop-carried dependences. Applying our algorithms, a program will be divided into collections (called clusters) of loop nests, such that data redistributions are allowed only between the clusters. Within each cluster of loop nests, decomposition and data locality constraints are formulated as a system of homogeneous linear equations which is solved by polynomial time algorithms. Our algorithm can selectively relax data locality constraints within a cluster to achieve a balance between parallelism and data locality. Such relaxations are guided by exploiting the hierarchical program nesting structures from outer to inner nesting levels to keep the communications at a outer-most level possible. <\/jats:p>","DOI":"10.1142\/s0129626495000485","type":"journal-article","created":{"date-parts":[[2004,11,10]],"date-time":"2004-11-10T06:14:37Z","timestamp":1100067277000},"page":"539-550","source":"Crossref","is-referenced-by-count":5,"title":["AUTOMATIC DATA AND COMPUTATION DECOMPOSITION FOR DISTRIBUTED-MEMORY MACHINES"],"prefix":"10.1142","volume":"05","author":[{"given":"QI","family":"NING","sequence":"first","affiliation":[]},{"given":"VINCENT","family":"VAN DONGEN","sequence":"additional","affiliation":[{"name":"Centre de Recherche Informatique de Montr\u00e9al, 1801 McGill Avenue, Bureau 800, Montreal, Quebec, Canada H3A 2N4, Canada"}]},{"given":"GUANG R.","family":"GAO","sequence":"additional","affiliation":[{"name":"School of Computer Science, McGill University, Montreal, Quebec, Canada H3A 2A7, Canada"}]}],"member":"219","published-online":{"date-parts":[[2011,11,21]]},"container-title":["Parallel Processing Letters"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.worldscientific.com\/doi\/pdf\/10.1142\/S0129626495000485","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,8,7]],"date-time":"2019-08-07T09:33:13Z","timestamp":1565170393000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.worldscientific.com\/doi\/abs\/10.1142\/S0129626495000485"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1995,12]]},"references-count":0,"journal-issue":{"issue":"04","published-online":{"date-parts":[[2011,11,21]]},"published-print":{"date-parts":[[1995,12]]}},"alternative-id":["10.1142\/S0129626495000485"],"URL":"https:\/\/doi.org\/10.1142\/s0129626495000485","relation":{},"ISSN":["0129-6264","1793-642X"],"issn-type":[{"value":"0129-6264","type":"print"},{"value":"1793-642X","type":"electronic"}],"subject":[],"published":{"date-parts":[[1995,12]]}}}