Publications in Selected Areas

Multicores & Multiprocessors: Compiler, Architectural & OS Support



PLDI M. Feng, R. Gupta, and I. Neamtiu
Effective Parallelization of Loops in the Presence of I/O Operations,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
Beijing, China, June 2012.
ASPLOS C. Lin, V. Nagarajan, R. Gupta, and B. Rajaram
Efficient Sequential Consistency via Conflict Ordering,
ACM 17th International Conference on Architectural Support for Programming
Languages and Operating Systems,
pages 273-286, London, UK, March 2012.
TACO
HiPEAC
M. Feng, C. Lin, and R. Gupta
PLDS: Partitioning Linked Data Structures for Parallelism,
ACM Transactions on Architecture and Code Optimization, special issue of papers presented at HiPEAC,
Vol. 8, No. 4, Article 38, 21 pages, January 2012.
TACO
HiPEAC
K.K. Pusukuri, R. Gupta, L.N. Bhuyan
Thread Tranquilizer: Dynamically Reducing Performance Variation,
ACM Transactions on Architecture and Code Optimization, special issue of papers presented at HiPEAC,
Vol. 8, No. 4, Article 46, 21 pages, January 2012.
PACT K.K. Pusukuri, R. Gupta, L.N. Bhuyan
No More Backstabbing... A Faithful Scheduling Policy for Multithreaded Programs,
The 20th International Conference on Parallel Architectres and Compilation Techniques,
Galveston Island, Texas, October 2011.
PPoPP M. Feng, R. Gupta, and Y. Hu
SpiceC: Scalable Parallelism via implicit copying and explicit Commit,
16th ACM SIGPLAN Symposium on Principles and Practices of Parallel Programming,
pages 69-80, San Antonio, Texas, February 2011.
PPoPP C. Tian, C. Lin, M. Feng, and R. Gupta
Enhanced Speculative Parallelization Via Incremental Recovery,
16th ACM SIGPLAN Symposium on Principles and Practices of Parallel Programming,
pages 189-200, San Antonio, Texas, February 2011.
PACT Recipient of a PACT 2010 Best Paper Award
C. Lin, V. Nagarajan, and R. Gupta
Efficient Sequential Consistency Using Conditional Fences,
The 19th International Conference on Parallel Architectures and Compilation Techniques,
pages 295-306, Vienna, Austria, September 2010.
PLDI C. Tian, M. Feng, and R. Gupta
Supporting Speculative Parallelization in the Presence of Dynamic Data Structures,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 62-73, Toronto, Canada, June 2010.
ISMM C. Tian, M. Feng, and R. Gupta
Speculative Parallelization Using State Separation and Multiple Value Prediction,
Ninth International Symposium on Memory Management,
pages 63-72, Toronto, Canada, June 2010.
ISCA V. Nagarajan and R. Gupta
ECMon: Exposing Cache Events for Monitoring,
ACM/IEEE 36th International Symposium on Computer Architecture,
Austin, Texas, June 2009.
SIGOPS V. Nagarajan and R. Gupta
Runtime Monitoring on Multicores via OASES,
ACM SIGOPS Operating Systems Review,
special issue on the interaction among the OS, Compilers, and Multicore Processors,
pages 15-24, Vol. 43, No. 2, April 2009 (Invited Paper).
VEE V. Nagarajan and R. Gupta
Architectural Support for Shadow Memory in Multiprocessors,
ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments,
pages 1-10, Washington DC, March 2009.
MICRO C. Tian, M. Feng, V. Nagarajan, and R. Gupta
Copy Or Discard Execution Model For Speculative Parallelization On Multicores,
IEEE/ACM 41th International Symposium on Microarchitecture,
pages 330-341, Lake Como, Italy, Nov. 2008.
HPCA Y. Zhang, L. Gao, J. Yang, X. Zhang and R. Gupta,
SENSS: Security Enhancement to Symmeteric Shared Memory Multiprocessors,
IEEE 11th International Symposium on High Performance Computer Architecture,
pages 352-362, San Francisco, California, February 2005.
HPCA X. Yuan, R. Melhem, and R. Gupta,
Distributed Path Reservation Algorithms for Multiplexed All-Optical Interconnection Networks,
IEEE 3rd International Symposium on High-Performance Computer Architecture,
pages 38-47, San Antonio, Texas, February 1997.
MICRO B. Malloy, R. Gupta, and M.L. Soffa,
A Shape Matching Approach for Scheduling Fine-Grained Parallelism,
IEEE/ACM 25th International Symposium on Microarchitecture,
pages 264-267, Portland, Oregon, December 1992.
JPDC R. Gupta,
SPMD Execution of Programs with Pointer-based Data Structures on Distributed-Memory Machines,
Journal of Parallel and Distributed Computing,
special issue on Multicomputer Programming and Application, Vol. 16, No. 2, pages 92-107, October 1992.
ICCL R. Gupta,
SPMD Execution of Programs with Dynamic Data Structures on Distributed Memory Machines,
IEEE 4th International Conference on Computer Languages,
pages 232-241, Oakland, California, April 1992.
MICRO S. Lee and R. Gupta,
Executing Loops on a Fine-Grained MIMD Architecture,
IEEE/ACM 24th International Symposium on Microarchitecture,
pages 199-205, Albuquerque, New Mexico, November 1991.
MICRO R. Gupta,
A Fine-grained MIMD Architecture based upon Register Channels,
IEEE/ACM 23rd Workshop on Microprogramming and Microarchitecture,
pages 28-37, Orlando, Florida, December 1990.
SC R. Gupta, M. Epstein, and M. Whelan,
The Design of a RISC based Multiprocessor Chip,
Supercomputing'90,
pages 920-929, New York, November 1990.
PPoPP R. Gupta,
Employing Register Channels for the Exploitation of Instruction Level Parallelism,
ACM SIGPLAN 2nd Symposium on Principles and Practice of Parallel Programming,
pages 118-127, Seattle, Washington, March 1990.
ASPLOS R. Gupta,
The Fuzzy Barrier: A Mechanism for High-Speed Synchronization of Processors,
ACM 3rd International Conference on Architectural Support for Programming
Languages and Operating Systems
, pages 54-64, Boston, April 1989.


