Calvin Lin
Associate Professor of Computer Sciences
University of Texas, Austin
Home
Research Interests
Publications
Teaching
Turing Scholars Program
CS315H
Dean's Scholar Seminar
Students
Adam Brown
Walter Chang
Ben Hardekopf
Paul Navratíl
Alison Norman
Teck B. Tok
Ibrahim Hur (PhD 2006)
Sam Guyer (PhD 2003)
Rich Cardone (PhD 2002)
Daniel Jiménez (PhD 2002)
Kent Spaulding (MS 1998)
Frank Kuehndel (MS 1998)
Publications
Journal Publications
Memory Scheduling for Modern Microprocessors
with I. Hur
ACM Transactions on Computer Systems,
25(4), December, 2007.
Adaptive History-Based Memory Schedulers for Modern Microprocessors
with I. Hur
IEEE Micro "Top picks issue,"
vol 26(1), 2006, pp. 22-29.
Error Checking with Client-Driven Pointer Analysis
with S. Guyer
Science of Computer Programming Journal,
vol 58, 2005, pp. 83-114.
Broadway: A Compiler for Exploiting the Domain-Specific Semantics of Software Libraries
with S. Guyer
Proceedings of the IEEE,
Special issue on program generation, optimization, and adaptation. 93(2), 2005, pp. 342-357.
Scaling to the End of Silicon with EDGE Architectures
with D. Burger, S. Keckler, M. Dahlin, L. John, K. McKinley, C. Moore, J. Burrill, R. McDonald, and W. Yoder.
IEEE Computer,
37(7), July, 2004, pp. 44-55.
Neural Methods for Dynamic Branch Prediction
with D. Jiménez
ACM Transactions on Computer Systems,
20(4), November 2002, pp. 369-397.
ZPL: A Machine Independent Programming Language for Parallel Computers
with B. Chamberlain, S. Choi, E. Lewis, L. Snyder, and W. Weathersby
IEEE Transactions on Software Engineering,
26(3), March 2000. Special Issue on Architecture-Independent Languages and Software Tools for Parallel Processing. pp. 197-211.
Volume Leases for Consistency in Large-Scale Systems
with J.Yin, L. Alvisi, and M. Dahlin
IEEE Transactions on Knowledge and Data Engineering,
11(4), July/August 1999. pp. 563-577.
The Case for High Level Parallel Programming in ZPL
with B. Chamberlain, S. Choi, E. Lewis, L. Snyder, and W. Weathersby
IEEE Computational Science and Engineering,
5(3), July-September 1998, pp. 76-86.
Abstractions for Portable, Scalable Parallel Programming
with G. Alverson, W. Griswold, D. Notkin and L. Snyder
IEEE Trans. on Parallel and Distributed Systems,
9(1), 1998, pp. 1-17.
A Portable Implementation of SIMPLE
with L. Snyder
International Journal of Parallel Programming,
20(5), 1991, pp. 363-401.
Conference and Workshop Papers
A Comprehensive Approach to DRAM Power Management
with Ibrahim Hur.
International Symposium on High-Performance Computer Architecture},
February, 2008, pp. 305-316.
Dynamic Ray Scheduling to Improve Ray Coherence and Bandwidth Utilization
with Paul Navratil, Don Fussell, and Bill Mark.
Symposium on Interactive Ray Tracing
September, 2007, pp. 95-104.
Exploiting Pointer and Location Equivalence to Optimize Pointer Analysis
with Ben Hardekopf
2007 Static Analysis Symposium
August, 2007, pp. 265-280.
The Ant and the Grasshopper: Fast and Accurate Pointer Analysis for Millions of Lines of Code
with Ben Hardekopf
2007 ACM Conference on Programming Language Design and Implementation,
June, 2007, pp. 290-299.
(Best Paper Award)
Memory Prefetching Using Adaptive Stream Detection
with Ibrahim Hur
39th International Symposium on Microarchitecture,
December, 2006, pp. 397-408.
Efficient Flow-Sensitive Interprocedural Data-flow Analysis in the Presence of Pointers
with Teck Bok Tok and Samuel Z. Guyer
Compiler Construction,
Springer-Verlag LNCS 3923, 2006, pp. 17-31.
Fault Aware Instruction Placement for Static Architectures
with Premkishore Shivakumar, Divya P. Gulati, and Stephen W. Keckler
1st Workshop on High Performance Computing Reliability Issues,
February, 2005.
Adaptive History-Based Memory Schedulers
with Ibrahim Hur
37th International Symposium on Microarchitecture,
December, 2004, pp. 343-354.
(Best Paper Award)
Compiler-Generated Staggered Checkpointing
with Alison N. Norman and Sung-Eun Choi
7th ACM Workshop on Languages, Compilers, and Runtime Support for Scalable Systems,
October, 2004.
Static Placement, Dynamic Issue (SPDI) Scheduling for EDGE Architectures
with Ramadass Nagarajan, Sundeep K. Kushwaha, Doug Burger, Stephen W. Keckler, Kathryn S. McKinley
Int'l Conference on Parallel Architectures and Compilation Techniques,
October, 2004, pp. 74-84.
Client-Driven Pointer Analysis
with S. Guyer
10th Annual International Static Analysis Symposium,
June, 2003. pp. 214-236.
Using Mixins to Build Flexible Widgets
with R. Cardone, A. Brown, and S. McDirmid
1st International Conference on Aspect-Oriented Software Development
April, 2002. pp. 76-85.
Branch Path Realiasing
with D. Jiménez
4th ACM Workshop on Feedback-Directed and Dynamic Optimization,
December, 2001. pp. 83-92.
Boolean Formula-based Branch Prediction for Future Technologies
with D. Jiménez and H.L. Hanson
Int'l Conference on Parallel Architectures and Compilation Techniques,
September, 2001. pp. 97-106.
Customizing Software Libraries for Performance Portability
with E. Berger and S. Guyer
10th SIAM Conference on Parallel Processing for Scientific Computing,
March, 2001.
Comparing Frameworks and Layered Refinement
with R. Cardone
Proceedings of the 23rd Int'l Conference on Software Engineering,
May, 2001. pp. 285-294.
Dynamic Branch Prediction with Perceptrons
with D. Jiménez
Proceedings of the 7th Int'l Symposium on High Performance Computer Architecture,
January, 2001. pp. 197-206.
The Impact of Delay on the Design of Branch Predictors
with D. Jiménez and S. Keckler.
Proceedings of the 33rd International Symposium on Microarchitecture,
December, 2000. pp. 67-76.
Broadway: A Software Architecture for Scientific Computing
with S. Guyer
The Architecture of Scientific Software,
R.F. Boisvert and P.T.P. Tang, editors, Kluwer Academic Press, 2000, pp. 175-192.
Optimizing the Use of High Performance Software Libraries
with S. Guyer
Languages and Compilers for Parallel Computing,
S. Midkiff, J. Moreira, M. Gupta, S. Chatterjee, J. Ferrante, J. Prins, W. Pugh, and C. Tseng eds. Springer-Verlag 2002, pp. 227-243.
Modeling the Cache Effects of Interprocessor Communication
with I.Hur
Parallel and Distributed Computing and Systems (PDCS'99),
November, 1999, pp. 938-943. (
Long version
in submission).
An Annotation Language for Optimizing Software Libraries
with S.Guyer
Second Conference on Domain Specific Languages,
October, 1999, pp. 39-53.
Hierarchical Cache Consistency in a WAN
with J.Yin, L. Alvisi, and M. Dahlin
Second USENIX Symposium on Internet Technologies and Systems,
October, 1999, pp, 13-24.
Regions: An Abstraction for Expressing Array Computation
with B. Chamberlain, E. Lewis, and L. Snyder
ACM International Conference on Array Programming Languages,
August, 1999, pp. 41-49.
Using Leases to Support Server-Driven Consistency in Large-Scale Systems
with J.Yin, L. Alvisi, and M. Dahlin
Proceedings of the 18th IEEE International Conference on Distributed Computing Systems,
Amsterdam, The Netherlands, May 1998, pp. 285-294.
The Implementation and Evaluation of Fusion and Contraction in Array Languages
with E Lewis and L. Snyder
1998 ACM SIGPLAN Conference on Programming Language Design and Implementation,
Montreal, June 1998, pp 50-59.
A Flexible Class of Parallel Matrix Multiplication Algorithms
with J. Gunnels, G. Morrow and R. van de Geijn
12th International Parallel Processing Symposium and 9th Symposium on Parallel and Distributed Processing,
Orlando, March 1998.
ZPL's WYSIWYG Performance Model
with B. Chamberlain, S. Choi, E Lewis, L. Snyder and W. Weathersby
Third International Workshop on High-Level Parallel Programming Models and Suportive Environments,
Orlando, March 1998, pp. 50-61.
Seuss: What the Doctor Ordered
with L. Alvisi, R. Joshi, and J. Misra
Second International Workshop on Software Engineering for Parallel and Distributed Systems,
Boston, 1997, pp 284-290.
Factor-Join: A Unique Approach to Compiling Array Languages for Parallel Machines
with B. Chamberlain, S. Choi, E. Lewis, L. Snyder, and W. Weathersby
Languages and Compilers for Parallel Computing,
D. Sehr, U. Banerjee, D. Gelernter, A. Nicolau and D. Padua eds., Springer-Verlag 1996, pp. 481-500.
The Portable Parallel Implementation of Two Novel Mathematical Biology Algorithms in ZPL
with M. D. Dikaiakos, D. Manoussaki, and D. Woodward
9th Int'l Conf. on Supercomputing,
Barcelona, 1995, pp. 365-374.
A Portable Parallel N-Body Solver
with E. Lewis, L. Snyder and G. Turkiyyah
Proceedings of the 7th SIAM Conference on Parallel Processing for Scientific Computing,
San Francisco, 1995, pp 231-236.
SIMPLE Performance Results in ZPL
with L. Snyder
Languages and Compilers for Parallel Computing,
K. Pingali, U. Banerjee, D. Gelernter, A. Nicolau and D. Padua eds., Springer-Verlag 1994, pp. 361-375.
Accommodating Polymorphic Data Decompositions in Explicitly Parallel Programs
with L. Snyder
8th International Parallel Processing Symposium,
Cancun, April 1994, pp. 68-74.
ZPL: An Array Sublanguage
with L. Snyder
Languages and Compilers for Parallel Computing,
U. Banerjee, D. Gelernter, A. Nicolau and D. Padua eds., Springer-Verlag 1994, pp. 96-11.
Towards a Machine-Independent Solution of Sparse Cholesky Factorization
with W. Weathersby
Parallel Computing 93,
Grenoble, France, September 1993.
The Ariadne Debugger: Scalable Application of Event-Based Abstraction
with J. Cuny, G. Forman, A. Hough, J. Kundu, L. Snyder and D. Stemple
1993 ACM/ONR Workshop on Parallel and Distributed Debugging,
San Diego, CA, May 1993, pp. 85-95.
Data Ensembles in Orca C
with L. Snyder
Languages and Compilers for Parallel Computing,
U. Banerjee, D. Gelernter, A. Nicolau and D. Padua eds., Springer-Verlag 1993, pp. 112-123.
Programming SIMPLE for Parallel Portability
with L. Snyder
Languages and Compilers for Parallel Computing,
U. Banerjee, D. Gelernter, A. Nicolau and D. Padua eds., Springer-Verlag 1992, pp. 84-98.
Portable Parallel Programming: Cross Machine Comparisons for SIMPLE
with L. Snyder
Proceedings of the 5th SIAM Conference on Parallel Processing for Scientific Computing,
Houston, 1991, pp 564-569.
A Comparison of Programming Models for Shared Memory Multiprocessors
with L. Snyder
Proceedings of the 1990 International Conference on Parallel Processing,
St. Charles, IL, 1990, pp II:163-170.
Books
Principles of Parallel Programming
.
with L. Snyder
Addison-Wesley, 2008.
Book Chapters
Using Mixin Technology To Improve Modularity
with R. Cardone
Aspect-Oriented Software Development,
Mehmet Aksit, Siobhan Clarke, Tzilla Elrad, and Richard Filman, eds. Addison-Wesley, 2003. pp. 219-242.
Theses
Removing Unimportant Computations in Interprocedural Program Analysis
. (Teck Bok Tok, PhD Thesis, 2007).
Enhancing Memory Controllers to Improve DRAM Power and Performance
. (Ibrahim Hur, PhD Thesis, 2006).
Incorporating Domain-Specific Information into the Compilation Process
. (Samuel Z. Guyer, PhD Thesis, 2003).
Language and Compiler Support for Mixin Programming
. (Richard J. Cardone, PhD Thesis, 2002).
Delay-Sensitive Branch Predictors for Future Technologies
. (Daniel A. Jiménez, PhD Thesis, 2002).
Software Methods for Avoiding Cache Conflicts
. (Frank Kuehndel, MS Thesis, 1998).
A Comparison of Metaphoric Global Optimization Techniques
. (Kent Spaulding, MS, Plan III, Software Quality Institute Thesis, 1998).
Last updated: March 11, 2008