DiHi: Distributed and Hierarchical Performance Modeling of Multi-VM Cloud Running Applications

2020 
Performance fluctuation of cloud running applications, due to collocations of different tenants on the same machine, is one of the cloud users’ concerns. To alleviate users’ concerns with insightful information, performance modeling and prediction of their applications is deemed necessary. In this paper, we propose two hierarchical and a monolithic performance modeling and prediction frameworks for multi-VM applications running on clouds. Hierarchical frameworks have been considered to distribute the required processing power for performance modeling and prediction over a group of collaborating VMs for better scalability, and to reduce the load of transferring unprocessed profiling data. Several unsupervised learning algorithms and existing single-VM models have been incorporated into the hierarchical frameworks to evaluate their effects on models’ accuracy. Then, the results are compared with a baseline approach where the most intuitive monolithic framework requires the accumulation of all profiling data on a central VM. We have considered a comprehensive set of micro-benchmarks to probe the contention in various resources of all collaborating VMs. Then, using the proposed frameworks, the experienced contention levels by each VM and the overall performance of the applications are modeled and predicted. The results of our experiments in a private and two public clouds show that the distributed and hierarchical frameworks can predict the overall applications’ performance effectively with comparable accuracy to the monolithic framework with an average prediction error of 5% for different cluster sizes and clouds.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    21
    References
    0
    Citations
    NaN
    KQI
    []