{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,2,6]],"date-time":"2024-02-06T00:07:11Z","timestamp":1707178031590},"reference-count":12,"publisher":"World Scientific Pub Co Pte Ltd","issue":"02","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Parallel Process. Lett."],"published-print":{"date-parts":[[2006,6]]},"abstract":"<jats:p>ARMI is a communication library that provides a framework for expressing fine-grain parallelism and mapping it to a particular machine using shared-memory and message passing library calls. The library is an advanced implementation of the RMI protocol and handles low-level details such as scheduling incoming communication and aggregating outgoing communication to coarsen parallelism. These details can be tuned for different platforms to allow user codes to achieve the highest performance possible without manual modification. ARMI is used by STAPL, our generic parallel library, to provide a portable, user transparent communication layer. We present the basic design as well as the mechanisms used in the current Pthreads\/OpenMP, MPI implementations and\/or a combination thereof. Performance comparisons between ARMI and explicit use of Pthreads or MPI are given on a variety of machines, including an HP-V2200, Origin 3800, IBM Regatta and IBM RS\/6000 SP cluster.<\/jats:p>","DOI":"10.1142\/s0129626406002617","type":"journal-article","created":{"date-parts":[[2006,7,20]],"date-time":"2006-07-20T11:36:02Z","timestamp":1153395362000},"page":"261-280","source":"Crossref","is-referenced-by-count":9,"title":["ARMI: A High Level Communication Library for STAPL"],"prefix":"10.1142","volume":"16","author":[{"given":"Nathan","family":"Thomas","sequence":"first","affiliation":[{"name":"Parasol Lab, Dept. of Computer Science, Texas A&amp;M University, College Station, TX 77843, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Steven","family":"Saunders","sequence":"additional","affiliation":[{"name":"Parasol Lab, Dept. of Computer Science, Texas A&amp;M University, College Station, TX 77843, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Tim","family":"Smith","sequence":"additional","affiliation":[{"name":"Parasol Lab, Dept. of Computer Science, Texas A&amp;M University, College Station, TX 77843, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gabriel","family":"Tanase","sequence":"additional","affiliation":[{"name":"Parasol Lab, Dept. of Computer Science, Texas A&amp;M University, College Station, TX 77843, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Lawrence","family":"Rauchwerger","sequence":"additional","affiliation":[{"name":"Parasol Lab, Dept. of Computer Science, Texas A&amp;M University, College Station, TX 77843, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"219","published-online":{"date-parts":[[2011,11,21]]},"reference":[{"key":"rf3","volume":"32","author":"Bova S.","journal-title":"SIAM News"},{"key":"rf6","volume-title":"Parallel Computer Architecture: A Hardware\/Software Approach","author":"Culler D. E.","year":"1999"},{"key":"rf7","doi-asserted-by":"publisher","DOI":"10.1006\/jpdc.1996.1266"},{"key":"rf8","doi-asserted-by":"publisher","DOI":"10.1006\/jpdc.1996.0108"},{"key":"rf11","volume-title":"Java(TM) Language Specification","author":"Joy B.","year":"2000"},{"key":"rf13","doi-asserted-by":"crossref","unstructured":"L.\u00a0Kale and S.\u00a0Krishnan, Parallel Programming using C++, eds. G.\u00a0Wilson and P.\u00a0Lu (MIT Press, Cambridge, MA, 1996)\u00a0pp. 175\u2013213.","DOI":"10.7551\/mitpress\/5241.003.0009"},{"key":"rf19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"718","DOI":"10.1007\/3-540-44520-X_99","volume":"1900","author":"Nieplocha J.","year":"2001"},{"key":"rf20","volume-title":"OpenMP - C and C++ Application Program Interface","year":"1998"},{"key":"rf26","volume-title":"UK High-End Computing Technology Report","author":"Smith L.","year":"2000"},{"key":"rf27","volume-title":"The C++ Programming Language","author":"Stroustrup B.","year":"2000"},{"key":"rf28","doi-asserted-by":"publisher","DOI":"10.1145\/79173.79181"},{"key":"rf30","doi-asserted-by":"publisher","DOI":"10.1109\/4434.708248"}],"container-title":["Parallel Processing Letters"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.worldscientific.com\/doi\/pdf\/10.1142\/S0129626406002617","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,2,5]],"date-time":"2024-02-05T12:50:48Z","timestamp":1707137448000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.worldscientific.com\/doi\/abs\/10.1142\/S0129626406002617"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2006,6]]},"references-count":12,"journal-issue":{"issue":"02","published-online":{"date-parts":[[2011,11,21]]},"published-print":{"date-parts":[[2006,6]]}},"alternative-id":["10.1142\/S0129626406002617"],"URL":"https:\/\/doi.org\/10.1142\/s0129626406002617","relation":{},"ISSN":["0129-6264","1793-642X"],"issn-type":[{"value":"0129-6264","type":"print"},{"value":"1793-642X","type":"electronic"}],"subject":[],"published":{"date-parts":[[2006,6]]}}}