Download presentation
Presentation is loading. Please wait.
Published byAlyssa McDougall Modified over 11 years ago
1
Transactional Memory Challenges: Workloads, Execution Model, and Implementation Colin Blundell & Milo M. K. Martin University of Pennsylvania {blundell, milom}@cis.upenn.edu IBMs TRAMP Workshop March 2007
2
[ 2 ] TRAMP 2007 Workloads: Chicken or Egg? Dual role for workloads Yes, compelling results sections… …but also tell us where to put design effort Various proposals optimize different things For example: small/large transactions, true/false conflicts, conditional synchronization, … How do we know what matters most? Should be optimizing for what programs need But there are no programs yet!
3
[ 3 ] TRAMP 2007 Community-Wide Workload Development What programs? What are the important multicore workloads? Is there a killer app for transactional memory? What transactional execution semantics? Subset of all proposed semantics? Superset?
4
[ 4 ] TRAMP 2007 Transactional Workload Challenge/Contest Outline challenge problems SAT solving, media encoding, mining, … Perhaps start with serial reference implementation Groups have freedom of implementation +Can use their own semantics… -…but must implement workloads Long term: share workload implementations
5
[ 5 ] TRAMP 2007 Execution Semantics Wishlist Most important: simple programming interface The whole point: multicore for the masses Enable many implementations Independent of conflict detection mechanism Admit high-performance implementations… …but also allow simple implementations
6
[ 6 ] TRAMP 2007 A Crazy Proposal Consider this semantic model: Just a global lock Explicit abort add logging Strong atomicity with additional serialization How does it fit the bill? atomic { … } synchronized (global_lock) { … }
7
[ 7 ] TRAMP 2007 Serial Execution Model: Pros & Cons + Easy for the programmer to reason about Independent of implementation + Many implementations Simple (but slow) fallback implementation Allows high-performance implementations (?) + Can handle I/O (modulo explicit abort…) - No cyclic communication between transactions This would restrict implementations
8
[ 8 ] TRAMP 2007 Summary Workloads: challenge problems, not programs Semantics: KISS Benefits both the programmer and the implementer Global lock model has some appealing qualities
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.