{"title":"A framework for portable shared memory programming","authors":"M. Schulz, S. Mckee","doi":"10.1109/IPDPS.2003.1213146","DOIUrl":null,"url":null,"abstract":"Widespread adaptation of shared memory programming for high performance computing has been inhibited by a lack of standardization and the resulting portability problems between platforms and APIs. We present the HAMSTER framework, which helps overcome these problems via cross-platform support and easy retargetability to a wide range of programming models. HAMSTER currently supports models ranging from thread APIs to one-sided put/get interfaces, all on top of a single, core middleware architecture. The HAMSTER framework allows programmers to use any of these models, without modification, on top of SMPs, NUMA-like clusters, and Beowulf systems. In addition, our experiments show that HAMSTER achieves this flexibility and portability without sacrificing performance.","PeriodicalId":177848,"journal":{"name":"Proceedings International Parallel and Distributed Processing Symposium","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2003-04-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings International Parallel and Distributed Processing Symposium","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IPDPS.2003.1213146","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
Abstract
Widespread adaptation of shared memory programming for high performance computing has been inhibited by a lack of standardization and the resulting portability problems between platforms and APIs. We present the HAMSTER framework, which helps overcome these problems via cross-platform support and easy retargetability to a wide range of programming models. HAMSTER currently supports models ranging from thread APIs to one-sided put/get interfaces, all on top of a single, core middleware architecture. The HAMSTER framework allows programmers to use any of these models, without modification, on top of SMPs, NUMA-like clusters, and Beowulf systems. In addition, our experiments show that HAMSTER achieves this flexibility and portability without sacrificing performance.