John Mellor-Crummey is a Senior Faculty Fellow in the Department of
Computer Science, a research faculty appointment commensurate with the
rank of Associate Professor. In 1996, he was named as a member of the
technical steering committee of the CRPC. In 1999, Rice University and
Los Alamos National Laboratory jointly established the Los Alamos Computer
Science Institute (LACSI). Since the founding of LACSI, Mellor-Crummey
has served as a member of its Executive Committee and has led the Institutes
research effort in compilation, systems and performance evaluation.
Mellor-Crummeys research has focused on topics in parallel computing.
His early research focused on debugging and performance analysis of
parallel programs. Techniques he developed for replaying executions
of parallel programs for the purpose of debugging are today used in
environments such as IBM's DejaVu debugger for Java. He is most widely
known for multi-processor synchronization algorithms he developed with
Michael Scott (University of Rochester), which are widely used in practice.
A significant focus of his research since 1993 has been the development
of data-parallel compiler technology to support parallel scientific
computing.
Mellor-Crummey is currently an investigator in an ASCI Level-2 academic
partnership in which he is leading a research effort to develop techniques
to improve scalar performance of ASCI scientific codes. As part of that
effort, he is leading development of HPCView, a performance analysis
tool that is currently being used by application scientists at LANL
and Sandia National Laboratories.
In the early 1990s, Dr. Mellor-Crummey worked with the Center for Analysis
and Prediction of Storms on automatic parallelization of a research
code for mesoscale modeling of severe storms and with a team from Rice
and the University of Houston on the parallelization of CHARMM, a widely
used computational chemistry program developed at Harvard.
He is currently a member of program committees for the upcoming Los
Alamos Institute Computer Science Symposium (Santa Fe, NM), International
Symposium on Distributed Computing 2001 (Lisbon, Portugal), and Parallel
Computing 2001 (Naples, Italy). He was previously a member of the program
committees for Supercomputing (2000), International Conference on Parallel
Processing (1999), International Parallel Computing Conference (1999,1997),
International Conference on Supercomputing (1997, 1996), and the Symposium
on Parallel and Distributed Tools (1996). He was a member of the technical
infrastructure working group at the Workshop on Software Tools for High
Performance Computing Systems (1996), the software tools working group
at the Pasadena Workshop on System Software and Tools for High Performance
Computing Environments (1992), and a NSF Review Panel for Experimental
Software Systems (1997).
Vikram S. Adve and John M. Mellor-Crummey. Using Integer Sets
for Data-Parallel Program Analysis and Optimization, Proceedings
of the Acm Sigplan 98 Conference on Programming Language Design
and Implementation, Montreal, CA, (June 1998).
Vikram S. Adve, Guohua Jin, John M. Mellor-Crummey and Qing Yi.
High Performance Fortran Compilation Techniques for Parallelizing
Scientic Codes, Proceedings of Supercomputing 98: High
Performance Networking and Computing, Orlando, FL, (November 1998).
Bo Lu and John M. Mellor-Crummey. Compiler Optimization of
Implicit Reductions for Distributed- Memory Multiprocessors,
Proceedings of the 12th International Parallel Processing Symposium,
Orlando, FL, (May 1998).
John M. Mellor-Crummey and Vikram S. Adve. Simplifying Control
Flow in Compiler-Generated Parallel Code, International Journal
of Parallel Programming, 26(5), 1998. Special Issue with selected
papers from the 10th International Workshop on Languages and Compilers
for Parallel Computing.
K.D. Cooper, M.W. Hall, R.T. Hood, K. Kennedy, K.S. McKinley, J.M.
Mellor-Crummey, L. Torczon, and S.K. Warren. The ParaScope Parallel
Programming Environment, Proceedings of the IEEE, 81(2):244263,
February 1993.
Other Significant Publications:
John M. Mellor-Crummey and Michael Scott. Algorithms for Scalable
Synchronization on Shared- Memory Multiprocessors, ACM Transactions
on Computer Systems, 9(1):2165, February 1991.
Thomas J. LeBlanc and John M. Mellor-Crummey, Debugging Parallel
Programs with Instant Replay, IEEE Transactions on Computers,
C-36(4):471482, April 1987.
John M. Mellor-Crummey and Thomas J. LeBlanc. A Software Instruction
Counter, Proceedings of the Third International Conference on
Architectural Support for Programming Languages and Operating Systems,
(April 1989), 7886.
John M. Mellor-Crummey, David Whalley and Ken Kennedy. Improving
Memory Hierarchy Performance for Irregular Applications, Proceedings
of the International Conference on Supercomputing, Rhodes, Greece
,(June 1999), 425433. (Selected to appear in a future special
issue of the International Journal of Parallel Programming.)
John M. Mellor-Crummey. On-the-fly Detection of Data Races
for Programs with Nested Fork-Join Parallelism, Proceedings
of Supercomputing 91, Albuquerque, NM, (November 1991), 2433.
Current Collaborators: Vikram Adve (UIUC), Ralph Brickner, Alan
Cox (Rice), Robert Fowler (Rice), Guohua Jin (Rice), Ken Kennedy (Rice),
Gerald Roth (Gonzaga U.), David Whalley (Florida State), Qing Yi (Rice),
Ewing Lusk (ANL), Barbara Chapman (U. of Houston), Jarek Nieplocha (PNNL),
Katherine Yelick (UC Berkeley), Tom Sterling (Caltech/JPL), Bill Gropp
(ANL), Ricky Kendall (Ames Laboratory), Robert Lucas (LBNL), Guang Gao
(U. of Delaware), D. Panda (OSU), and Marianne Winslett (UIUC). As part
of a multiinstitutional effort, I interact with Dennis Gannon (Indiana
U.), Fran Berman and Andrew Chien (UCSD), Carl Kesselman, (USC ISI),
Lennart Johnsson (U. of Houston), Dan Reed and Ruth Aydt (UIUC), Jack
Dongarra and Rich Wolski (U. of Tennessee).
Thesis Advisees: Bo Lu (National Semiconductor), Collin McCurdy
(U. of Wisconsin), Kai Zhang (Compaq), Daniel Chavarria-Miranda
Thesis Advisor: Thomas LeBlanc (University of Rochester)