{"title":"CPU复用下并行应用程序的优化","authors":"T. Takayama, Kenichi Kourai","doi":"10.1109/COMPSAC48688.2020.00017","DOIUrl":null,"url":null,"abstract":"As cloud computing is widely used, even parallel applications run in virtual machines (VMs) of clouds. When CPU overcommitment is performed in clouds, physical CPU cores (pCPUs) can become less than virtual CPUs (vCPUs). In such a situation, it is reported that application performance degrades more largely than expected by the decrease of pCPUs available to each VM. To address this issue, several researchers have proposed optimization techniques of reducing the number of vCPUs assigned to each VM. However, their effectiveness is confirmed only in a limited VM configuration. In this paper, we have first investigated application performance under three configurations and revealed that the previous work cannot always achieve optimal performance. Then we propose pCPU-Est for improving application performance under CPU overcommitment. pCPU-Est dynamically optimizes the number of vCPUs on the basis of correlation between CPU utilization and execution time (dynamic vCPU optimization). In addition, it dynamically optimizes the number of application threads when possible (thread optimization). According to our experiments, dynamic vCPU optimization improved application performance by up to 42%, while thread optimization did by up to 72x.","PeriodicalId":430098,"journal":{"name":"2020 IEEE 44th Annual Computers, Software, and Applications Conference (COMPSAC)","volume":"55 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Optimization of Parallel Applications Under CPU Overcommitment\",\"authors\":\"T. Takayama, Kenichi Kourai\",\"doi\":\"10.1109/COMPSAC48688.2020.00017\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"As cloud computing is widely used, even parallel applications run in virtual machines (VMs) of clouds. When CPU overcommitment is performed in clouds, physical CPU cores (pCPUs) can become less than virtual CPUs (vCPUs). In such a situation, it is reported that application performance degrades more largely than expected by the decrease of pCPUs available to each VM. To address this issue, several researchers have proposed optimization techniques of reducing the number of vCPUs assigned to each VM. However, their effectiveness is confirmed only in a limited VM configuration. In this paper, we have first investigated application performance under three configurations and revealed that the previous work cannot always achieve optimal performance. Then we propose pCPU-Est for improving application performance under CPU overcommitment. pCPU-Est dynamically optimizes the number of vCPUs on the basis of correlation between CPU utilization and execution time (dynamic vCPU optimization). In addition, it dynamically optimizes the number of application threads when possible (thread optimization). According to our experiments, dynamic vCPU optimization improved application performance by up to 42%, while thread optimization did by up to 72x.\",\"PeriodicalId\":430098,\"journal\":{\"name\":\"2020 IEEE 44th Annual Computers, Software, and Applications Conference (COMPSAC)\",\"volume\":\"55 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2020-07-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2020 IEEE 44th Annual Computers, Software, and Applications Conference (COMPSAC)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/COMPSAC48688.2020.00017\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2020 IEEE 44th Annual Computers, Software, and Applications Conference (COMPSAC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/COMPSAC48688.2020.00017","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Optimization of Parallel Applications Under CPU Overcommitment
As cloud computing is widely used, even parallel applications run in virtual machines (VMs) of clouds. When CPU overcommitment is performed in clouds, physical CPU cores (pCPUs) can become less than virtual CPUs (vCPUs). In such a situation, it is reported that application performance degrades more largely than expected by the decrease of pCPUs available to each VM. To address this issue, several researchers have proposed optimization techniques of reducing the number of vCPUs assigned to each VM. However, their effectiveness is confirmed only in a limited VM configuration. In this paper, we have first investigated application performance under three configurations and revealed that the previous work cannot always achieve optimal performance. Then we propose pCPU-Est for improving application performance under CPU overcommitment. pCPU-Est dynamically optimizes the number of vCPUs on the basis of correlation between CPU utilization and execution time (dynamic vCPU optimization). In addition, it dynamically optimizes the number of application threads when possible (thread optimization). According to our experiments, dynamic vCPU optimization improved application performance by up to 42%, while thread optimization did by up to 72x.