Font Size: a A A

Research On Configuration Fault Diagnosis Technology For Performance Optimization

Posted on:2019-01-17Degree:MasterType:Thesis
Country:ChinaCandidate:Y F LiFull Text:PDF
GTID:2428330611493639Subject:Software engineering
Abstract/Summary:PDF Full Text Request
As software systems grow in size,the number of non-functional attribute configuration options in software continues to increase.Configuration-related software performance bottlenecks are one of the important reasons for software performance degradation.Understanding how configuration options affect software performance is critical to detecting configuration-related performance bottlenecks.Detecting configuration-related performance bottlenecks can help developers better understand the impact of configuration on software,speed up problem location,and fix software performance issues to improve efficiency.There are two main categories of work: machine learning and profiling.Machine learning methods build models of software performance and configuration options;however,building high-accuracy performance models can result in unacceptable costs,and this model is affected by many external factors(such as system environment and workload).Traditional profiling tools instrument source code to detect the runtime of each method,inevitably introducing more overhead.This paper proposes a new perspective between configuration options and software performance from the perspective of resources.Configuration options affect performance by affecting resource usage.That is,configuration-related performance problems are caused by resourcerelated configuration items.This paper studied 75 configuration-related performance problems to verify the hypothesis proposed.We designed and implemented a tool CBHunter based on resource dependency analysis.CBHunter detect software configuration-related performance bottlenecks,that is,by analyzing the configuration options to affect the code segments.To quantify the impact of the configuration option on performance,and then use the profiling to detect performance bottlenecks related to software configuration options.The main work of this topic has the following aspects:1.We select 75 configuration-related performance issues from Apache's bug report system and 50 resource-related configuration options.By analyzing software source code to verify that the configuration options affects software performance by affecting the usage of software resources.According to statistics,CPU,memory and I/O are resource types that cause more performance problems.2.From the point of view that configuration options affect performance by affecting resource usage,CBHunter automatically sorts configuration options by resource dependency analysis.Through configuration option slicing,CBHunter can get all the statements affected by the configuration option.And according to the basis of different types of statements,CBHunter use the in-house testing method to calculate the probability of branch execution and loop execution.The score for each configuration option is calculated and CBHunter sort all configuration options.The experimental results show that the performance-related configuration options in the top 10% of the configuration options account for 80%.3.CBHunter implements an automated framework for performance analysis.CBHunter instrument the statements affecting the top 10% of configuration options.By running a software test program,the performance bottleneck caused by the configuration of the software has been determined.This paper applies CBHunter to six performance problems.The experimental results show that CBHunter detects 5 configuration-related performance bottlenecks and compares it with JAVA's standard performance analysis tool HPROF.The ability of detecting configuration-related performance bottleneck of CBHunter is 5.9 times that the ability of HPROF..Based on static configuration options scoring analysis and dynamic profiling analysis,CBHunter can detect configuration options that affect software performance.CBHunter effectively reduce the number of configuration options that need dynamic analysis.Second,CBHunter reduces the number of instrumentations and reduce overhead,and improve the efficiency of diagnosing performance issues.
Keywords/Search Tags:Configuration-related performance bottleneck, Resource dependence analysis, Profiling
PDF Full Text Request
Related items