Runtime deadlock tracking and prevention of concurrent multithreaded programs: A learning‐based approach

Summary Allocation of shared resources by multithreaded programs faces problem of deadlock. Many solutions have been presented to resolve this problem. Among others, the deadlock prevention is stressed when the deadlock detection and removal are costly. Removing deadlocks, which is carried out by ab...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Concurrency and computation 2020-05, Vol.32 (10), p.n/a
Hauptverfasser: Ghorbani, Mehrdad, Babamir, Seyed Morteza
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page n/a
container_issue 10
container_start_page
container_title Concurrency and computation
container_volume 32
creator Ghorbani, Mehrdad
Babamir, Seyed Morteza
description Summary Allocation of shared resources by multithreaded programs faces problem of deadlock. Many solutions have been presented to resolve this problem. Among others, the deadlock prevention is stressed when the deadlock detection and removal are costly. Removing deadlocks, which is carried out by aborting/recovering deadlocked threads, causes the waste of the resources used by the deadlocked threads. In such case, deadlock prevention can lead to avoiding the waste of resources. To this end, the runtime behavior of threads should be monitored in order to predict possible future deadlocks. In such case, the prediction mechanism becomes significant because a proper prediction helps us deny the allocation request of a resource by a thread if the allocation leads to a potential deadlock. A method to attain to proper prediction is learning the behavior of threads based on runtime monitoring their past behavior. In fact, based on past behavior of threads, potential deadlocks in their future behavior are verified, and current allocation request of a resource is denied if a future deadlock is predicted. The current study is an extension of our previous work where just deadlock tracking was predicted and no adaptation was suggested. In this study, a composite structure of a recurrent Neural Network (NN) called NARX (to track a potential deadlock) and a Multi‐perceptron NN called MLP (to select a suitable action to resolve the potential deadlock) is proposed. Based on the experimental results, the accuracy of the first NN was about 80%, leading to high performance of the second NN, and more than 82% of the real deadlocks were prevented by selecting suitable actions.
doi_str_mv 10.1002/cpe.5324
format Article
fullrecord <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2391156132</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2391156132</sourcerecordid><originalsourceid>FETCH-LOGICAL-c2934-7bd8fb973e0aa4dbaf8f9db7e95e9d3726dc9575848cf0dff2bed34a059578a23</originalsourceid><addsrcrecordid>eNp1kMlKA0EURQtRMEbBTyhw46ZjDT26CyEOEFBE18XrGpLu9GRVt5Kdn-A3-iVWG3Hn6j7uO-9duAidUzKjhLAr2elZxFl4gCbUa0BiHh7-zSw-RifOlYRQSjidoPJpaPqi1lhpUFUrt7i3ILdFs8bQKNxZ_aY90Da4NVi2jRys9Qauh6ov-o31V3rE2rWF2l3jOa402Mbff3185uD8Ejq_Brk5RUcGKqfPfnWKXm6Wz4u7YPVwe7-YrwLJMh4GSa5Sk2cJ1wQgVDmY1GQqT3QW6UzxhMVKZlESpWEqDVHGsFwrHgKJvJsC41N0sf_rY18H7XpRtoNtfKRgPKM0iikfqcs9JW3rnNVGdLaowe4EJWJsUvgmxdikR4M9-l5UevcvJxaPyx_-G4I3d68</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2391156132</pqid></control><display><type>article</type><title>Runtime deadlock tracking and prevention of concurrent multithreaded programs: A learning‐based approach</title><source>Access via Wiley Online Library</source><creator>Ghorbani, Mehrdad ; Babamir, Seyed Morteza</creator><creatorcontrib>Ghorbani, Mehrdad ; Babamir, Seyed Morteza</creatorcontrib><description>Summary Allocation of shared resources by multithreaded programs faces problem of deadlock. Many solutions have been presented to resolve this problem. Among others, the deadlock prevention is stressed when the deadlock detection and removal are costly. Removing deadlocks, which is carried out by aborting/recovering deadlocked threads, causes the waste of the resources used by the deadlocked threads. In such case, deadlock prevention can lead to avoiding the waste of resources. To this end, the runtime behavior of threads should be monitored in order to predict possible future deadlocks. In such case, the prediction mechanism becomes significant because a proper prediction helps us deny the allocation request of a resource by a thread if the allocation leads to a potential deadlock. A method to attain to proper prediction is learning the behavior of threads based on runtime monitoring their past behavior. In fact, based on past behavior of threads, potential deadlocks in their future behavior are verified, and current allocation request of a resource is denied if a future deadlock is predicted. The current study is an extension of our previous work where just deadlock tracking was predicted and no adaptation was suggested. In this study, a composite structure of a recurrent Neural Network (NN) called NARX (to track a potential deadlock) and a Multi‐perceptron NN called MLP (to select a suitable action to resolve the potential deadlock) is proposed. Based on the experimental results, the accuracy of the first NN was about 80%, leading to high performance of the second NN, and more than 82% of the real deadlocks were prevented by selecting suitable actions.</description><identifier>ISSN: 1532-0626</identifier><identifier>EISSN: 1532-0634</identifier><identifier>DOI: 10.1002/cpe.5324</identifier><language>eng</language><publisher>Hoboken: Wiley Subscription Services, Inc</publisher><subject>adaptive systems ; Composite structures ; Learning ; MLP ; NARX ; neural network ; Neural networks ; Recurrent neural networks ; runtime deadlock prediction ; time series ; Tracking</subject><ispartof>Concurrency and computation, 2020-05, Vol.32 (10), p.n/a</ispartof><rights>2019 John Wiley &amp; Sons, Ltd.</rights><rights>2020 John Wiley &amp; Sons, Ltd.</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c2934-7bd8fb973e0aa4dbaf8f9db7e95e9d3726dc9575848cf0dff2bed34a059578a23</citedby><cites>FETCH-LOGICAL-c2934-7bd8fb973e0aa4dbaf8f9db7e95e9d3726dc9575848cf0dff2bed34a059578a23</cites><orcidid>0000-0002-1645-4002</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktopdf>$$Uhttps://onlinelibrary.wiley.com/doi/pdf/10.1002%2Fcpe.5324$$EPDF$$P50$$Gwiley$$H</linktopdf><linktohtml>$$Uhttps://onlinelibrary.wiley.com/doi/full/10.1002%2Fcpe.5324$$EHTML$$P50$$Gwiley$$H</linktohtml><link.rule.ids>314,780,784,1417,27924,27925,45574,45575</link.rule.ids></links><search><creatorcontrib>Ghorbani, Mehrdad</creatorcontrib><creatorcontrib>Babamir, Seyed Morteza</creatorcontrib><title>Runtime deadlock tracking and prevention of concurrent multithreaded programs: A learning‐based approach</title><title>Concurrency and computation</title><description>Summary Allocation of shared resources by multithreaded programs faces problem of deadlock. Many solutions have been presented to resolve this problem. Among others, the deadlock prevention is stressed when the deadlock detection and removal are costly. Removing deadlocks, which is carried out by aborting/recovering deadlocked threads, causes the waste of the resources used by the deadlocked threads. In such case, deadlock prevention can lead to avoiding the waste of resources. To this end, the runtime behavior of threads should be monitored in order to predict possible future deadlocks. In such case, the prediction mechanism becomes significant because a proper prediction helps us deny the allocation request of a resource by a thread if the allocation leads to a potential deadlock. A method to attain to proper prediction is learning the behavior of threads based on runtime monitoring their past behavior. In fact, based on past behavior of threads, potential deadlocks in their future behavior are verified, and current allocation request of a resource is denied if a future deadlock is predicted. The current study is an extension of our previous work where just deadlock tracking was predicted and no adaptation was suggested. In this study, a composite structure of a recurrent Neural Network (NN) called NARX (to track a potential deadlock) and a Multi‐perceptron NN called MLP (to select a suitable action to resolve the potential deadlock) is proposed. Based on the experimental results, the accuracy of the first NN was about 80%, leading to high performance of the second NN, and more than 82% of the real deadlocks were prevented by selecting suitable actions.</description><subject>adaptive systems</subject><subject>Composite structures</subject><subject>Learning</subject><subject>MLP</subject><subject>NARX</subject><subject>neural network</subject><subject>Neural networks</subject><subject>Recurrent neural networks</subject><subject>runtime deadlock prediction</subject><subject>time series</subject><subject>Tracking</subject><issn>1532-0626</issn><issn>1532-0634</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2020</creationdate><recordtype>article</recordtype><recordid>eNp1kMlKA0EURQtRMEbBTyhw46ZjDT26CyEOEFBE18XrGpLu9GRVt5Kdn-A3-iVWG3Hn6j7uO-9duAidUzKjhLAr2elZxFl4gCbUa0BiHh7-zSw-RifOlYRQSjidoPJpaPqi1lhpUFUrt7i3ILdFs8bQKNxZ_aY90Da4NVi2jRys9Qauh6ov-o31V3rE2rWF2l3jOa402Mbff3185uD8Ejq_Brk5RUcGKqfPfnWKXm6Wz4u7YPVwe7-YrwLJMh4GSa5Sk2cJ1wQgVDmY1GQqT3QW6UzxhMVKZlESpWEqDVHGsFwrHgKJvJsC41N0sf_rY18H7XpRtoNtfKRgPKM0iikfqcs9JW3rnNVGdLaowe4EJWJsUvgmxdikR4M9-l5UevcvJxaPyx_-G4I3d68</recordid><startdate>20200525</startdate><enddate>20200525</enddate><creator>Ghorbani, Mehrdad</creator><creator>Babamir, Seyed Morteza</creator><general>Wiley Subscription Services, Inc</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><orcidid>https://orcid.org/0000-0002-1645-4002</orcidid></search><sort><creationdate>20200525</creationdate><title>Runtime deadlock tracking and prevention of concurrent multithreaded programs: A learning‐based approach</title><author>Ghorbani, Mehrdad ; Babamir, Seyed Morteza</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c2934-7bd8fb973e0aa4dbaf8f9db7e95e9d3726dc9575848cf0dff2bed34a059578a23</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2020</creationdate><topic>adaptive systems</topic><topic>Composite structures</topic><topic>Learning</topic><topic>MLP</topic><topic>NARX</topic><topic>neural network</topic><topic>Neural networks</topic><topic>Recurrent neural networks</topic><topic>runtime deadlock prediction</topic><topic>time series</topic><topic>Tracking</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Ghorbani, Mehrdad</creatorcontrib><creatorcontrib>Babamir, Seyed Morteza</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>Concurrency and computation</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Ghorbani, Mehrdad</au><au>Babamir, Seyed Morteza</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Runtime deadlock tracking and prevention of concurrent multithreaded programs: A learning‐based approach</atitle><jtitle>Concurrency and computation</jtitle><date>2020-05-25</date><risdate>2020</risdate><volume>32</volume><issue>10</issue><epage>n/a</epage><issn>1532-0626</issn><eissn>1532-0634</eissn><abstract>Summary Allocation of shared resources by multithreaded programs faces problem of deadlock. Many solutions have been presented to resolve this problem. Among others, the deadlock prevention is stressed when the deadlock detection and removal are costly. Removing deadlocks, which is carried out by aborting/recovering deadlocked threads, causes the waste of the resources used by the deadlocked threads. In such case, deadlock prevention can lead to avoiding the waste of resources. To this end, the runtime behavior of threads should be monitored in order to predict possible future deadlocks. In such case, the prediction mechanism becomes significant because a proper prediction helps us deny the allocation request of a resource by a thread if the allocation leads to a potential deadlock. A method to attain to proper prediction is learning the behavior of threads based on runtime monitoring their past behavior. In fact, based on past behavior of threads, potential deadlocks in their future behavior are verified, and current allocation request of a resource is denied if a future deadlock is predicted. The current study is an extension of our previous work where just deadlock tracking was predicted and no adaptation was suggested. In this study, a composite structure of a recurrent Neural Network (NN) called NARX (to track a potential deadlock) and a Multi‐perceptron NN called MLP (to select a suitable action to resolve the potential deadlock) is proposed. Based on the experimental results, the accuracy of the first NN was about 80%, leading to high performance of the second NN, and more than 82% of the real deadlocks were prevented by selecting suitable actions.</abstract><cop>Hoboken</cop><pub>Wiley Subscription Services, Inc</pub><doi>10.1002/cpe.5324</doi><tpages>21</tpages><orcidid>https://orcid.org/0000-0002-1645-4002</orcidid></addata></record>
fulltext fulltext
identifier ISSN: 1532-0626
ispartof Concurrency and computation, 2020-05, Vol.32 (10), p.n/a
issn 1532-0626
1532-0634
language eng
recordid cdi_proquest_journals_2391156132
source Access via Wiley Online Library
subjects adaptive systems
Composite structures
Learning
MLP
NARX
neural network
Neural networks
Recurrent neural networks
runtime deadlock prediction
time series
Tracking
title Runtime deadlock tracking and prevention of concurrent multithreaded programs: A learning‐based approach
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-23T08%3A39%3A59IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Runtime%20deadlock%20tracking%20and%20prevention%20of%20concurrent%20multithreaded%20programs:%20A%20learning%E2%80%90based%20approach&rft.jtitle=Concurrency%20and%20computation&rft.au=Ghorbani,%20Mehrdad&rft.date=2020-05-25&rft.volume=32&rft.issue=10&rft.epage=n/a&rft.issn=1532-0626&rft.eissn=1532-0634&rft_id=info:doi/10.1002/cpe.5324&rft_dat=%3Cproquest_cross%3E2391156132%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2391156132&rft_id=info:pmid/&rfr_iscdi=true