Craig Zilles's Publications

For student theses, see my homepage

2008

Proof by Incomplete Enumeration and Other Logical Misconceptions
Geoffrey Herman, Lisa Kaczmarczyk, Michael Loui, and Craig Zilles (ICER 2008)

Using Hardware Memory Protection to Build a High-Performance, Strongly Atomic Hybrid Transactional Memory
Lee Baugh, Naveen Neelakantam and Craig Zilles (ISCA 2008)

A Characterization of Instruction-Level Error Derating and its Implications for Error Detection
Jeffrey Cook and Craig Zilles (DSN/PDS 2008)

An Analysis of I/O And Syscalls In Critical Sections And Their Implications for Transactional Memory
Lee Baugh and Craig Zilles (ISPASS 2008)

Branch-on-Random
Edward S. Lee and Craig Zilles (CGO 2008)

Accurate Critical Path Analysis via Random Trace Construction
Pierre Salverda, Charles Tucker and Craig Zilles (CGO 2008)

Fundamental Performance Challenges in Horizontal Fusion of In-Order Cores
Pierre Salverda and Craig Zilles (HPCA 2008)

Identifying Important and Difficult Concepts in Introductory Computing Courses using a Delphi Process
Ken Goldman, Paul Gross, Cinda Heeren, Geoffrey Herman, Lisa Kaczmarczyk, Michael C. Loui, and Craig Zilles (SIGCSE 2008).
An extended version is available as UIUC technical report UIUCDCS-R-2007-2917

"Hardware Atomicity for Reliable Software Speculation" has been selected for IEEE Micro Top Picks (2008)

2007

Accordion Arrays: Selective Compression of Unicode Arrays in Java
Craig Zilles (ISMM 2007)

Implications of False Conflict Rate Trends for Robust Software Transactional Memory
Craig Zilles and Ravi Rajwar (IISWC 2007)

An Analysis of I/O and Syscalls in Critical Sections and Their Implications for Transactional Memory
Lee Baugh and Craig Zilles (Transact 2007)

Delta Execution for Software Reliability
Yuanyuan Zhou, Darko Marinov, William Sanders, Craig Zilles, Marcelo d'Amorim, Steven Lauterburg, Ryan M. Lefever and Joe Tucek (HotDep 2007)

Dependence-based Scheduling Revisited: A Tale of Two Baselines
Pierre Salverda and Craig Zilles (WDDD 2007)

Hardware Atomicity for Reliable Software Speculation
Naveen Neelakantam, Ravi Rajwar, Suresh Srinivas, Uma Srinivasan, and Craig Zilles (ISCA 2007)

Transactional Memory and the Birthday Paradox
Craig Zilles and Ravi Rajwar (SPAA 2007)

2006

Hardware Transactional Memory Support for Lightweight Dynamic Language Evolution
Nicholas Riley and Craig Zilles (DLS 2006)

Extending Hardware Transactional Memory to Support Non-busy Waiting and Non-transactional Actions
Craig Zilles and Lee Baugh (Transact 2006)

Student Misconceptions in an Introductory Logic Design Course
J.T. Longino, Michael Loui, and Craig Zilles (ASEE 2006)

Probabilistic Counter Updates for Predictor Hysteresis and Stratification
Nicholas Riley and Craig Zilles (HPCA 2006) (15% acceptance rate, 26/172)

2005

A Criticality Analysis of Clustering in Superscalar Processors
Pierre Salverda and Craig Zilles (Micro 2005)

Probabilistic Counter Updates for Predictor Hysteresis and Bias
Nicholas Riley and Craig Zilles (CAL 2005)

On the Energy Efficiency of If-Conversion in Superscalar Processors
Eric Zimmerman and Craig Zilles (PAC^2 2005)

Decomposing the Load-Store Queue by Function for Power Reduction and Scalability
Lee Baugh and Craig Zilles (IBM JRD)

Challenges to Providing Performance Isolation in Transactional Memories
Craig Zilles and David Flint. (WDDD 2005)

"What does a CPU have in common with a fast food restaurant?" A Reflection on Emphasizing the Big Ideas of Computer Science in a Computer Organization Class
Craig Zilles. (FIE 2005)