Software Debugging and Testing



TOPLAS D. Jeffrey, V. Nagarajan, R. Gupta, and N. Gupta
Execution Suppression: An Automated Iterative Technique for locating Memory Errors,
ACM Transactions on Programming Languages and Systems,
Vol. 32, No. 5, 36 pages, May 2010.
PASTE M. Feng and R. Gupta
Learning Universal Probabilistic Models for Fault Localization,
Ninth ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering,
pages 81-88, Toronto, Canada, June 2010.
ISSTA D. Jeffrey, N. Gupta, and R. Gupta
Fault Localization Using Value Replacement,
International Symposium on Software Testing and Analysis,
pages 167-178, Seattle, July 2008.
ISSTA C. Tian, V. Nagarajan, R. Gupta, and S. Tallam
Dynamic Recognition of Synchronization Operations for Improved Data Race Detection,
International Symposium on Software Testing and Analysis,
pages 143-154, Seattle, July 2008.
PLDI X. Zhang, S. Tallam, N. Gupta, and R. Gupta
Towards Locating Execution Omission Errors,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 415-424, San Diego, June 2007.
FSE X. Zhang, S. Tallam, and R. Gupta
Dynamic Slicing Long Running Programs through Execution Fast Forwarding,
14th ACM SIGSOFT Symposium on Foundations of Software Engineering,
pages 81-91, Portland, Oregon, November 2006.
PLDI X. Zhang, N. Gupta, and R. Gupta,
Pruning Dynamic Slices With Confidence,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 169-180, Ottawa, Canada, June 2006.
ICSE X. Zhang, N. Gupta, and R. Gupta
Locating Faults Through Automated Predicate Switching,
IEEE/ACM International Conference on Software Engineering,
pages 272-281, Shanghai, China, May 2006.
ASE N. Gupta, H. He, X. Zhang, and R. Gupta,
Locating Faulty Code Using Failure-Inducing Chops,
IEEE/ACM International Conference on Automated Software Engineering,
pages 263-272, Long Beach, California, Nov. 2005.
ESEC
-FSE
X. Zhang and R. Gupta,
Matching Execution Histories of Program Versions,
Joint 10th European Software Engineering Conference and
13th ACM SIGSOFT Symposium on the Foundations of Software Engineering
,
pages 197-206, Lisbon, Portugal, September 2005.
ACM
TOPLAS
X. Zhang, R. Gupta, and Y. Zhang,
Cost and Precision Tradeoffs of Dynamic Data Slicing Algorithms,
ACM Transactions on Programming Languages and Systems,
Vol. 27, No. 4, pages 631-661, July 2005.
PLDI X. Zhang and R. Gupta,
Cost Effective Dynamic Program Slicing,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 94-106, Washington D.C., June 2004.
ICSE X. Zhang, R. Gupta, and Y. Zhang
Effective Forward Computation of Dynamic Slices Using Reduced Ordered Binary Decision Diagrams,
IEEE/ACM International Conference on Software Engineering,
pages 502-511, Edinburgh, UK, May 2004.
ICSE Recipient of ICSE 2003 Distinguished Paper Award.
X. Zhang, R. Gupta, and Youtao Zhang
Precise Dynamic Slicing Algorithms,
IEEE/ACM International Conference on Software Engineering,
pages 319-329, Portland, Oregon, May 2003.
ESEC
-FSE
C. Jaramillo, R. Gupta, and M.L. Soffa,
Comparison Checking: An Approach to Avoid Debugging of Optimized Code,
Joint 7th European Software Engineering Conference and
7th ACM SIGSOFT Symposium on the Foundations of Software Engineering
,
LNCS 1687, Springer Verlag, pages 268-284, Toulouse, France, Sept. 1999.
ACM
TOSEM
R. Gupta, M.L. Soffa, and J. Howard
Hybrid Slicing: Integrating Dynamic Information with Static Analysis,
ACM Transactions on Software Engineering and Methodology,
Vol. 6, No. 4, pages 370-397, October 1997.
ICSE E. Duesterwald, R. Gupta, and M.L. Soffa,
A Demand-Driven Analyzer for Data Flow Testing at the Integration Level,
IEEE/ACM International Conference on Software Engineering,
pages 575-586, Berlin, Germany, March 1996.
FSE R. Gupta and M.L. Soffa,
Hybrid Slicing: An Approach for Refining Static Slices using Dynamic Information,
ACM SIGSOFT 3rd Symposium on the Foundations of Software Engineering,
pages 29-40, Washington, DC, October 1995.
ACM
TOSEM
M.J. Harrold, R. Gupta, and M.L. Soffa,
A Methodology for Controlling the Size of a Test Suite,
ACM Transactions on Software Engineering and Methodology,
Vol. 2, No. 3, pages 270-285, July 1993.


