{"title":"Experience with Performance Engineering Training in Academic and Industrial Environments","authors":"A. Bondi","doi":"10.1145/3053600.3053637","DOIUrl":"https://doi.org/10.1145/3053600.3053637","url":null,"abstract":"We describe our experience of teaching software performance engineering and analysis in academic and industrial settings. There is a need to teach course participants core principles about basic performance modeling and data handling in both settings. These principles are independent of the technologies to which they must be applied and of the measurement and load generation tools that support them. Our experience suggests that it is more difficult for course participants in a university to relate performance engineering to such aspects of the software life cycle as architecture and requirements engineering than it is for industrial participants, because university students are likely lack the related development experience. This is especially true in countries where it is uncommon for mature students to return to graduate school after working outside a university. Our experience also suggests that students who are trained in the natural sciences or who have been rigorously trained in statistics, operations research, or industrial engineering are more likely to devise sound performance tests and be more comfortable with manipulating, interpreting, and analyzing performance data than computer science majors who do not have this type of training. On the other hand, industrial course participants may have had experience of requirements engineering and functional testing processes, but not be used to performing quantitative analyses or devising performance tests to be informative about system behavior and scalability. Some of them may also have considerable experience of using measurement tools and load generators, though not always to the best advantage. Our goal in performance training is to show participants the relationship between performance requirements engineering, testing, architecture, and modeling in principle and in practice. When all participants are involved in the same project in a company, this could be achieved by linking training to a project's performance needs. Otherwise, this can be achieved with exercises that include measuring the resource usage of various applications on their own laptops and explaining their observations. In either case, mentoring of practitioners should include stimulating their curiosity to understand new technologies and to applying various optimization and analysis methods to the issues they encounter.","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121837528","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"From Resource Monitoring to Requirements-based Adaptation: An Integrated Approach","authors":"Holger Eichelberger, Cui Qin, Klaus Schmid","doi":"10.1145/3053600.3053617","DOIUrl":"https://doi.org/10.1145/3053600.3053617","url":null,"abstract":"In large and complex systems there is a need to monitor resources as it is critical for system operation to ensure sufficient availability of resources and to adapt the system as needed. While there are various (resource)-monitoring solutions, these typically do not include an analysis part that takes care of analyzing violations and responding to them. In this paper we report on experiences, challenges and lessons learned in creating a solution for performing requirements-monitoring for resource constraints and using this as a basis for adaptation to optimize the resource behavior. Our approach rests on reusing two previous solutions (one for resource monitoring and one for requirements-based adaptation) that were built in our group.","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126560288","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Using Machine Learning in Trace-driven Energy-Aware Simulations of High-Throughput Computing Systems","authors":"A. McGough, N. A. Moubayed, M. Forshaw","doi":"10.1145/3053600.3053612","DOIUrl":"https://doi.org/10.1145/3053600.3053612","url":null,"abstract":"When performing a trace-driven simulation of a High Throughput Computing system we are limited to the knowledge which should be available to the system at the current point within the simulation. However, the trace-log contains information we would not be privy to during the simulation. Through the use of Machine Learning we can extract the latent patterns within the trace-log allowing us to accurately predict characteristics of tasks based only on the information we would know. These characteristics will allow us to make better decisions within simulations allowing us to derive better policies for saving energy. We demonstrate that we can accurately predict (up-to 99% accuracy), using oversampling and deep learning, those tasks which will complete while at the same time provide accurate predictions for the task execution time and memory footprint using Random Forest Regression.","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123688122","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Session details: Autonomous Control for Performance and Reliability Trade-offs in Internet of Services (ACPROSS'17)","authors":"V. Cardellini, F. L. Presti, P. Počta","doi":"10.1145/3254599","DOIUrl":"https://doi.org/10.1145/3254599","url":null,"abstract":"The paradigm shift from an information-oriented Internet into an Internet of Services (IoS) has opened up virtually unbounded possibilities for creating and deploying new services. In this reshaped ICT landscape, critical software systems, which include Internet of Things, cloud services, softwarized networks, etc., essentially consist of large-scale service chains, combining and integrating the functionalities of numbers of other services offered by third parties. In this context, one of the most challenging problems is the provision of service chains which offer an adequate level of performance, reliability and quality perceived by the end users, based on a large offering of multiple functionally equivalent services that not only differ in terms of performance and reliability characteristics, but might also exhibit a churn rate and time varying behavior. Motivated by this, the aim of ACPROSS 2017 is to share novel solutions regarding the development of autonomous control methods and algorithms for discussing a high quality, wellperforming and reliable IoS. The workshop is organized and supported by the COST Action IC1304 “Autonomous Control for a Reliable Internet of Services” (ACROSS).","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"51 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125086609","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Rick Rabiser, Michael Vierhauser, Sam Guinea, W. Hasselbring
{"title":"Session details: First International Workshop on Monitoring in Large-Scale Software Systems (MoLS'17)","authors":"Rick Rabiser, Michael Vierhauser, Sam Guinea, W. Hasselbring","doi":"10.1145/3254602","DOIUrl":"https://doi.org/10.1145/3254602","url":null,"abstract":"It is our great pleasure to welcome you to MoLS 2017, the First International Workshop on Monitoring in Large-Scale Software Systems. MoLS 2017 aims to explore and explicate the current state, ongoing work and open issues regarding monitoring in large-scale software systems. We also want to support the transfer of knowledge between different disciplines and domains working on this topic. Large-scale, heterogeneous software systems – e.g., cyber-physical systems, cloud-based systems, or service-based systems – are ubiquitous in many domains. Such systems’ full behavior emerges only at runtime, when the involved systems interact with each other, hardware, third-party systems, or legacy systems. Thus, engineers are interested in monitoring the overall system, for instance, to verify components’ correct timing or measure performance and resource consumption. The complexity and heterogeneity of large-scale software systems, however, complicates monitoring. Properties need to be checked across the boundaries of multiple constituent systems and heterogeneous, domainspecific technologies need to be instrumented. Also, different types of properties must be checked and systems exist in many different versions and variants. In response to these and other challenges, MoLS 2017 focuses on methods and tools supporting monitoring in large-scale software systems and explores how software systems of realistic complexity can be monitored effectively and efficiently.","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126226369","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
K. Chow, Wanyi Zhu, Chengdong Li, Si Chen, Tongbao Zhang, Chenggang Qin, Sanhong Li
{"title":"Developing Software Performance Training at Alibaba","authors":"K. Chow, Wanyi Zhu, Chengdong Li, Si Chen, Tongbao Zhang, Chenggang Qin, Sanhong Li","doi":"10.1145/3053600.3053640","DOIUrl":"https://doi.org/10.1145/3053600.3053640","url":null,"abstract":"Effective software performance analysis needs to be conducted by crossing multiple disciplines such as algorithms, data structures, effective coding, performance data collection and its associated overheads, computer architecture, operating systems, containers and virtual machines, statistical analysis, machine learning and applied mathematics. However, no students are prepared to learn all these subjects in school. There is a need to develop software performance training at work. We need a training program that targets the different needs of new and old employees. We are working on developing such a program here at Alibaba. This paper describes our focus on practical aspect of mastering various subjects to aid software performance analysis.","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116592516","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Do We Teach Useful Statistics for Performance Evaluation?","authors":"L. Bulej, Vojtech Horký, P. Tůma","doi":"10.1145/3053600.3053638","DOIUrl":"https://doi.org/10.1145/3053600.3053638","url":null,"abstract":"Basic topics from probability and statistics -- such as probability distributions, parameter estimation, confidence intervals and statistical hypothesis testing -- are often included in computing curricula and used as tools for experimental performance evaluation. Unfortunately, data collected through experiments may not meet the requirements of many statistical analysis methods, such as independent sampling or normal distribution. As a result, the analysis methods may be more tricky to apply and the analysis results may be more tricky to interpret than one might expect. Here, we look at some of the issues on methods and experiments that would be considered basic in performance evaluation education.","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121759523","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Simulation-Based Performance Evaluation of an Energy-Aware Heuristic for the Scheduling of HPC Applications in Large-Scale Distributed Systems","authors":"Georgios L. Stavrinides, H. Karatza","doi":"10.1145/3053600.3053611","DOIUrl":"https://doi.org/10.1145/3053600.3053611","url":null,"abstract":"As the distributed resources required for the processing of High Performance Computing (HPC) applications are becoming larger in scale and computational capacity, their energy consumption has become a major concern. Therefore, there is a growing focus from both the academia and the industry on the minimization of the carbon footprint of the computational resources, especially through the efficient scheduling of the workload. In this paper, a technique is proposed for the energy-aware scheduling of bag-of-tasks applications with time constraints in a large-scale heterogeneous distributed system. Its performance is evaluated by simulation and compared with a baseline algorithm. The simulation results show that the proposed heuristic not only reduces the energy consumption of the system, but also improves its performance.","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124109482","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Daniela Loreti, F. Chesani, A. Ciampolini, P. Mello
{"title":"Distributed Compliance Monitoring of Business Processes over MapReduce Architectures","authors":"Daniela Loreti, F. Chesani, A. Ciampolini, P. Mello","doi":"10.1145/3053600.3053616","DOIUrl":"https://doi.org/10.1145/3053600.3053616","url":null,"abstract":"In the era of IoT, large volumes of event data from different sources are collected in the form of streams. As these logs need to be online processed to extract further knowledge about the underlying business process, it is becoming more and more important to give support to run-time monitoring. In particular, increasing attention has been turned to conformance checking as a way to identify when a sequence of events deviates from the expected behavior. Albeit rather straightforward on a small log file, conformance verification techniques may show poor performance when dealing with big data, making increasingly attractive the possibility to improve scalability through distributed computation. In this paper, we adopt a previously implemented framework for compliance verification (which provides a high-level logic-based notation for the monitoring specification) and we show how it can be efficiently distributed on a set of computing nodes to support scalable run-time monitoring when dealing with large volumes of event logs.","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117154784","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Vincent Reniers, D. Landuyt, A. Rafique, W. Joosen
{"title":"On the State of NoSQL Benchmarks","authors":"Vincent Reniers, D. Landuyt, A. Rafique, W. Joosen","doi":"10.1145/3053600.3053622","DOIUrl":"https://doi.org/10.1145/3053600.3053622","url":null,"abstract":"The proliferation of Big Data systems and namely NoSQL databases has resulted in a tremendous heterogeneity in its offerings. It has become increasingly difficult to compare and select the most optimal NoSQL storage technology. Current benchmark efforts, such as the Yahoo! Cloud Serving Benchmark (YCSB), evaluate simple read and write operations on a primary key. However, while YCSB has become the de-facto benchmark solution for practitioners and NoSQL vendors, it is lacking in capabilities to extensively evaluate specific NoSQL solutions. In this paper, we present a systematic survey of current NoSQL benchmarks, in which we identify a clear gap in benchmarking more advanced workloads (e.g. nested document search) for features specific to NoSQL database families (e.g. document stores). Secondly, based on our survey, we discuss the strengths and weaknesses of the different benchmark design approaches, and argue in favor of a benchmark suite that targets specific families of NoSQL databases yet still allows overall comparison of databases in terms of their commonalities.","PeriodicalId":115833,"journal":{"name":"Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-04-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123045331","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}