  Partitioned Global Address Space (PGAS) integrates the concepts of shared
memory programming and the control of data distribution and locality provided
by message passing into a single parallel programming model. The purpose of
allying distributed data with shared memory is to cultivate a locality-aware
shared memory paradigm. PGAS is comprised of a single shared address space,
which is partitioned among threads. Each thread has a portion of the shared
address space in local memory and therefore it can exploit data locality by
mainly doing computation on local data. Unified Parallel C (UPC) is a parallel
extension of ISO C and an implementation of the PGAS model. In this paper, we
evaluate the performance of UPC based on a real-world scenario from Molecular
Dynamics.