Scalable Program Analysis: Static, Profile-Guided, and Dynamic



ISSTA S. Tallam, C. Tian, X. Zhang, and R. Gupta
Enabling Tracing of Long-Running Multithreaded Programs via Dynamic Execution Reduction,
International Symposium on Software Testing and Analysis,
pages 207-218, London, July 2007.
ACM
TACO
S. Tallam and R. Gupta,
Unified Control Flow and Dependence Traces,
ACM Transactions on Architecture and Code Optimization,
Vol. 4, No. 3, 31 pages, September 2007.
ACM
TACO
X. Zhang and R. Gupta,
Whole Execution Traces and their Applications,
ACM Transactions on Architecture and Code Optimization,
Vol. 2, No. 3, pages 301-334, Sept. 2005.
MICRO X. Zhang and R. Gupta,
Whole Execution Traces,
IEEE/ACM 37th International Symposium on Microarchitecture,
pages 105-116, Portland, Oregan, December 2004.
PLDI Y. Zhang and R. Gupta,
Timestamped Whole Program Path Representation and its Applications,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 180-190, Snowbird, Utah, June 2001.
MICRO R. Gupta, D. Berson, and J.Z. Fang,
Resource-Sensitive Profile-Directed Data Flow Analysis for Code Optimization,
IEEE/ACM 30th International Symposium on Microarchitecture,
pages 558-568, Research Triangle Park, North Carolina, December 1997.
ACM
TOPLAS
E. Duesterwald, R. Gupta, and M.L. Soffa,
A Practical Framework for Demand-Driven Interprocedural Data Flow Analysis,
ACM Transactions on Programming Languages and Systems,
Vol. 19, No. 6, pages 992-1030, November 1997.
ESEC
-FSE
R. Bodik, R. Gupta, and M.L. Soffa,
Refining Data Flow Information using Infeasible Paths,
Joint 6th European Software Engineering Conference and
5th ACM SIGSOFT Symposium on the Foundations of Software Engineering
,
LNCS 1301, Springer Verlag, pages 361-377, Zurich, Switzerland, September 1997.
POPL E. Duesterwald, R. Gupta, and M.L. Soffa,
Demand-Driven Computation of Interprocedural Data Flow,
ACM SIGPLAN-SIGACT 22nd Symposium on Principles of Programming Languages,
pages 37-48, San Francisco, California, January 1995.
PLDI E. Duesterwald, R. Gupta, and M.L. Soffa,
A Practical Data Flow Framework for Array Reference Analysis and its Application in Optimizations,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 68-77, Albuquerque, New Mexico, June 1993.
POPL R. Gupta,
Generalized Dominators and Post-Dominators,
ACM SIGPLAN-SIGACT 19th Symposium on Principles of Programming Languages,
pages 246-257, Albuquerque, New Mexico, January 1992.


