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...
Gespeichert in:
Veröffentlicht in: | Concurrency and computation 2020-05, Vol.32 (10), p.n/a |
---|---|
Hauptverfasser: | , |
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 & Sons, Ltd.</rights><rights>2020 John Wiley & 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 |