Programming Aid Tool for Detecting Common Mistakes of Novice Programmers in OpenMP Code
Authors: Jae Young Park, Seung Wook Lee, Jong Tae Kim
Abstract:
OpenMP is an API for parallel programming model of shared memory multiprocessors. Novice OpenMP programmers often produce the code that compiler cannot find human errors. It was investigated how compiler coped with the common mistakes that can occur in OpenMP code. The latest version(4.4.3) of GCC is used for this research. It was found that GCC compiled the codes without any errors or warnings. In this paper the programming aid tool is presented for OpenMP programs. It can check 12 common mistakes that novice programmer can commit during the programming of OpenMP. It was demonstrated that the programming aid tool can detect the various common mistakes that GCC failed to detect.
Keywords: Parallel programming, OpenMP, programming aid.
Digital Object Identifier (DOI): doi.org/10.5281/zenodo.1071834
Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1552References:
[1] Rohit Chandra, Leonardo Dagum, Dave Kohr, Dror Maydan, Jeff McDonald, and Ramesh Menon "Parallel Programming in OpenMP", Morgan Kaufmann Publishers, 2001.
[2] Haoqiang Jin, Michael Frumkin and Jerry Yan, "Automatic Generation of OpenMP Directives and Its Application to Computational Fluid Dynamic Codes", in NASA Ames Research Center. ISHPC 2000, LNCS, 2000.
[3] Michael S┬¿uß and Claudia Leopold, "Common Mistakes in OpenMP and How to Avoid Them," IWOMP 2005/2006, LNCS 4315, pp. 312-323,2008.
[4] http://gcc.gnu.org/gcc-4.4/.
[5] http://openmp.org/examples/Using-OpenMP-Examples-Distr.zip.
[6] Babara Chapman, Gabriele Jost and Ruud van der Pas "Using OpenMP", 2007,pp.268.