Embedded Processors: Compiler and Architectural Support



HiPEAC V. Nagarajan, R. Gupta, and A. Krishnaswamy
Compiler-Assisted Memory Encryption for Embedded Processors,
International Conference on High Performance Embedded Architectures and Compilers,
Ghent, Belgium, January 2007.
MICRO A. Krishnaswamy and R. Gupta,
Efficient Use of Invisible Registers in Thumb Code,
IEEE/ACM 38th International Symposium on Microarchitecture,
pages 30-40, Barcelona, Spain, Nov. 2005.
HiPEAC B. Li, G. Venkatesh, B. Calder, and R. Gupta
Exploiting Computation Reuse Cache to Reduce Energy in Network Processors,
International Conference on High Performance Embedded Architectures and Compilers,
LNCS 3793, Springer Verlag, pages 251-265, Barcelona, Spain, Nov. 2005.
ACM
TECS
A. Krishnaswamy and R. Gupta,
Dynamic Coalescing for 16-bit Instructions,
ACM Transactions on Embedded Computing Systems
in special issue of selected LCTES'03 papers, Vol. 4, No. 1, pages 3-37, Feb. 2005.
ACM
TODAES
J. Yang, R. Gupta, and C. Zhang
Frequent Value Encoding for Low Power Data Buses,
ACM Transactions on Design Automation of Electronic Systems,
Vol. 9, No. 3, pages 354-384, July 2004.
CASES B. Li and R. Gupta
Simple Offset Assignment in Presence of Subword Data,
International Conference on Compilers, Architecture, and Synthesis of Embedded Systems,
pages 12-23, San Jose, CA, October 2003.
POPL S. Tallam and R. Gupta,
Bitwidth Aware Global Register Allocation,
30th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages,
pages 85-96, New Orleans, LA, January 2003.
ACM
TECS
J. Yang and R. Gupta,
Frequent Value Locality and its Applications,
ACM Transactions on Embedded Computing Systems (inaugural issue),
Vol. 1, No. 1, pages 79-105, November 2002.
MICRO J. Yang and R. Gupta,
Energy Efficient Frequent Value Data Cache Design,
IEEE/ACM 35th International Symposium on Microarchitecture,
pages 197-207, Istanbul, Turkey, November 2002.
CASES B. Li and R. Gupta,
Bit Section Instruction Set Extension of ARM for Embedded Applications,
International Conference on Compilers, Architecture, and Synthesis for Embedded Systems,
pages 69-78, Grenoble, France, October 2002.
MICRO J. Yang, Y. Zhang, and R. Gupta,
Frequent Value Compression in Data Caches,
IEEE/ACM 33rd International Symposium on Microarchitecture,
pages 258-265, Monterey, CA, December 2000.
ASPLOS Y. Zhang, J. Yang, and R. Gupta,
Frequent Value Locality and Value-Centric Data Cache Design,
ACM 9th International Conference on Architectural Support for Programming
Languages and Operating Systems
, pages 150-159, Cambridge, MA, November 2000.


High-Performance Processors: Compiler and Architectural Support



