Skip to Main Content
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.