CoSyn
Communication and Synchronization Mechanisms for Emerging Multi-Core Processors
|
This work has been supported in part by NSF grants
CCF-0702505,
CNS-0411127,
CNS-0615139,
and
CNS-0509270;
an IBM Faculty Partnership Award;
NIH grants 5 R21 GM079259-02 and 1 R21 HG004648-01;
and equipment support from Sun Microsystems Laboratories.
Most of our simulation models are built on top of the Wisconsin GEMS models. We
employ Virtutech
Simics to faithfully emulate the functionality of our target systems.
As a result of increasing chip density and power limitations, explicit
hardware parallelism has begun to dominate the computing spectrum,
with multicore chips replacing uniprocessors throughout the desktop and
laptop markets. If these chips are to be used effectively, new
programming models must ease the task of writing multithreaded code.
These models must in turn be supported by architectural mechanisms that
minimize the cost of data communication and synchronization.
This project addresses the challenge of mainstream parallelism
at both the hardware and software level.
One key idea is to
identify common time-critical operations, across a variety of
applications and programming models, that might be accelerated or
simplified by new architectural mechanisms, and then to design those
mechanisms in as general a fashion as possible. By leaving policy to
software whenever possible, this strategy aims to maximize opportunities
for adaptive and application-specific protocols that increase
scalability. Candidate hardware mechanisms include alert-on-update,
which leverages cache coherence for fast event-based communication;
programmable data isolation, which allows a processor to hide local
writes for speculation and transactions; and adaptive cooperative
caching, which re-engineers the on-chip coherence protocol to
accommodate different patterns of data sharing and to communicate values
efficiently between cores.
Through better parallel programming models and efficient
implementations, the project aims to continue the computing
revolution over the course of the coming decade. By enabling the
effective use of larger numbers of simpler cores, it also addresses the
critical need to reduce energy consumption in mainstream processors.
- Principal Investigator
Sandhya Dwarkadas
in collaboration with
Michael L. Scott
and
Michael C. Huang
- Graduate Students
- Alumni
- M.S.
- Nitin Bhardwaj (First Job: Intel, Oregon)
- Rajeev Garg (First Job: Intel, Folsom)
- Ph.D.
"SPATL: Honey, I Shrunk the Coherence Directory",
H. Zhao, A. Shriraman, S. Dwarkadas, and V. Srinivasan,
International Symposium on Parallel Architectures and Compilation
Techniques (PACT), October 2011.
"POPS: Coherence Protocol Optimization for Both Private and Shared Data",
H. Hossain, S. Dwarkadas, and M. Huang,
International Symposium on Parallel Architectures and Compilation
Techniques (PACT), October 2011.
"SPACE: Sharing Pattern-based Directory Coherence for Multicore Scalability",
H. Zhao, A. Shriraman, and S. Dwarkadas,
International Symposium on Parallel Architectures and Compilation
Techniques (PACT), September 2010.
"Sentry: Light-Weight Auxiliary Memory Access Control",
A. Shriraman and S. Dwarkadas,
International Symposium on Computer Architecture (ISCA),
June 2010.
"DDCache: Decoupled and Delegable Cache Data and Metadata",
H. Hossain, S. Dwarkadas, and M. Huang,
International Symposium on Parallel Architectures and Compilation
Techniques (PACT), September 2009.
Refereeing Conflicts in Hardware Transactional Memory,
A. Shriraman and S. Dwarkadas,
International Conference on Supercomputing (ICS), June 2009.
Tapping into Parallelism with Transactional Memory,
A. Shriraman, S. Dwarkadas, and M. L. Scott,
;login: (the USENIX Magazine), April 2009.
Improving Support for Locality and Fine-Grain Sharing in Chip Multiprocessors,
H. Hossain, S. Dwarkadas, and M. C. Huang,
International Symposium on Parallel Architectures and Compilation
Techniques (PACT), October 2008.
Flexible Decoupled Transactional Memory Support,
A. Shriraman, S. Dwarkadas, and M. L. Scott, International
Symposium on Computer Architecture (ISCA), June 2008.
DIMM: Architectural Support for Data Isolation and Memory Monitoring,
A. Shriraman, S. Dwarkadas, and M. L. Scott, poster presentation,
13th International Conference on Architectural Support for
Programming Languages and Operating Systems (ASPLOS), March 2008.
An Integrated
Hardware-Software Approach to Flexible Transactional Memory,
A. Shriraman, M. F. Spear, H. Hossain,
V. J. Marathe, S. Dwarkadas, and M. L. Scott,
34th Intl. Symp. on
Computer Architecture (ISCA), San Diego,
CA, June 2007.
Earlier but expanded version available as
TR 910, Computer
Science Dept., Univ. of Rochester, Dec. 2006.
Nonblocking
Transactions Without Indirection Using Alert-on-Update,
M. F. Spear, A. Shriraman, L. Dalessandro,
S. Dwarkadas, and M. L. Scott,
19th ACM Symposium on
Parallelism in Algorithms and Architectures (SPAA), San Diego,
CA, June 2007.
Alert-on-Update:
A Communication Aid for Shared Memory Multiprocessors (poster
paper),
M. F. Spear, A. Shriraman, H. Hossain, S. Dwarkadas,
and M. L. Scott,
Twelfth ACM Symp. on Principles and
Practice of Parallel Programming (PPoPP), Mar. 2007.
Hardware Acceleration of Software Transactional Memory,
A. Shriraman, V. J. Marathe, S. Dwarkadas, M. L. Scott, D. Eisenstat,
C. Heriot, W. N. Scherer III, and M. F. Spear,
Workshop on Languages, Compilers, and Hardware Support for
Transactional Computing (TRANSACT), June 2006.
In conjunction with PLDI'06.
Earlier, extended version available as
TR 887, Computer Science Department,
University of Rochester, Dec. 2005, revised Mar. 2006.