A speculative execution approach to provide semantically aware contention management for concurrent systems
Most modern platforms offer ample potention for parallel execution of concurrent programs yet concurrency control is required to exploit parallelism while maintaining program correctness. Pessimistic con- currency control featuring blocking synchronization and mutual ex- clusion, has given way to tr...
Main Author: | |
---|---|
Published: |
University of Newcastle upon Tyne
2013
|
Subjects: | |
Online Access: | http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.618181 |
id |
ndltd-bl.uk-oai-ethos.bl.uk-618181 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-bl.uk-oai-ethos.bl.uk-6181812016-04-25T15:20:18ZA speculative execution approach to provide semantically aware contention management for concurrent systemsSharp, Craig2013Most modern platforms offer ample potention for parallel execution of concurrent programs yet concurrency control is required to exploit parallelism while maintaining program correctness. Pessimistic con- currency control featuring blocking synchronization and mutual ex- clusion, has given way to transactional memory, which allows the composition of concurrent code in a manner more intuitive for the application programmer. An important component in any transactional memory technique however is the policy for resolving conflicts on shared data, commonly referred to as the contention management policy. In this thesis, a Universal Construction is described which provides contention management for software transactional memory. The technique differs from existing approaches given that multiple execution paths are explored speculatively and in parallel. In the resolution of conflicts by state space exploration, we demonstrate that both concur- rent conflicts and semantic conflicts can be solved, promoting multi- threaded program progression. We de ne a model of computation called Many Systems, which defines the execution of concurrent threads as a state space management problem. An implementation is then presented based on concepts from the model, and we extend the implementation to incorporate nested transactions. Results are provided which compare the performance of our approach with an established contention management policy, under varying degrees of concurrent and semantic conflicts. Finally, we provide performance results from a number of search strategies, when nested transactions are introduced.004.6University of Newcastle upon Tynehttp://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.618181http://hdl.handle.net/10443/2308Electronic Thesis or Dissertation |
collection |
NDLTD |
sources |
NDLTD |
topic |
004.6 |
spellingShingle |
004.6 Sharp, Craig A speculative execution approach to provide semantically aware contention management for concurrent systems |
description |
Most modern platforms offer ample potention for parallel execution of concurrent programs yet concurrency control is required to exploit parallelism while maintaining program correctness. Pessimistic con- currency control featuring blocking synchronization and mutual ex- clusion, has given way to transactional memory, which allows the composition of concurrent code in a manner more intuitive for the application programmer. An important component in any transactional memory technique however is the policy for resolving conflicts on shared data, commonly referred to as the contention management policy. In this thesis, a Universal Construction is described which provides contention management for software transactional memory. The technique differs from existing approaches given that multiple execution paths are explored speculatively and in parallel. In the resolution of conflicts by state space exploration, we demonstrate that both concur- rent conflicts and semantic conflicts can be solved, promoting multi- threaded program progression. We de ne a model of computation called Many Systems, which defines the execution of concurrent threads as a state space management problem. An implementation is then presented based on concepts from the model, and we extend the implementation to incorporate nested transactions. Results are provided which compare the performance of our approach with an established contention management policy, under varying degrees of concurrent and semantic conflicts. Finally, we provide performance results from a number of search strategies, when nested transactions are introduced. |
author |
Sharp, Craig |
author_facet |
Sharp, Craig |
author_sort |
Sharp, Craig |
title |
A speculative execution approach to provide semantically aware contention management for concurrent systems |
title_short |
A speculative execution approach to provide semantically aware contention management for concurrent systems |
title_full |
A speculative execution approach to provide semantically aware contention management for concurrent systems |
title_fullStr |
A speculative execution approach to provide semantically aware contention management for concurrent systems |
title_full_unstemmed |
A speculative execution approach to provide semantically aware contention management for concurrent systems |
title_sort |
speculative execution approach to provide semantically aware contention management for concurrent systems |
publisher |
University of Newcastle upon Tyne |
publishDate |
2013 |
url |
http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.618181 |
work_keys_str_mv |
AT sharpcraig aspeculativeexecutionapproachtoprovidesemanticallyawarecontentionmanagementforconcurrentsystems AT sharpcraig speculativeexecutionapproachtoprovidesemanticallyawarecontentionmanagementforconcurrentsystems |
_version_ |
1718235467054317568 |