Craig Edward Rasmussen

dblp:81/4498 · DBLP profile ↗
← Back
9ranked-venue papers
2as first author
0since 2021 · last 2009
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 9 · 2 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
1 paper
Parallel and multicore computing · 100%
Software engineering, system software, and programming languages
1 paper
Program analysis · 87% Software maintenance and evolution · 13%

Topics — the 4 heaviest of 5, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Parallel and multicore computing
parallel programming environment
0.112006
S03 - Application development using eclipse and the parallel tools platform · SC 2006
Program analysis
dynamic analysis
0.012000
A Tool Framework for Static and Dynamic Analysis of Object-Oriented Software with Templates · SC 2000
Program analysis
static analysis
0.012000
A Tool Framework for Static and Dynamic Analysis of Object-Oriented Software with Templates · SC 2000
Parallel and multicore computing
MPI
0.012006
S03 - Application development using eclipse and the parallel tools platform · SC 2006

Methods — techniques the papers use, named apart from their topics

parallel debugging · 0.1code refactoring · 0.1template handling · 0.0program database toolkit · 0.0
YearPublicationVenuePosition
2009 An integrated approach to improving the parallel application development process
abstract
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.
Gregory R. Watson, Craig Edward Rasmussen, Beth Tibbitts
IPDPS2
2006 S03 - Application development using eclipse and the parallel tools platform
abstract
The Eclipse Parallel Tools Platform (PTP) is an Eclipse Foundation Technology Project (http://eclipse.org/ptp) that allows parallel tools to be integrated into the Eclipse environment.Eclipse offers many features you'd expect from a commercial quality IDE: a syntax-highlighting editor, incremental code compilation, a source-level debugger, support for source control systems such as CVS and Subversion, code refactoring, and support for multiple languages, including C, C++, and Fortran.PTP provides a highly integrated environment designed for parallel application development. It provides a portable open-source IDE capable of supporting a wide range of parallel architectures and runtime systems; a scalable parallel debugger; support for the integration of a wide range of parallel tools; and an environment that simplifies the end-user interaction with parallel systems.This tutorial aims to introduce participants to the Eclipse platform and provide hands-on experience in developing and debugging parallel applications using Eclipse and PTP with C, Fortran, and MPI.
Greg Watson, Craig Edward Rasmussen, Beth Tibbitts
SC2
2006 Bridging the language gap in scientific computing: the Chasm approach
abstract
Abstract Chasm is a toolkit providing seamless language interoperability between Fortran 95 and C++. Language interoperability is important to scientific programmers because scientific applications are predominantly written in Fortran, while software tools are mostly written in C++. Two design features differentiate Chasm from other related tools. First, we avoid the common‐denominator type systems and programming models found in most Interface Definition Language (IDL)‐based interoperability systems. Chasm uses the intermediate representation generated by a compiler front‐end for each supported language as its source of interface information instead of an IDL. Second, bridging code is generated for each pairwise language binding, removing the need for a common intermediate data representation and multiple levels of indirection between the caller and callee. These features make Chasm a simple system that performs well, requires minimal user intervention and, in most instances, bridging code generation can be performed automatically. Chasm is also easily extensible and highly portable. Copyright © 2005 John Wiley & Sons, Ltd.
Craig Edward Rasmussen, Matthew J. Sottile, Sameer Shende, Allen D. Malony
Concurr. Comput. Pract. Exp.1
2006 Rapid prototyping frameworks for developing scientific applications: A case study
Christopher D. Rickett, Sung-Eun Choi, Craig Edward Rasmussen, Matthew J. Sottile
J. Supercomput.3
2005 Symmetric Data Objects and Remote Memory Access Communication for Fortran-95 Applications
Jarek Nieplocha, Doug Baxter, Vinod Tipparaju, Craig Edward Rasmussen, Robert W. Numrich
Euro-Par4
2005 Performance technology for parallel and distributed component software
abstract
Abstract This work targets the emerging use of software component technology for high‐performance scientific parallel and distributed computing. While component software engineering will benefit the construction of complex science applications, its use presents several challenges to performance measurement, analysis, and optimization. The performance of a component application depends on the interaction (possibly nonlinear) of the composed component set. Furthermore, a component is a ‘binary unit of composition’ and the only information users have is the interface the component provides to the outside world. A performance engineering methodology and development approach is presented to address evaluation and optimization issues in high‐performance component environments. We describe a prototype implementation of a performance measurement infrastructure for the Common Component Architecture (CCA) system. A case study demonstrating the use of this technology for integrated measurement, monitoring, and optimization in CCA component‐based applications is given. Copyright © 2005 John Wiley & Sons, Ltd.
Allen D. Malony, Sameer Shende, Nick Trebon, Jaideep Ray, Robert C. Armstrong, Craig Edward Rasmussen, Matthew J. Sottile
Concurr. Pract. Exp.6
2004 Co-array Python: A Parallel Extension to the Python Language
Craig Edward Rasmussen, Matthew J. Sottile, Jarek Nieplocha, Robert W. Numrich
Euro-Par1
2002 A network-failure-tolerant message-passing system for terascale clusters
abstract
The Los Alamos Message Passing Interface (LA-MPI) is an end-to-end network-failure-tolerant message-passing system designed for terascale clusters. LA-MPI is a standard-compliant implementation of MPI designed to tolerate network-related failures including I/O bus errors, network card errors, and wire-transmission errors. This paper details the distinguishing features of LA-MPI, including support for concurrent use of multiple types of network interface, and reliable message transmission utilizing multiple network paths and routes between a given source and destination. In addition, performance measurements on production-grade platforms are presented.
Richard L. Graham, Sung-Eun Choi, David J. Daniel, Nehal N. Desai, Ron Minnich, Craig Edward Rasmussen, L. Dean Risinger, Mitchel W. Sukalski
ICS6
2000 A Tool Framework for Static and Dynamic Analysis of Object-Oriented Software with Templates
abstract
The developers of high-performance scientific applications often work in complex computing environments that place heavy demands on program analysis tools. The developers need tools that interoperate, are portable across machine architectures, and provide source-level feedback. In this paper, we describe a tool framework, the Program Database Toolkit (PDT), that supports the development of program analysis tools meeting these requirements. PDT uses compile-time information to create a complete database of high-level program information that is structured for well-defined and uniform access by tools and applications. PDT’s current applications make heavy use of advanced features of C++, in particular, templates. We describe the toolkit, focussing on its most important contribution -- its handling of templates -- as well as its use in existing applications.
Kathleen A. Lindlan, Janice E. Cuny, Allen D. Malony, Sameer Shende, Bernd Mohr, Reid D. Rivenburgh, Craig Edward Rasmussen
SC7