Frequent Value Locality and its Applications
|Professor Rajiv Gupta
Computer Science Department
University of Arizona
|McDonnell Douglas Auditorium
|Date & Time
|May 13, 2004
Refreshments at 2:30pm, Lecture begins at 3:00pm
|By studying the behavior of programs in the SPEC95 benchmark suite we have observed the frequent value phenomenon according to which a few values appear very frequently in memory locations and are therefore involved in a large fraction of memory accesses. Moreover we have observed that the set of frequent values remains stable over the execution of the program and these values are distributed fairly uniformly across the memory. In addition to describing the frequent value phenomenon I will describe two applications of the phenomenon. In the first application, by transmitting values belonging to a dynamically changing set of frequent values in encoded form, we greatly reduce the switching activity on a CPU’s external data bus. In the second application, by storing values belonging to a fixed set of frequent values in compressed encoded form, we significantly reduce energy consumed by the data cache.
Rajiv Gupta is a Professor of Computer Science at The University of Arizona. His areas of research interest include profile guided code optimization and program analysis; software tools; and performance, power, and memory issues in superscalar and embedded processors. Rajiv has published over 170 articles in refereed conferences and journals, he holds 7 US patents, and has supervised 12 PhD dissertations. Papers coauthored by him have been selected for: inclusion in 20 Years of PLDI (1979-1999), distinguished paper award in ICSE 2003, most original paper award in ICPP 2003, and outstanding paper award in ICECCS 1996. Rajiv received the NSF’s Presidential Young Investigator Award in 1991. He served as the Program Chair for PLDI’03 and HPCA’03 conferences. He has also been appointed as the Co-General Chair for CGO’05 and the Program Chair for LCTES’05 conferences. He serves as an Associate Editor for ACM Transactions on Architecture and Code Optimization, Parallel Computing journal, and Journal of Embedded Computing.