Michelle Mills Strout
(Shelly Strout)

  I am an Assistant Professor in the High Performance Computing research group, which is part of the Computer Science Department at Colorado State University.

[CV], [Fall 2007 Schedule]

Research
 

My research interests include the areas of compilers, scientific computing, computer architecture, and software engineering, with compilers being my main focus. In many application domains, issues such as performance and reliability co-mingle with algorithmic issues resulting in domain-specific libraries and applications that are difficult to understand, reuse, and maintain. In my research, I investigate and develop compiler technology in order to automate domain-specific analyses and transformations that are currently applied by hand or not at all. I also research dynamic run-time analysis and transformation, which is necessary in many application domains due to the lack of statically available information.

My domain-specific static and dynamic analysis and transformation research applies to regular applications such as successive overrelaxation, irregular applications such as Gauss-Seidel and molecular dynamics computations, automatic differentiation, MPI-programs, and finite element code verification.

My current and future work involves the implementation of such analyses within an intermediate representation-independent analysis toolkit and the development of a domain-specific analysis framework.

Publications

Research Projects
 

OpenAnalysis

SciDAC: Combinatorial Scientific Computing and Petascale Simulations

OpenAD

Students
 

Current Students

Nissa Osheim

David Rostron

Andrew Stone

Kiley Graim

Summer Research Students

Stephanie Dinkins

Jessa Rothenberg

Christie Williams

Recent Program Committees
 

Supercomputing 2008.

Programming Language Design and Implementation, PLDI 2008.

IEEE International Parallel and Distributed Processing Symposium, IPDPS 2008.

ACM SIGPLAN Symposium on Library-Centric Software Design, LCSD 2007.

Scholarship Committee for Grace Hopper Celebration of Women in Computing, GHC 2007.

Tutorial's Chair for Programming Language Design and Implementation, PLDI 2007.

International Conference on Parallel Processing, ICPP 2007.

13th IEEE International Conference on High Performance Computing, HiPC 2006.

Group Meetings
 

Tiling Research Group, Tuesdays 11-12 in 6th floor conference room (Fall 2007)

Static and Dynamic Program Analysis Research Group, was Thursdays 9:30-10:30 (Fall 2007)

Teaching
 

CS 453: Introduction to Compiler Construction (Spring 2008)

CS 653: Static and Dynamic Program Analysis (Spring 2008)

CS 553: Compiler Construction (Fall 2007)

CS 453: Introduction to Compiler Construction (Spring 2007)

CS 653: Static and Dynamic Program Analysis (Spring 2007)

CS 553: Compiler Construction (Fall 2006)

CS 653: Static and Dynamic Program Analysis (Spring 2006)

CS 553: Compiler Construction (Fall 2005)

CSE 30: Computer Organization and Systems Programming
(Summer 2001 at University of California, San Diego)

Beginning Web Programming Course
(Spring 2000 at University High School in San Diego)

Software
 

OpenAnalysis
Ongoing development of representation-independent program analysis.

Data_N_Comp_Reorder
Package for reordering data and computation in sparse matrix computations.

SPIM 7.2.1 with keepstats
Modified version of the SPIM simulator for counting the number of dynamic instructions, reads, writes, and branches.

Convolve Demo
I used this little demo program at an Upward Bound Saturday session to teach junior high and high school students about convolution.

Graphite: Python graphing package
Joe Strout and I developed Graphite for a Software Engineering course. I later made Graphite available on SourceForge.

Handy Python Scripts
Some Python scripts I wrote for running experiments, gathering data, and doing data analysis.

Miscellaneous
 

Some CVS Notes I developed.

Outline for Numerical Analysis Course
I developed this course as a class project for the University Teaching and Learning in Engineering course taught by Noah Finkelstein at UCSD. The project writeup points to some useful resources for Numerical Analysis instructors.
Disclaimer: I have not taught a Numerical Analysis course yet!

CSE Grad Enrichment

  • Demo and slides for Grad Enrichment talk I did on CVS, autoconf, and doxygen (2002)
  • Mathematica Talk I did for Graduate Enrichment Series (1999)

   


Contact Information

mstrout@cs.colostate.edu

Mailing Address: Computer Science Department
1873 Campus Delivery
Fort Collins, CO 80523-1873

Phone: (970)491-7026
Fax: (970)491-2466
Office: 227 University Services Center

 
mstrout@cs.colostate.edu .... November 27, 2007