ACM TACO M. Feng, C. Tian, C. Lin, and R. Gupta,
Dynamic Access Distance Driven Cache Replacement,
ACM Transactions on Architecture and Code Optimization,
Vol. 8, No. 3, Article 14, 30 pages, October 2011.
20 Years
of PLDI
R. Bodik, R. Gupta and M.L. Soffa,
Retrospective -- Complete Removal of Redundant Expressions,
20 Years of the ACM/SIGPLAN Conference on Programming Language Design
and Implementation (1979-1999): A Selection
,
ACM SIGPLAN Notices, Vol. 39, No. 4, pages 596-597, April 2004.
ICS S. Onder and R. Gupta,
Load and Store Reuse Using Register File Contents,
ACM 15th International Conference on Supercomputing,
pages 289-302, Sorrento, Naples, Italy, June 2001.
PLDI R. Bodik, R. Gupta, and V. Sarkar,
ABCD: Eliminating Array Bounds Checks on Demand,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 321-333, Vancouver B.C., Canada, June 2000.
MICRO S. Onder and R. Gupta,
Dynamic Memory Disambiguation in the Presence of Out-of-order Store Issuing,
IEEE/ACM 32nd International Symposium on Microarchitecture,
pages 170-176, Haifa, Israel, November 1999.
PLDI R. Bodik, R. Gupta, and M.L. Soffa,
Load-Reuse Analysis: Design and Evaluation,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 64-76, Atlanta, Georgia, May 1999.
ISCA T. Nakra, R. Gupta, and M.L. Soffa,
Value Prediction in VLIW Machines,
ACM/IEEE 26th International Symposium on Computer Architecture,
pages 258-269, Atlanta, Georgia, May 1999.
HPCA T. Nakra, R. Gupta, and M.L. Soffa,
Global Context-based Value Prediction,
IEEE 5th International Symposium on High Performance Computer Architecture,
pages 4-12, Orlando, Florida, January 1999.
PLDI R. Bodik, R. Gupta and M.L. Soffa,
Complete Removal of Redundant Expressions,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 1-14, Montreal, Canada, June 1998.
ICCL S. Onder and R. Gupta,
Automatic Generation of Microarchitecture Simulators,
IEEE International Conference on Computer Languages,
pages 80-89, Chicago, Illinois, May 1998.
ICCL R. Gupta, D. Berson, and J.Z. Fang,
Path Profile Guided Partial Redundancy Elimination Using Speculation,
IEEE International Conference on Computer Languages,
pages 230-239, Chicago, Illinois, May 1998.
PLDI R. Bodik and R. Gupta,
Partial Dead Code Elimination using Slicing Transformations,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 159-170, Las Vegas, Nevada, June 1997.
PLDI R. Bodik, R. Gupta, and M.L. Soffa,
Interprocedural Conditional Branch Elimination,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 146-158, Las Vegas, Nevada, June 1997.
ACM
LOPLAS
R. Gupta,
Optimizing Array Bound Checks Using Flow Analysis,
ACM Letters on Programming Languages and Systems,
Vol.2, Nos.1-4, pages 135-150, March-December 1994.
ACM
TOPLAS
R. Gupta, M.L. Soffa, and D. Ombres,
Efficient Register Allocation Via Coloring Using Clique Separators,
ACM Transactions on Programming Languages and Systems,
Vol. 16, No. 3, pages 370-386, May 1994.
PLDI R. Gupta,
A Fresh Look at Optimizing Array Bound Checks,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 272-282, White Plains, NY, June 1990.
IEEE
TSE
R. Gupta and M.L. Soffa,
Region Scheduling: An Approach for Detecting and Redistributing Parallelism,
IEEE Transactions on Software Engineering,
Vol. 16, No. 4, pages 421-431, April 1990.
PLDI R. Gupta, M.L. Soffa, and T.F. Steele,
Register Allocation via Clique Separators,
ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 264-275, Portland, Oregon, June 1989.
PPEALS R. Gupta and M.L. Soffa,
Compile-time Techniques for Efficient Utilization of Parallel Memories,
ACM SIGPLAN Symposium on Parallel Programming: Experience with Applications,
Languages and Systems
, pages 235-246, New Haven, July 1988.