UPC and OpenMP Parallel Programming and Analysis in PTP with CDT
Making With Eclipse · Standard (25 mins)
Tags: CDT , Tools
Thursday, 14:00, 25 minutes | Cypress
Unified Parallel C (UPC) is an extension of the C programming language for high performance computing on large-scale parallel machines, exploiting the Partitioned Global Address Space (PGAS) paradigm. The Eclipse PTP project (Parallel Tools Platform, http://eclipse.org/ptp) provides tools to benefit the parallel programmer, leveraging features from the CDT (C/C++ Development Tools) project and now including Fortran tools (the Photran project). The original PTP tools benefit MPI (Message Passing Interface, for distributed memory) programming but some analysis and other assistance tools are specifically provided for OpenMP and UPC development.
From new project wizards and location of parallel artifacts, to analysis specific to parallel endeavors, PTP provides several features for the parallel programmer. In this talk I will describe and demonstrate the above, including the state of running and debugging UPC and OpenMP programs in C with CDT. If time permits I will show the analysis features of CDT that we have used to implement these features. Plans and needs for the future will be discussed, as to how PTP and CDT can best support the needs of multicore/cluster/high-performance computing users. The Blue Waters ( http://www.ncsa.illinois.edu/BlueWaters) HPC workbench is built around Eclipse and PTP.
Beth Tibbitts is a veteran of software development in IBM, including APL and LISP, both underdog languages and environments, and eventually C++ and Java, amongst many others. Beth has developed tools for Engineering and Financial Analysis, Expert Systems, debuggers, education, ADHD children, and for making web sites more accessible to persons with disabilities. She became a fan of Eclipse several years ago and has written tools for programmers and users including tools for porting C and C++ programs to Linux. She is a committer on the Parallel Tools Platform Project and now develops tools for high performance computing users, primarily aiding in the development and analysis of parallel programs to increase productivity, making heavy use of the APIs in the CDT. She is also a committer on the X10DT, an Eclipse IDE and tools for the new X10 parallel language.