Abstract

Transactional memory is a prominent synchronization mechanism for shared memory multiprocessors. Access to critical sections of programs is accomplished with atomic transactions of memory accesses. The transactions are inherently deadlock-free and alleviate drawbacks of classic lock-based synchronization (i.e. deadlocks). Transactional memory has been implemented in modern CPUs and programming languages. In this talk, we consider the distributed shared memory setting where processor nodes are connected through a communication network. We consider the data flow model in which the transactions access shared memory objects that move from node to node through paths in the network. We study transaction execution scheduling problems which determine the movements of the shared objects so that transactions execute when their requested objects are fetched. We present scheduling algorithms with efficient execution time and communication cost. First, we observe that there are hard problem instances where the execution time and communication cost cannot be minimized simultaneously. We then provide efficient schedules for the execution time in specialized graphs that are useful in practical scenarios such as: Clique, Line, Grid, Cluster, Hypercube, Butterfly, and Star. In most of these cases, when individual transactions request k objects, we obtain solutions that approximate the execution time within an O(k) factor from optimal, yielding near-optimal solutions for constant k. The communication cost is also low since the objects follow near-optimal paths in the network. We discuss how to adapt the offline performance analysis to the online (dynamic) execution setting where transactions are generated continuously over time.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.