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...

Full description

Bibliographic Details
Main Author: Sharp, Craig
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