Detecting Performance Bottlenecks Guided by Resource Usage

Detecting performance bottlenecks is critical to fix software performance issues. A great part of performance bottlenecks are related to resource usages, which can be affected by configurations. To detect configuration-related performance bottlenecks, the existing works either use learning methods t...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE access 2019, Vol.7, p.117839-117849
Hauptverfasser: Li, Shanshan, Jia, Zhouyang, Li, Yunfeng, Liao, Xiangke, Xu, Erci, Liu, Xiaodong, He, Haochen, Gao, Long
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 117849
container_issue
container_start_page 117839
container_title IEEE access
container_volume 7
creator Li, Shanshan
Jia, Zhouyang
Li, Yunfeng
Liao, Xiangke
Xu, Erci
Liu, Xiaodong
He, Haochen
Gao, Long
description Detecting performance bottlenecks is critical to fix software performance issues. A great part of performance bottlenecks are related to resource usages, which can be affected by configurations. To detect configuration-related performance bottlenecks, the existing works either use learning methods to model the relationships between performance and configurations, or use profiling methods to monitor the execution time. The learning methods are time-consuming when analyzing software with large amounts of configurations, while the profiling methods can incur excessive overheads. In this paper, we conduct empirical studies on configurations, performance and resources. We find that 1) 49% performance issues can be improved or fixed by configurations; 2) 71% configurations affect the performance by tuning resource usage in a simple way; and 3) four types of resources contribute the main causes of performance issues. Inspired by these findings, we design PBHunter, a resource-guided instrumentation tool to detect configuration-related performance bottlenecks. PBHunter ranks configurations by resource usage and selects the ones that heavily affect resource usages. Guided by selected configurations, PBHunter applies the code instrumentation technique in resource-related code snippets. The evaluation shows PBHunter can effectively (36/50) expose the culprits of performance issues with minor overheads (5.1% on average).
doi_str_mv 10.1109/ACCESS.2019.2936599
format Article
fullrecord <record><control><sourceid>proquest_ieee_</sourceid><recordid>TN_cdi_ieee_primary_8808844</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>8808844</ieee_id><doaj_id>oai_doaj_org_article_f28f4e3587e74b74838138db1f38bc7b</doaj_id><sourcerecordid>2455605636</sourcerecordid><originalsourceid>FETCH-LOGICAL-c358t-5d7e99140dac31ad0f1ff8e1405f448108dae19921c4a36974a390c3593310783</originalsourceid><addsrcrecordid>eNpNUMFOAjEQbYwmEuQLuGziebHdtrutN1wRSUg0Iuem252SRdhiuxz4e4tLjHOYmbzOezN9CI0JnhCC5cO0LGer1STDRE4ySXMu5RUaZCSXKeU0v_7X36JRCFscQ0SIFwP0-AwdmK5pN8k7eOv8XrcGkifXdTtowXyFZH5saqiT6pR8QHBHH5_XQW_gDt1YvQswutQhWr_MPsvXdPk2X5TTZWooF13K6wKkJAzX2lCia2yJtQIiwC1jgmBRayBSZsQwTXNZxCxx5EpKCS4EHaJFr1s7vVUH3-y1PymnG_ULOL9R2neN2YGymbAM4toCClYVTFBBqKgrYqmoTFFFrfte6-Dd9xFCp7bxR208X2WM8xzznOZxivZTxrsQPNi_rQSrs-eq91ydPVcXzyNr3LMaAPhjCIGFYIz-AJSMero</addsrcrecordid><sourcetype>Open Website</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2455605636</pqid></control><display><type>article</type><title>Detecting Performance Bottlenecks Guided by Resource Usage</title><source>IEEE Open Access Journals</source><source>DOAJ Directory of Open Access Journals</source><source>Elektronische Zeitschriftenbibliothek - Frei zugängliche E-Journals</source><creator>Li, Shanshan ; Jia, Zhouyang ; Li, Yunfeng ; Liao, Xiangke ; Xu, Erci ; Liu, Xiaodong ; He, Haochen ; Gao, Long</creator><creatorcontrib>Li, Shanshan ; Jia, Zhouyang ; Li, Yunfeng ; Liao, Xiangke ; Xu, Erci ; Liu, Xiaodong ; He, Haochen ; Gao, Long</creatorcontrib><description>Detecting performance bottlenecks is critical to fix software performance issues. A great part of performance bottlenecks are related to resource usages, which can be affected by configurations. To detect configuration-related performance bottlenecks, the existing works either use learning methods to model the relationships between performance and configurations, or use profiling methods to monitor the execution time. The learning methods are time-consuming when analyzing software with large amounts of configurations, while the profiling methods can incur excessive overheads. In this paper, we conduct empirical studies on configurations, performance and resources. We find that 1) 49% performance issues can be improved or fixed by configurations; 2) 71% configurations affect the performance by tuning resource usage in a simple way; and 3) four types of resources contribute the main causes of performance issues. Inspired by these findings, we design PBHunter, a resource-guided instrumentation tool to detect configuration-related performance bottlenecks. PBHunter ranks configurations by resource usage and selects the ones that heavily affect resource usages. Guided by selected configurations, PBHunter applies the code instrumentation technique in resource-related code snippets. The evaluation shows PBHunter can effectively (36/50) expose the culprits of performance issues with minor overheads (5.1% on average).</description><identifier>ISSN: 2169-3536</identifier><identifier>EISSN: 2169-3536</identifier><identifier>DOI: 10.1109/ACCESS.2019.2936599</identifier><identifier>CODEN: IAECCG</identifier><language>eng</language><publisher>Piscataway: IEEE</publisher><subject>Computer bugs ; Configuration management ; Empirical analysis ; Instruments ; Learning ; Learning systems ; resource management ; Software ; Software performance ; software tools ; Teaching methods ; Testing</subject><ispartof>IEEE access, 2019, Vol.7, p.117839-117849</ispartof><rights>Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2019</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><cites>FETCH-LOGICAL-c358t-5d7e99140dac31ad0f1ff8e1405f448108dae19921c4a36974a390c3593310783</cites><orcidid>0000-0002-2533-4547</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/8808844$$EHTML$$P50$$Gieee$$Hfree_for_read</linktohtml><link.rule.ids>314,776,780,860,2096,4010,27610,27900,27901,27902,54908</link.rule.ids></links><search><creatorcontrib>Li, Shanshan</creatorcontrib><creatorcontrib>Jia, Zhouyang</creatorcontrib><creatorcontrib>Li, Yunfeng</creatorcontrib><creatorcontrib>Liao, Xiangke</creatorcontrib><creatorcontrib>Xu, Erci</creatorcontrib><creatorcontrib>Liu, Xiaodong</creatorcontrib><creatorcontrib>He, Haochen</creatorcontrib><creatorcontrib>Gao, Long</creatorcontrib><title>Detecting Performance Bottlenecks Guided by Resource Usage</title><title>IEEE access</title><addtitle>Access</addtitle><description>Detecting performance bottlenecks is critical to fix software performance issues. A great part of performance bottlenecks are related to resource usages, which can be affected by configurations. To detect configuration-related performance bottlenecks, the existing works either use learning methods to model the relationships between performance and configurations, or use profiling methods to monitor the execution time. The learning methods are time-consuming when analyzing software with large amounts of configurations, while the profiling methods can incur excessive overheads. In this paper, we conduct empirical studies on configurations, performance and resources. We find that 1) 49% performance issues can be improved or fixed by configurations; 2) 71% configurations affect the performance by tuning resource usage in a simple way; and 3) four types of resources contribute the main causes of performance issues. Inspired by these findings, we design PBHunter, a resource-guided instrumentation tool to detect configuration-related performance bottlenecks. PBHunter ranks configurations by resource usage and selects the ones that heavily affect resource usages. Guided by selected configurations, PBHunter applies the code instrumentation technique in resource-related code snippets. The evaluation shows PBHunter can effectively (36/50) expose the culprits of performance issues with minor overheads (5.1% on average).</description><subject>Computer bugs</subject><subject>Configuration management</subject><subject>Empirical analysis</subject><subject>Instruments</subject><subject>Learning</subject><subject>Learning systems</subject><subject>resource management</subject><subject>Software</subject><subject>Software performance</subject><subject>software tools</subject><subject>Teaching methods</subject><subject>Testing</subject><issn>2169-3536</issn><issn>2169-3536</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2019</creationdate><recordtype>article</recordtype><sourceid>ESBDL</sourceid><sourceid>RIE</sourceid><sourceid>DOA</sourceid><recordid>eNpNUMFOAjEQbYwmEuQLuGziebHdtrutN1wRSUg0Iuem252SRdhiuxz4e4tLjHOYmbzOezN9CI0JnhCC5cO0LGer1STDRE4ySXMu5RUaZCSXKeU0v_7X36JRCFscQ0SIFwP0-AwdmK5pN8k7eOv8XrcGkifXdTtowXyFZH5saqiT6pR8QHBHH5_XQW_gDt1YvQswutQhWr_MPsvXdPk2X5TTZWooF13K6wKkJAzX2lCia2yJtQIiwC1jgmBRayBSZsQwTXNZxCxx5EpKCS4EHaJFr1s7vVUH3-y1PymnG_ULOL9R2neN2YGymbAM4toCClYVTFBBqKgrYqmoTFFFrfte6-Dd9xFCp7bxR208X2WM8xzznOZxivZTxrsQPNi_rQSrs-eq91ydPVcXzyNr3LMaAPhjCIGFYIz-AJSMero</recordid><startdate>2019</startdate><enddate>2019</enddate><creator>Li, Shanshan</creator><creator>Jia, Zhouyang</creator><creator>Li, Yunfeng</creator><creator>Liao, Xiangke</creator><creator>Xu, Erci</creator><creator>Liu, Xiaodong</creator><creator>He, Haochen</creator><creator>Gao, Long</creator><general>IEEE</general><general>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</general><scope>97E</scope><scope>ESBDL</scope><scope>RIA</scope><scope>RIE</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>7SP</scope><scope>7SR</scope><scope>8BQ</scope><scope>8FD</scope><scope>JG9</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><scope>DOA</scope><orcidid>https://orcid.org/0000-0002-2533-4547</orcidid></search><sort><creationdate>2019</creationdate><title>Detecting Performance Bottlenecks Guided by Resource Usage</title><author>Li, Shanshan ; Jia, Zhouyang ; Li, Yunfeng ; Liao, Xiangke ; Xu, Erci ; Liu, Xiaodong ; He, Haochen ; Gao, Long</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c358t-5d7e99140dac31ad0f1ff8e1405f448108dae19921c4a36974a390c3593310783</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2019</creationdate><topic>Computer bugs</topic><topic>Configuration management</topic><topic>Empirical analysis</topic><topic>Instruments</topic><topic>Learning</topic><topic>Learning systems</topic><topic>resource management</topic><topic>Software</topic><topic>Software performance</topic><topic>software tools</topic><topic>Teaching methods</topic><topic>Testing</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Li, Shanshan</creatorcontrib><creatorcontrib>Jia, Zhouyang</creatorcontrib><creatorcontrib>Li, Yunfeng</creatorcontrib><creatorcontrib>Liao, Xiangke</creatorcontrib><creatorcontrib>Xu, Erci</creatorcontrib><creatorcontrib>Liu, Xiaodong</creatorcontrib><creatorcontrib>He, Haochen</creatorcontrib><creatorcontrib>Gao, Long</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE Open Access Journals</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Engineered Materials Abstracts</collection><collection>METADEX</collection><collection>Technology Research Database</collection><collection>Materials 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><collection>DOAJ Directory of Open Access Journals</collection><jtitle>IEEE access</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Li, Shanshan</au><au>Jia, Zhouyang</au><au>Li, Yunfeng</au><au>Liao, Xiangke</au><au>Xu, Erci</au><au>Liu, Xiaodong</au><au>He, Haochen</au><au>Gao, Long</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Detecting Performance Bottlenecks Guided by Resource Usage</atitle><jtitle>IEEE access</jtitle><stitle>Access</stitle><date>2019</date><risdate>2019</risdate><volume>7</volume><spage>117839</spage><epage>117849</epage><pages>117839-117849</pages><issn>2169-3536</issn><eissn>2169-3536</eissn><coden>IAECCG</coden><abstract>Detecting performance bottlenecks is critical to fix software performance issues. A great part of performance bottlenecks are related to resource usages, which can be affected by configurations. To detect configuration-related performance bottlenecks, the existing works either use learning methods to model the relationships between performance and configurations, or use profiling methods to monitor the execution time. The learning methods are time-consuming when analyzing software with large amounts of configurations, while the profiling methods can incur excessive overheads. In this paper, we conduct empirical studies on configurations, performance and resources. We find that 1) 49% performance issues can be improved or fixed by configurations; 2) 71% configurations affect the performance by tuning resource usage in a simple way; and 3) four types of resources contribute the main causes of performance issues. Inspired by these findings, we design PBHunter, a resource-guided instrumentation tool to detect configuration-related performance bottlenecks. PBHunter ranks configurations by resource usage and selects the ones that heavily affect resource usages. Guided by selected configurations, PBHunter applies the code instrumentation technique in resource-related code snippets. The evaluation shows PBHunter can effectively (36/50) expose the culprits of performance issues with minor overheads (5.1% on average).</abstract><cop>Piscataway</cop><pub>IEEE</pub><doi>10.1109/ACCESS.2019.2936599</doi><tpages>11</tpages><orcidid>https://orcid.org/0000-0002-2533-4547</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 2169-3536
ispartof IEEE access, 2019, Vol.7, p.117839-117849
issn 2169-3536
2169-3536
language eng
recordid cdi_ieee_primary_8808844
source IEEE Open Access Journals; DOAJ Directory of Open Access Journals; Elektronische Zeitschriftenbibliothek - Frei zugängliche E-Journals
subjects Computer bugs
Configuration management
Empirical analysis
Instruments
Learning
Learning systems
resource management
Software
Software performance
software tools
Teaching methods
Testing
title Detecting Performance Bottlenecks Guided by Resource Usage
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-30T07%3A45%3A11IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_ieee_&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Detecting%20Performance%20Bottlenecks%20Guided%20by%20Resource%20Usage&rft.jtitle=IEEE%20access&rft.au=Li,%20Shanshan&rft.date=2019&rft.volume=7&rft.spage=117839&rft.epage=117849&rft.pages=117839-117849&rft.issn=2169-3536&rft.eissn=2169-3536&rft.coden=IAECCG&rft_id=info:doi/10.1109/ACCESS.2019.2936599&rft_dat=%3Cproquest_ieee_%3E2455605636%3C/proquest_ieee_%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2455605636&rft_id=info:pmid/&rft_ieee_id=8808844&rft_doaj_id=oai_doaj_org_article_f28f4e3587e74b74838138db1f38bc7b&rfr_iscdi=true