arrow
Return

Teaching distributed memory programming from mental models

delete2018-08-01
delete0
PRE
AI
V
Victor Eijkhout *
DOI:10.1016/j.jpdc.2018.02.029delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Distributed memory programming, typically through the MPI library, is the de facto standard for programming large scale parallelism, with up to millions of individual processes. Its dominant paradigm of Single Program Multiple Data (SPMD) programming is different from threaded and multicore parallelism, to an extent that students have a hard time switching models. In contrast to threaded programming, which allows for a view of the execution with central control and a central repository of data, SPMD programming has a symmetric model where all processes are active all the time, with none privileged, and where data is distributed. This model is counterintuitive to the novice parallel programmer, so care needs to be taken how to instill the proper 'mental model'. Adoption of an incorrect mental model leads to broken or inefficient code. We identify problems with the currently common way of teaching MPI, and propose a structuring of MPI courses that is geared to explicit reinforcing the symmetric model. Additionally, we advocate starting from realistic scenarios, rather than writing artificial code just to exercise newly-learned routines. (C) 2018 Published by Elsevier Inc.
Keywords:
Parallel programming
Teaching parallel programming
Distributed memory
Mental models
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Journal of Parallel and Distributed Computing cover
Journal of Parallel and Distributed Computing
IF:
4
Papers:
3.8K
Citations:
4.8K

Organization

U
university of texas system
Scholars:
18.5W
Papers: 15.6W
Citations: 210
Cited Papers

Cited Papers

Is serum bilirubin associated with the severity of Guillain–Barré syndrome?
err2017-12-01
err0
PREAI
errXiaohong Li; Wenchao Li; Xiang Shi; Lijun Mo; Yuzhen Luo; Liuqun Qin; Zheng Yang; Wuning Mo
errShare
errSave
errShare
errSave
errShare
errSave