The Hierarchical Memory Machine Model for GPUs
2013 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum
The Discrete Memory Machine (DMM) and the Unified Memory Machine (UMM) are theoretical parallel computing models that capture the essence of the shared memory access and the global memory access of GPUs. The main contribution of this paper is to introduce the Hierarchical Memory Machine (HMM), which consists of multiple DMMs and a single UMM. The HMM is a more practical parallel computing model which reflects the architecture of current GPUs. We present several fundamental algorithms on the
... gorithms on the HMM. First, we show that the sum of Ò numbers can be computed in Ç´Ò Û · ÒÐ Ô · Ð · Ð Ó Òµ time units using Ô threads on the HMM with width Û and latency Ð, and prove that this computing time is optimal. We also show that the direct convolution of Ñ and Ñ · Ò ½ numbers can be done in Ç´Ò Û · ÑÒ Û · ÒÐ Ô · Ð · Ð Ó Ñµ time units using Ô threads on the HMM with DMMs, width Û, and latency Ð. Finally, we prove that our implementation of the direct convolution is time optimal.