Calvin Lin
    Professor of Computer Science
    University of Texas, Austin
 
   
 
Home
Honors and Awards
Research Projects
Publications
Teaching
Students
Publications

 

  Journal Publications

  • Exploring the Spectrum of Dynamic Scheduling Algorithms for Scalable Distributed-Memory Ray Tracing
    with P. Navratil, H. Childs, and D. Fussell
    IEEE Transactions on Visualization and Computer Graphics, 20(6), June, 2014, pp. 893-906.

  • Memory Scheduling for Modern Microprocessors
    with I. Hur
    ACM Transactions on Computer Systems, 25(4), December, 2007, pp. 10-46.

  • 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 Samuel Z. 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 Samuel Z. 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 Daniel 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 Lawrence Snyder
    International Journal of Parallel Programming, 20(5), 1991, pp. 363-401.

  • Conference and Workshop Papers

  • A Structured Approach to Teaching Recursion Using Cargo-Bot
    with E. Lee, V. Shan, and B. Beth
    International Computing Education Research Conference, 2014.

  • Linearizing Irregular Memory Accesses for Improved Correlated Prefetching
    with A. Jain
    46th IEEE/ACM International Symposium on Microarchitecture, 2013.
    (Finalist, Best Paper Award)

  • Using Cargo-Bot to Provide Contextualized Learning of Recursion
    with J. Tessler and B. Beth
    International Computing Education Research Workshop, 2013.

  • Using Peer Review to Teach Software Testing
    with J. Smith, J. Tessler, and E. Kramer
    International Computing Education Research Workshop, 2012.

  • Dynamic Scheduling for Large-Scale Distributed-Memory Ray Tracing
    with P. Navratil, H. Childs, and D. Fussell
    Eurographics Symposium on Parallel Graphics and Visualization, 2012.
    (Best Paper Award)

  • A Scalable Algorithm for Compiler-Placed Staggered Checkpointing
    with A. Norman,
    IASTED International Conference on Parallel and Distributed Computing and Systems, 2011.

  • Flow-Sensitive Pointer Analysis for Millions of Lines of Code
    with B. Hardekopf
    International Symposium on Code Generation and Optimization, 2011, pp. 289--298.
    (Best Paper Award)

  • Semi-Sparse Flow-Sensitive Pointer Analysis
    with Ben Hardekopf
    Symposium on Principles of Programming Languages, 2009, pp. 226-238.

  • Feedback Mechanisms for Improving Probabilistic Memory Prefetching
    with Ibrahim Hur
    International Symposium on High-Performance Computer Architecture, February 2009, pp. 443-454.

  • Efficient and Extensible Security Enforcement Using Dynamic Data Flow Analysis
    with Walter Chang and Brandon Streiff
    Computer and Communications Security, 2008, pp. 39-50.

  • A Comprehensive Approach to DRAM Power Management
    with Ibrahim Hur
    International Symposium on High-Performance Computer Architecture, February, 2008, pp. 305-316.
    (Finalist, Best Paper Award)

  • 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.
    (Finalist, Best Paper Award)

  • 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 Re-aliasing
    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.

  • Perceptron Learning for Predicting the Behavior of Conditional Branches
    with Daniel Jiménez
    Proceedings of the INNS-IEEE International Joint Conference on Neural Networks (IJCNN). June, 2001. pp. 2122-2126.

  • 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.

  • Parallel Performance of a Meshless Method for Wind Engineering Simulations
    with G. Turkiyyah, D. Reed, and C. Viozat
    Proceedings of the 12th Conference on Analysis and Computation, 1996, pp. 177-187.

  • 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, ISBN-10: 0321487907, 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

  • Enabling High-Performance, Mixed-Signal Approximate Computing . (Renee St. Amant, PhD Thesis, 2014).

  • Jack Rabbit: An Effective Cell BE Programming System for High Performance Parallelism. (Apollo Ellis, MS Thesis, 2011).

  • Memory-Efficient, Scalable Ray Tracing. (Paul Navratíl, PhD Thesis, 2010).

  • A Proposed Memory Consistency Model for Chapel. (Karthik Murthy, MS Thesis, 2010).

  • Compiler-Assisted Staggered Checkpointing. (Alison Norman, PhD Thesis, 2010).

  • Improving Dynamic Analysis with Data Flow Analysis. (Walter Chang, PhD Thesis, 2010).

  • Pointer Analysis: Building a Foundation for Effective Program Analysis. (Ben Hardekopf, PhD Thesis, 2009).

  • 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: June 17, 2014