Font Size: a A A

Parallel Computing Software Transactional Memory Programming Algorithm Synthesis Optimization

Posted on:2012-09-21Degree:MasterType:Thesis
Country:ChinaCandidate:X Y HeFull Text:PDF
GTID:2218330335497457Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the era of multi-core processors has come, IT presents new software challenges that must be overcome to take full advantage of their processing capabilities. Traditional lock-based synchronization mechanism which used in most multithreaded applications can lead to dead-lock, live-lock, priority inversion and other failures. Software transactional memory (STM) is an alternative to lock-based synchronization. STM is a modern type of concurrency control that uses transactions as its synchronization mechanism; it attempts to simplify parallel programming by allowing a group of load and store instructions to execute in atomic way. But STM also suffers from performance problems due to false conflicts and generally demands very complicated conflict detection mechanisms.In this thesis we present Integrate Multi Optimized STM, an object-based software transactional memory system, which mainly contains three optimization methods to solve the performance problems:1. Increasing transaction throughput by using commit-time invalidation, a strategy where transactions resolve their conflicts with in-flight transactions before they commit; 2. Preventing starvation and fair resolution conflicts by using a dynamic optimized contention manager based on priority policy, which auto-adjusts the weight of transactional objects by runtime system feedback information; 3. Reducing conflicts by auto-adjusting the length of the Bloom Filter bit array in runtime to fit into the size of read and write set of transactions. The experimental results show that IMO. STM is effective.
Keywords/Search Tags:Software Transactional Memory, Conflict Detection, Validation, Contention Manager, Parallel Computing, Multi-Core
PDF Full Text Request
Related items