{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:48:49Z","timestamp":1750308529244,"version":"3.41.0"},"reference-count":23,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2015,6,29]],"date-time":"2015-06-29T00:00:00Z","timestamp":1435536000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Model. Comput. Simul."],"published-print":{"date-parts":[[2015,12,28]]},"abstract":"<jats:p>The design of high-performance computing architectures requires performance analysis of large-scale parallel applications to derive various parameters concerning hardware design and software development. The process of performance analysis and benchmarking an application can be done in several ways with varying degrees of fidelity. One of the most cost-effective ways is to do a coarse-grained study of large-scale parallel applications through the use of program skeletons. The concept of a \u201cprogram skeleton\u201d that we discuss in this article is an abstracted program that is derived from a larger program where source code that is determined to be irrelevant is removed for the purposes of the skeleton. In this work, we develop a semiautomatic approach for extracting program skeletons based on compiler program analysis. We demonstrate correctness of our skeleton extraction process by comparing details from communication traces, as well as show the performance speedup of using skeletons by running simulations in the SST\/macro simulator.<\/jats:p>","DOI":"10.1145\/2778888","type":"journal-article","created":{"date-parts":[[2015,6,29]],"date-time":"2015-06-29T18:10:42Z","timestamp":1435601442000},"page":"1-24","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Static Analysis Techniques for Semiautomatic Synthesis of Message Passing Software Skeletons"],"prefix":"10.1145","volume":"26","author":[{"given":"Matthew","family":"Sottile","sequence":"first","affiliation":[{"name":"Research and Engineering, Galois, Inc., Portland, OR"}]},{"given":"Jason","family":"Dagit","sequence":"additional","affiliation":[{"name":"Research and Engineering, Galois, Inc., Portland, OR"}]},{"given":"Deli","family":"Zhang","sequence":"additional","affiliation":[{"name":"University of Central Florida, Orlando, FL"}]},{"given":"Gilbert","family":"Hendry","sequence":"additional","affiliation":[{"name":"Sandia National Laboratories, Livermore, CA"}]},{"given":"Damian","family":"Dechev","sequence":"additional","affiliation":[{"name":"Sandia National Laboratories, University of Central Florida, Orlando, FL"}]}],"member":"320","published-online":{"date-parts":[[2015,6,29]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.881716"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1006\/jpdc.2001.1800"},{"key":"e_1_2_1_3_1","volume-title":"Joseph James Gebis, Parry Husbands, Kurt Keutzer, David A. Patterson, William Lester Plishker, John Shalf, Samuel Webb Williams, and Katherine A. Yelick.","author":"Asanovic Krste","year":"2006","unstructured":"Krste Asanovic , Ras Bodik , Bryan Christopher Catanzaro , Joseph James Gebis, Parry Husbands, Kurt Keutzer, David A. Patterson, William Lester Plishker, John Shalf, Samuel Webb Williams, and Katherine A. Yelick. 2006 . The Landscape of Parallel Computing Research: A View from Berkeley. Technical Report UCB\/EECS-2006-183. EECS Department, University of California , Berkeley. Krste Asanovic, Ras Bodik, Bryan Christopher Catanzaro, Joseph James Gebis, Parry Husbands, Kurt Keutzer, David A. Patterson, William Lester Plishker, John Shalf, Samuel Webb Williams, and Katherine A. Yelick. 2006. The Landscape of Parallel Computing Research: A View from Berkeley. Technical Report UCB\/EECS-2006-183. EECS Department, University of California, Berkeley."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/125826.125925"},{"key":"e_1_2_1_5_1","volume-title":"Automated and Algorithmic Debugging Lecture Notes in Computer Science","author":"Ball Thomas","year":"1941","unstructured":"Thomas Ball and Susan Horwitz . 1993. Slicing programs with arbitrary control-flow . In Automated and Algorithmic Debugging Lecture Notes in Computer Science , Vol. 749 . Springer , Berlin , 206--222. 10.1007\/BFb00 1941 0. Thomas Ball and Susan Horwitz. 1993. Slicing programs with arbitrary control-flow. In Automated and Algorithmic Debugging Lecture Notes in Computer Science, Vol. 749. Springer, Berlin, 206--222. 10.1007\/BFb0019410."},{"key":"e_1_2_1_6_1","unstructured":"Keith Cooper and Linda Torczon. 2003. Engineering a Compiler. Morgan Kaufmann.  Keith Cooper and Linda Torczon. 2003. Engineering a Compiler. Morgan Kaufmann."},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.5555\/645560.658889"},{"key":"e_1_2_1_8_1","first-page":"57","article-title":"A simulator for large-scale parallel architectures","volume":"1","author":"Janssen Curtis L.","year":"2010","unstructured":"Curtis L. Janssen , Helgi Adalsteinsson , Scott Cranford , Joseph P. Kenny , Ali Pinar , David A. Evensky , and Jackson Mayo . 2010 . A simulator for large-scale parallel architectures . International Journal of Parallel and Distributed Systems 1 , 2, 57 -- 73 . DOI:http:\/\/dx.doi.org\/10.4018\/jdst.2010040104 10.4018\/jdst.2010040104 Curtis L. Janssen, Helgi Adalsteinsson, Scott Cranford, Joseph P. Kenny, Ali Pinar, David A. Evensky, and Jackson Mayo. 2010. A simulator for large-scale parallel architectures. International Journal of Parallel and Distributed Systems 1, 2, 57--73. DOI:http:\/\/dx.doi.org\/10.4018\/jdst.2010040104","journal-title":"International Journal of Parallel and Distributed Systems"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.5555\/646669.701233"},{"key":"e_1_2_1_10_1","unstructured":"Lawrence Livermore National Laboratory. 2014. ROSE Compiler. Retrieved June 6 2015 from http:\/\/www.roseCompiler.org.  Lawrence Livermore National Laboratory. 2014. ROSE Compiler. Retrieved June 6 2015 from http:\/\/www.roseCompiler.org."},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.846297"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICPP.2008.71"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1109\/CLUSTR.2006.311852"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/CLUSTR.2003.1253323"},{"key":"e_1_2_1_15_1","unstructured":"Sandia National Laboratories. 2014a. HPCG. Retrieved June 6 2015 from https:\/\/software.sandia.gov\/hpcg\/html\/index.html.  Sandia National Laboratories. 2014a. HPCG. Retrieved June 6 2015 from https:\/\/software.sandia.gov\/hpcg\/html\/index.html."},{"key":"e_1_2_1_16_1","volume-title":"SST: The Structural Simulation Toolkit. Retrieved","author":"Sandia National Laboratories.","year":"2014","unstructured":"Sandia National Laboratories. 2014 b. SST: The Structural Simulation Toolkit. Retrieved June 6, 2015, from http:\/\/sst.sandia.gov\/. Sandia National Laboratories. 2014b. SST: The Structural Simulation Toolkit. Retrieved June 6, 2015, from http:\/\/sst.sandia.gov\/."},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2011.300"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.5555\/1898953.1899017"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2486092.2486094"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2008.4536405"},{"key":"e_1_2_1_21_1","volume-title":"Proceedings of the ACM\/IEEE Conference on Supercomputing (SC'08)","author":"Susukita Ryutaro","year":"2008","unstructured":"Ryutaro Susukita , Hisashige Ando , Mutsumi Aoyagi , Hiroaki Honda , Yuichi Inadomi , Koji Inoue , Shigeru Ishizuki , Yasunori Kimura , Hidemi Komatsu , Motoyoshi Kurokawa , Kazuaki J. Murakami , Hidetomo Shibamura , Shuji Yamamura , and Yunqing Yu . 2008 . Performance prediction of large-scale parallel system and application using macro-level simulation . In Proceedings of the ACM\/IEEE Conference on Supercomputing (SC'08) . IEEE, Los Alamitos, CA, 20:1--20:9. Ryutaro Susukita, Hisashige Ando, Mutsumi Aoyagi, Hiroaki Honda, Yuichi Inadomi, Koji Inoue, Shigeru Ishizuki, Yasunori Kimura, Hidemi Komatsu, Motoyoshi Kurokawa, Kazuaki J. Murakami, Hidetomo Shibamura, Shuji Yamamura, and Yunqing Yu. 2008. Performance prediction of large-scale parallel system and application using macro-level simulation. In Proceedings of the ACM\/IEEE Conference on Supercomputing (SC'08). IEEE, Los Alamitos, CA, 20:1--20:9."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2007.370235"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10766-005-3582-6"}],"container-title":["ACM Transactions on Modeling and Computer Simulation"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2778888","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2778888","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T18:55:51Z","timestamp":1750272951000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2778888"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,6,29]]},"references-count":23,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2015,12,28]]}},"alternative-id":["10.1145\/2778888"],"URL":"https:\/\/doi.org\/10.1145\/2778888","relation":{},"ISSN":["1049-3301","1558-1195"],"issn-type":[{"type":"print","value":"1049-3301"},{"type":"electronic","value":"1558-1195"}],"subject":[],"published":{"date-parts":[[2015,6,29]]},"assertion":[{"value":"2014-01-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-10-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-06-29","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}