Linda Torczon's research interests include code generation, interprocedural
dataflow analysis and optimization, and programming environments. In
the code generation realm, she published a set of improvements to graph
coloring register allocation. She is also one of the key implementors
of an optimizing compiler for Fortran. In the area of interprocedural
analysis and optimization, she developed techniques for interprocedural
constant propagation and recompilation analysis. She also completed
a study on the effectiveness of several interprocedural constant propagation
techniques and collaborated on a study of the effectiveness of inline
substitution. In the programming environment arena, she was one of the
driving forces behind the ParaScope programming environment project
at Rice. She was a principal architect of the framework for whole program
analysis in the ParaScope programming environment. Techniques that she
developed are widely used in industrial and research compilers.
From 1990 to 2000, Dr. Torczon served as executive director of the
Center for Research on Parallel Computation (CRPC), a National Science
Foundation Science and Technology Center. In this capacity, she coordinated
extensive research efforts, education and outreach programs, and technology
transfer activities (http://www.crpc.rice.edu/CRPC).
She is currently editing the CRPC Handbook of Parallel Computation,
intended as a resource for computer science and application researchers,
as well as for computational science and parallel computing education
and training.
Dr. Torczon has been involved in activities intended to increase the
number of women and underrepresented minorities entering mathematics
and science related fields, particularly the field of computational
science and engineering. With Ken Kennedy, she has initiated several
CRPC outreach activities, including the CRPC GirlTECH program and the
Girl Games effort. She has made presentations to students participating
in Expanding Your Horizons, The Galveston Bay Project, and Girl Games
programs that encourage middleschool girls to pursue technical careers.
She has made presentations to K12 teachers as part of GirlTECH
and other Rice University programs aimed at improving mathematical and
computational skills among K12 teachers. She served on the Shared
Decision Making Team of The Rice School/La Escuela Rice, a Houston Independent
School District K8 laboratory school. Finally, as tutorial chair
for the ACM SIGPLAN Conference on Programming Language Design and Implementation,
she directed an NSF-funded tutorial program that brought faculty members
from undergraduate institutions, particularly womens colleges
and institutions with large minority enrollments, to the conference
and tutorials.
With Keith Cooper, Linda Torczon is co-authoring Engineering a Compiler,
which is intended as a textbook for senior-level courses on compiler
construction and as a resource for compiler implementors.
Dr. Torczon has served on the Program Committee for ACM SIGPLAN PLDI
Conference (1994 & 2000), on the Tutorial Committee of Supercomputing
97, as Tutorial Chair of the ACM SIGPLAN PLDI Conference (1997), as
Treasurer of the ACM SIGPLAN PLDI Conference (1996), on the NSF Postdoctoral
Research Associates Program Panel for the ASC Division (January 1995),
and on the NSF Postdoctoral Panel for the New Technologies Program of
the ASC Division (February 1994).
How to Build an Interference Graph, (with K. D. Cooper
and T. J. Harvey), Software-Practice and Experience, April 1998.
Interprocedural Analysis and Optimization, (with K.
D. Cooper, M. W. Hall, and K. Kennedy), Communications on Pure and
Applied Mathematics, 48, 1996, pages 9471003.
Improvements to Graph Coloring Register Allocation,
(with P. Briggs and K. D. Cooper), ACM Transactions on Programming
Languages and Systems (Toplas), 16 (1994), pp. 428455.
Interprocedural Constant Propagation: A Study of Jump Function
Implementations, (with D. Grove), Proceedings of the ACM SIGPLAN
93 Conference on Programming Language Design and Implementation (PLDI),
SIGPLAN Notices, 28 (1993), pp. 9099.
Interprocedural Optimization: Eliminating Unnecessary Recompilation,
(with M. Burke), ACM Transactions on Programming Languages and Systems
(Toplas), 15 (1993), pp. 367399.
Other Significant Publications and Patents:
Compilers, (with K.D. Cooper and K. Kennedy), article
in Encyclopedia of Physical Science and Technology, 3rd Edition, Academic
Press, to appear, 2001.
An Efficient Representation for Sparse Sets, (with P.
Briggs), ACM Letters on Programming Languages and Systems, 2 (1993),
pp. 5969.
The ParaScope Parallel Programming Environment, (with
K. D. Cooper, M. W. Hall, R. T. Hood, K. Kennedy, K. S. McKinley,
J. Mellor-Crummey, and S. K. Warren), Proceedings of the IEEE, 81(2),
February 1993, pp. 244263.
Rematerialization, (with P. Briggs and K. D. Cooper),
Proceedings of the ACM SIGPLAN 92 Conference on Programming Language
Design and Implementation, SIGPLAN Notices, 27(7), July 1992, pp.
311321.
Digital Computer Register Allocation and Code Spilling Using
Interference Graph Coloring, (with P. Briggs, K. D. Cooper,
and K. Kennedy), Patent Number: 5.249.295.
Current Collaborators: As executive director of both the CRPC
and the Los Alamos Computer Science Institute (LACSI), I have interacted
with researchers at Argonne National Laboratory (ANL), Caltech, Los
Alamos National Laboratory (LANL), Rice University, Syracuse University,
University of Houston, University of Illinois at Urbana-Champaign, University
of Tennessee, and the University of Texas. For the sake of brevity,
I have not exhaustively listed members of the CRPC or LACSI efforts.
Other collaborators include: John Bennett, Bradley Broom, Keith Cooper,
Rob Fowler, Tim Harvey, Ken Kennedy, John Mellor-Crummey, and Devika
Subramanian (Rice); Dennis Gannon (Indiana University); Fran Berman
and Andrew Chien (UCSD); Carl Kesselman (ISI, USC); Jack Dongarra and
Rich Wolski (University of Tennessee); John Reynders (Sun), Kathryn
McKinley (University of Massachusetts), and all of the authors and editors
of the CRPC Handbook of Parallel Computation.