Formally Defining and Verifying Master/Slave Speculative Parallelization
Pierre Salverda, Grigore Rosu, and Craig Zilles. (FM`05) (24% acceptance rate, 31/129)

TraceVis: An Execution Trace Visualization Tool
James Roberts and Craig Zilles. (MoBS`05) (45% acceptance rate, 10/22)

Reactive Techniques for Controlling Software Speculation
Craig Zilles and Naveen Neelakantam. (CGO-3) (35% acceptance rate, 26/75)

SPIMbot: An Engaging, Problem-based Approach to Teaching Assembly Language Programming
Craig Zilles. SIGCSE 2005 (32% acceptance rate, 104/330)
Here is an extended version presented at WCAE.

2004

Decomposing the Load-Store Queue by Function for Power Reduction and Scalability
Lee Baugh and Craig Zilles. PAC^2 2004. (46% acceptance, 21/45)

Increasing Interactivity by Predicting User Actions
Craig Zilles. Presented at ASPLOS 2004, Wild and Crazy Ideas Session. (37% acceptance rate, 6/16)

Targeted Path Profiling: Lower Overhead Path Profiling for Staged Dynamic Optimization Systems
Rahul Joshi, Michael D. Bond, and Craig Zilles. Presented at CGO-2, March 2004. (bibtex)

Formal Verification of MSSP
Pierre Salverda and Craig Zilles. UIUC Computer Science Technical Report 2384, 2004.

2002

Master/Slave Speculative Parallelization
Craig Zilles and Gurindar Sohi. Presented at Micro-35, November 2002. (bibtex)

Master/Slave Speculative Parallelization and Approximate Code
Craig Zilles, Ph.D. Dissertation, University of Wisconsin-Madison, August 2002.

Master/Slave Speculative Parallelization with Distilled Programs
Craig B. Zilles and Gurindar S. Sohi. University of Wisconsin-Madison Technical Report TR-1438, April, 2002. (bibtex)

2001

Time-Shifted Modules: Exploiting Code Modularity for Fine Grain Parallelism
Craig B. Zilles and Gurindar S. Sohi. University of Wisconsin-Madison Technical Report TR-1430, Oct, 2001. (bibtex)

Execution-based Prediction Using Speculative Slices
Craig B. Zilles and Gurindar S. Sohi. Presented at ISCA-2001, July 2001. (bibtex)

Benchmark Health Considered Harmful
Craig B. Zilles. A note published in Computer Architecture News, Vol. 29, No.3 June 2001. Also available is the source to a linked list micro-benchmark.

A Programmable Co-processor for Profiling
Craig B. Zilles and Gurindar S. Sohi. Presented at HPCA-7, January 2001. (bibtex)

2000 and before

Speculative Miss/Execute Decoupling
Amir Roth, Craig B. Zilles, and Gurindar S. Sohi. Presented at the MEDEA Workshop, Oct. 19, 2000.

Understanding the Backward Slices of Performance Degrading Instructions
Craig B. Zilles and Gurindar S. Sohi. Presented at ISCA-2000, June 2000. (bibtex)

The Use of Multithreading for Exception Handling
Craig B. Zilles, Joel S. Emer, and Gurindar S. Sohi. Presented at Micro-32, Nov. 1999. (bibtex)

Characterizing a Java Implementation of TPC-W
Todd Bezenek, Trey Cain, Ross Dickson, Timothy Heil, Milo Martin, Collin McCurdy, Ravi Rajwar, Eric Weglarz, Craig Zilles, and Mikko Lipasti. Presented at the Third Workshop on Computer Architecture Evaluation Using Commercial Workloads.

A Constraint-based God-object Method For Haptic Display
Craig Zilles and Ken Salisbury, IROS '95.
Introduces a haptic rendering scheme capable of handling general polygonal objects (6 pages).

Haptic Rendering: Programming Touch Interaction with Virtual Objects
Ken Salisbury, David Brock, Thomas Massie, Nitish Swarup, and Craig Zilles. Proceedings of the 1995 Symposium on Interactive 3D graphics.

Haptic Rendering with the Toolhandle Haptic Interface
Craig Zilles, B.S./M.S. Thesis, M.I.T. '95.
Contains significantly more detail on the god-object algorithm, introduces smoothing, friction, and other surface effects. Also, discusses the Toolhandle Haptic Interface (a large scale PHANToM with an instrumented gimbal) including kinematics (46 pages).


Craig Zilles / zilles@cs.uiuc.edu
Last updated November 24th, 2003.