The development of parallel applications is becoming increasingly important to a broad range of industries. Traditionally, parallel programming was a niche area that was primarily exploited by scientists trying to model extremely complicated physical phenomenon. It is becoming increasingly clear, however, that continued hardware performance improvements through clock scaling and feature-size reduction are simply not going to be achievable for much longer. The hardware vendor's approach to addressing this issue is to employ parallelism through multi-processor and multi-core technologies. While there is little doubt that this approach produces scaling improvements, there are still many significant hurdles to be overcome before parallelism can be employed as a general replacement to more traditional programming techniques. The Parallel Tools Platform (PTP) Project was created in 2005 in an attempt to provide developers with new tools aimed at addressing some of the parallel development issues. Since then, the introduction of a new generation of peta-scale and multi-core systems has highlighted the need for such a platform. In this paper, we describe some of the challenges facing parallel application developers, present the current state of PTP, and provide a simple case study that demonstrates how PTP can be used to locate a potential deadlock situation in an MPI code.
BladeRunner is a research project that explores the use of intentional and code generative approaches to facilitate programming in MPI (Message Passing Interface) for parallel and distributed programming. The BladeRunner development environment provides an interactive visual approach based on figures representing higher level abstractions of MPI artifacts. This, along with direct manipulation of visual abstractions, allows the user to both view and express coding intentions clearly and rapidly. As a constructive programming paradigm, direct manipulation of figures translates into coding actions reflected into generated program code. Thus, programming focus is higher level, on visual representations for MPI programming concepts, and evolution of program state reflected in diagrams, instead of syntax or language structure details.We describe the BladeRunner prototype tool, built upon the Eclipse open-source platform, and discuss the vision for this work.
Maintenance is really the normal state of an XP project" -Beck. Thus porting is a natural candidate for eXtreme Programming and we present a novel tool-based XP methodology for porting C/C++ programs. The structure provided by our tooling is designed for scalability, to enable XP on large projects porting enterprise-scale codebases. Overall planning and iteration planning of the methodology are assisted by a novel, first-of-its-kind migration orchestrator tool. Automated test, debugging, and audit function are provided as unified support by our refactoring tool framework. We focus on the orchestrator tool and offer preliminary benchmarks with encouraging results.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.