Li Wang, Tianni Xu, Jing Wang, Wei-gong Zhang, Xiufeng Sui, Yungang Bao
Despite a number of innovative computer systems with high capacity memory have been built, the design principles behind an operating system kernel have remained unchanged for decades. We argue that kernel parameters is a kind of special interface of operating system and must be factored into the operation and maintenance of datacenters. To shed some light on the effectiveness of tuning Linux parameters of virtual memory subsystem when running Spark workloads, we evaluate the benchmarks in a simple standalone deploy mode. Our performance results reveal that some of the Linux memory parameters must be carefully set to efficiently support these processing workloads. We hope this work yields insights for datacenter system operators.
{"title":"Understanding the Behavior of Spark Workloads from Linux Kernel Parameters Perspective","authors":"Li Wang, Tianni Xu, Jing Wang, Wei-gong Zhang, Xiufeng Sui, Yungang Bao","doi":"10.1145/3007592.3007593","DOIUrl":"https://doi.org/10.1145/3007592.3007593","url":null,"abstract":"Despite a number of innovative computer systems with high capacity memory have been built, the design principles behind an operating system kernel have remained unchanged for decades. We argue that kernel parameters is a kind of special interface of operating system and must be factored into the operation and maintenance of datacenters. To shed some light on the effectiveness of tuning Linux parameters of virtual memory subsystem when running Spark workloads, we evaluate the benchmarks in a simple standalone deploy mode. Our performance results reveal that some of the Linux memory parameters must be carefully set to efficiently support these processing workloads. We hope this work yields insights for datacenter system operators.","PeriodicalId":125362,"journal":{"name":"Proceedings of the Posters and Demos Session of the 17th International Middleware Conference","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130713508","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}
Live migration of Java Virtual Machines (JVMs) consumes significant amounts of time and resources, imposing relevant application performance overhead. This problem is specially hard when memory modified by applications changes faster than it can be transferred through the network (to a remote host). Current solutions to this problem resort to several techniques which depend on high-speed networks and application throttling, require lots of CPU time to compress memory, or need explicit assistance from the application. We propose a novel approach, Garbage Collector (GC) assisted JVM Live Migration for Java Server Applications (ALMA). ALMA makes a snapshot to be migrated containing a minimal amount of application state, by taking into account the amount of reachable memory (i.e. live data) detected by the GC. The main novelty of ALMA is the following: ALMA analyzes the JVM heap looking for regions in which a collection phase is advantageous w.r.t. the network bandwidth available (i.e. it pays to collect because a significant amount of memory will not be part of the snapshot). ALMA is implemented on OpenJDK 8 and extends CRIU (a Linux disk-based process checkpoint/restore tool) to support process live migration over the network. We evaluate ALMA using well-known JVM performance benchmarks (SPECjvm2008 and DaCapo), and by comparing it to other previous approaches. ALMA shows very good performance results.
{"title":"ALMA: GC-assisted JVM Live Migration for Java Server Applications","authors":"R. Bruno, P. Ferreira","doi":"10.1145/3007592.3007603","DOIUrl":"https://doi.org/10.1145/3007592.3007603","url":null,"abstract":"Live migration of Java Virtual Machines (JVMs) consumes significant amounts of time and resources, imposing relevant application performance overhead. This problem is specially hard when memory modified by applications changes faster than it can be transferred through the network (to a remote host). Current solutions to this problem resort to several techniques which depend on high-speed networks and application throttling, require lots of CPU time to compress memory, or need explicit assistance from the application. We propose a novel approach, Garbage Collector (GC) assisted JVM Live Migration for Java Server Applications (ALMA). ALMA makes a snapshot to be migrated containing a minimal amount of application state, by taking into account the amount of reachable memory (i.e. live data) detected by the GC. The main novelty of ALMA is the following: ALMA analyzes the JVM heap looking for regions in which a collection phase is advantageous w.r.t. the network bandwidth available (i.e. it pays to collect because a significant amount of memory will not be part of the snapshot). ALMA is implemented on OpenJDK 8 and extends CRIU (a Linux disk-based process checkpoint/restore tool) to support process live migration over the network. We evaluate ALMA using well-known JVM performance benchmarks (SPECjvm2008 and DaCapo), and by comparing it to other previous approaches. ALMA shows very good performance results.","PeriodicalId":125362,"journal":{"name":"Proceedings of the Posters and Demos Session of the 17th International Middleware Conference","volume":"150 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117331407","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}
The researches of temporal graph have been conducted in interdisciplinary fields and applied to various kinds of networks; online social network, cell biology network, neural network, ecological network, etc. However, processing and understanding the networks would be complicated for application developers due to their high velocity and volume. Also, the heterogeneity of the networks incurs their unified usage. Therefore, we propose the online graph processing middleware for temporal networks, namely Hairspring. The middleware is based on the temporal property graph, which we leverage the property graph model, Blueprints, with temporal extensions. Based on the temporal property graph, we present and prototype the publish-subscribe architecture, which enables to publish graph elements and notify the processed graph elements of interest to subscribers on the fly.
{"title":"Hairspring: Online graph processing middleware for temporal networks","authors":"Jaewook Byun, Sungpil Woo, Daeyoung Kim","doi":"10.1145/3007592.3007598","DOIUrl":"https://doi.org/10.1145/3007592.3007598","url":null,"abstract":"The researches of temporal graph have been conducted in interdisciplinary fields and applied to various kinds of networks; online social network, cell biology network, neural network, ecological network, etc. However, processing and understanding the networks would be complicated for application developers due to their high velocity and volume. Also, the heterogeneity of the networks incurs their unified usage. Therefore, we propose the online graph processing middleware for temporal networks, namely Hairspring. The middleware is based on the temporal property graph, which we leverage the property graph model, Blueprints, with temporal extensions. Based on the temporal property graph, we present and prototype the publish-subscribe architecture, which enables to publish graph elements and notify the processed graph elements of interest to subscribers on the fly.","PeriodicalId":125362,"journal":{"name":"Proceedings of the Posters and Demos Session of the 17th International Middleware Conference","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129219611","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}
A. Boutet, Albin Petit, Sonia Ben Mokhtar, Léa Laporte
Several private Web search solutions have been proposed to preserve the user privacy while querying search engines. However, most of these solutions are costly in term of processing, network overhead and latency as they mostly rely on cryptographic techniques and/or the generation of fake requests. Furthermore, all these solutions protect all queries similarly, ignoring whether the original request contains sensitive content (e.g., religious, political or sexual orientation) or not. Based on an analysis of a real dataset of Web search requests, we show that queries related to sensitive matters are in practice a minority. As a consequence, protecting all queries similarly results in poor performance as a large number of queries get overprotected. In this paper, we propose a request sensitivity assessment module that we use for improving the practicability of existing private web search solutions. We assess the sensitivity of a request in two phases: a semantic sensitivity analysis (based on the topic of the query) and a request linkability analysis (based on the similarity between the current query and the query history of the requester). Finally, the sensitivity assessment is used to adapt the level of protection of a given query according to its identified degree of sensitivity: the more sensitive a query is, the more protected it will be. Experiments with a real dataset show that our approach can improve the performance of state-of-the-arts private Web search solutions by reducing the number of queries overprotected, while ensuring a similar level of privacy to the users, making them more likely to be used in practice.
{"title":"Leveraging Query Sensitivity for Practical Private Web Search","authors":"A. Boutet, Albin Petit, Sonia Ben Mokhtar, Léa Laporte","doi":"10.1145/3007592.3007595","DOIUrl":"https://doi.org/10.1145/3007592.3007595","url":null,"abstract":"Several private Web search solutions have been proposed to preserve the user privacy while querying search engines. However, most of these solutions are costly in term of processing, network overhead and latency as they mostly rely on cryptographic techniques and/or the generation of fake requests. Furthermore, all these solutions protect all queries similarly, ignoring whether the original request contains sensitive content (e.g., religious, political or sexual orientation) or not. Based on an analysis of a real dataset of Web search requests, we show that queries related to sensitive matters are in practice a minority. As a consequence, protecting all queries similarly results in poor performance as a large number of queries get overprotected. In this paper, we propose a request sensitivity assessment module that we use for improving the practicability of existing private web search solutions. We assess the sensitivity of a request in two phases: a semantic sensitivity analysis (based on the topic of the query) and a request linkability analysis (based on the similarity between the current query and the query history of the requester). Finally, the sensitivity assessment is used to adapt the level of protection of a given query according to its identified degree of sensitivity: the more sensitive a query is, the more protected it will be. Experiments with a real dataset show that our approach can improve the performance of state-of-the-arts private Web search solutions by reducing the number of queries overprotected, while ensuring a similar level of privacy to the users, making them more likely to be used in practice.","PeriodicalId":125362,"journal":{"name":"Proceedings of the Posters and Demos Session of the 17th International Middleware Conference","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127604498","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}
B. Viswanathan, Seep Goel, Mudit Verma, Ravina Kothari
Fault diagnosis in IT environments is complicated because (i) most monitors have shared specificity (high amount of memory utilization can result from a large number of causes), (ii) it is hard to deploy and maintain enough sensors to ensure adequate coverage, and (iii) some functionality may be provided as-a-service by external parties with limited visibility and simultaneous availability of alert data. To systematically incorporate uncertainty and to be able to fuse information from multiple sources, we propose the use of Dempster-Shafer Theory (DST) of evidential reasoning for fault diagnosis and show its efficacy in the context of a distributed application.
{"title":"Evidential Reasoning Based Fault Diagnosis","authors":"B. Viswanathan, Seep Goel, Mudit Verma, Ravina Kothari","doi":"10.1145/3007592.3007602","DOIUrl":"https://doi.org/10.1145/3007592.3007602","url":null,"abstract":"Fault diagnosis in IT environments is complicated because (i) most monitors have shared specificity (high amount of memory utilization can result from a large number of causes), (ii) it is hard to deploy and maintain enough sensors to ensure adequate coverage, and (iii) some functionality may be provided as-a-service by external parties with limited visibility and simultaneous availability of alert data. To systematically incorporate uncertainty and to be able to fuse information from multiple sources, we propose the use of Dempster-Shafer Theory (DST) of evidential reasoning for fault diagnosis and show its efficacy in the context of a distributed application.","PeriodicalId":125362,"journal":{"name":"Proceedings of the Posters and Demos Session of the 17th International Middleware Conference","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114183932","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}
OAuthing and IGNITE are federated middleware that together provide an improved model for sharing data from Internet of Things (IoT) devices to Cloud Services. OAuthing provides an identity broker and authorization server that issues OAuth2 anonymised credentials based on upstream identities from the User's Identity Provider. IGNITE is a cloud-based message router that uses identity and authorization policies from OAuthing to instantiate each user a cloud-based container for sharing their data. The demonstration will show the post-manufacturing process to register a device with OAuthing, together with a user "claiming" a device. Once the device is claimed it will be connected to a third-party cloud service, with full user consent to create an policy. We will then demonstrate the policy in action and the creation of a cloud-instance on behalf of the user.
{"title":"Privacy-enhancing Federated Middleware for the Internet of Things","authors":"Paul Fremantle, B. Aziz","doi":"10.1145/3007592.3007596","DOIUrl":"https://doi.org/10.1145/3007592.3007596","url":null,"abstract":"OAuthing and IGNITE are federated middleware that together provide an improved model for sharing data from Internet of Things (IoT) devices to Cloud Services. OAuthing provides an identity broker and authorization server that issues OAuth2 anonymised credentials based on upstream identities from the User's Identity Provider. IGNITE is a cloud-based message router that uses identity and authorization policies from OAuthing to instantiate each user a cloud-based container for sharing their data. The demonstration will show the post-manufacturing process to register a device with OAuthing, together with a user \"claiming\" a device. Once the device is claimed it will be connected to a third-party cloud service, with full user consent to create an policy. We will then demonstrate the policy in action and the creation of a cloud-instance on behalf of the user.","PeriodicalId":125362,"journal":{"name":"Proceedings of the Posters and Demos Session of the 17th International Middleware Conference","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128417377","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}
S. Dolev, Chryssis Georgiou, Ioannis Marcoullis, E. Schiller
Current reconfiguration techniques depend on starting the system in a consistent configuration, in which all participating entities are in a predefined state. Starting from that state, the system must preserve consistency as long as a predefined churn rate of processors joins and leaves is not violated, and unbounded storage is available. Many systems cannot control this churn rate and lack access to unbounded storage. System designers that neglect the outcome of violating the above assumptions may doom the system to exhibit illegal behaviors. We present the first automatically recovering reconfiguration scheme that recovers from transient faults, such as temporal violations of the above assumptions. Our self-stabilizing solutions regain safety automatically by assuming temporal access to reliable failure detectors (FDs). Once safety is established, the FD reliability is no longer needed. Still, liveness is conditioned by the FD’s unreliable signals. Our self-stabilizing reconfiguration techniques can serve as the basis for the implementation of several dynamic services over message passing systems. Examples include self-stabilizing reconfigurable virtual synchrony, extendable to a self-stabilizing reconfigurable state machine replication.
{"title":"Self-stabilizing Reconfiguration","authors":"S. Dolev, Chryssis Georgiou, Ioannis Marcoullis, E. Schiller","doi":"10.1145/3007592.3007600","DOIUrl":"https://doi.org/10.1145/3007592.3007600","url":null,"abstract":"Current reconfiguration techniques depend on starting the system in a consistent configuration, in which all participating entities are in a predefined state. Starting from that state, the system must preserve consistency as long as a predefined churn rate of processors joins and leaves is not violated, and unbounded storage is available. Many systems cannot control this churn rate and lack access to unbounded storage. System designers that neglect the outcome of violating the above assumptions may doom the system to exhibit illegal behaviors. We present the first automatically recovering reconfiguration scheme that recovers from transient faults, such as temporal violations of the above assumptions. Our self-stabilizing solutions regain safety automatically by assuming temporal access to reliable failure detectors (FDs). Once safety is established, the FD reliability is no longer needed. Still, liveness is conditioned by the FD’s unreliable signals. Our self-stabilizing reconfiguration techniques can serve as the basis for the implementation of several dynamic services over message passing systems. Examples include self-stabilizing reconfigurable virtual synchrony, extendable to a self-stabilizing reconfigurable state machine replication.","PeriodicalId":125362,"journal":{"name":"Proceedings of the Posters and Demos Session of the 17th International Middleware Conference","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116462359","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":"Proceedings of the Posters and Demos Session of the 17th International Middleware Conference","authors":"","doi":"10.1145/3007592","DOIUrl":"https://doi.org/10.1145/3007592","url":null,"abstract":"","PeriodicalId":125362,"journal":{"name":"Proceedings of the Posters and Demos Session of the 17th International Middleware Conference","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124902542","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}