Figure 2 - uploaded by Priya Nagpurkar
Content may be subject to copyright.
Experimental Setup. In addition to an application server running on a 4-core POWER6, we used two separated servers: database and geocoder. The latter emulates a Web service to convert a street address to a pair of longitude and latitude for server-side mashups.

Experimental Setup. In addition to an application server running on a 4-core POWER6, we used two separated servers: database and geocoder. The latter emulates a Web service to convert a street address to a pair of longitude and latitude for server-side mashups.

Source publication
Conference Paper
Full-text available
Advances in network performance and browser technologies, coupled with the ubiquity of internet access and proliferation of users, have lead to the emergence of a new class of Web applications, called Web 2.0. Web 2.0 technologies enable easy collaboration and sharing by allowing users to contribute, modify, and aggregate content using applications...

Context in source publication

Context 1
... our experiments, we use a dummy geocoding server in our local network rather than using the Yahoo Maps Geocoding Web Service. Figure 2 shows our setup along with hardware and software configuration and version details. 20 30 40 50 60 70 80 90 ...

Citations

... Different workloads exhibit different levels and patterns of interaction with the infrastructure. In the past, there have been a lot of studies on the scalability of workloads on different platforms in a noncloud setting [3][4][5][57][58][59]. Majority of this work [3,4,57,60] has focused on identifying the effects of micro-architectural features on workload scalability such as the number of cores, sockets, threads per core, L1 and L2 cache sizes, and multi-processor architectures (SMP, CMP). ...
... The software stack (application/middleware/OS) is another dimension that affects workload scalability [5,58,59]. In [58], the authors studied scalability of three server-side Web applications on a chip multiprocessor by reducing lock contention. ...
... In [58], the authors studied scalability of three server-side Web applications on a chip multiprocessor by reducing lock contention. [59] studied emerging Web 2.0 workloads from applications like Mashups, Wikis, Blogs, and the specific scalability issues resulting from participatory nature of these workloads on multi-core architectures (IBM POWER6 and SUN Niagara 2). Scalability analysis of enterprise-grade Java workloads on multi-core system (IBM POWER7) was done in [5], where a top-down approach for identifying performance bottlenecks across different layers of the software stack was proposed. ...
Article
Full-text available
Cloud computing offers the flexibility to dynamically size the infrastructure in response to changes in workload demand. While both horizontal scaling and vertical scaling of infrastructure are supported by major cloud providers, these scaling options differ significantly in terms of their cost, provisioning time, and their impact on workload performance. Importantly, the efficacy of horizontal and vertical scaling critically depends on the workload characteristics, such as the workload’s parallelizability and its core scalability. In today’s cloud systems, the scaling decision is left to the users, requiring them to fully understand the trade-offs associated with the different scaling options. In this paper, we present our solution for optimizing the resource scaling of cloud deployments via implementation in OpenStack. The key component of our solution is the modeling engine that characterizes the workload and then quantitatively evaluates different scaling options for that workload. Our modeling engine leverages Amdahl’s Law to model service timescaling in scale-up environments and queueing-theoretic concepts to model performance scaling in scale-out environments. We further employ Kalman filtering to account for inaccuracies in the model-based methodology and to dynamically track changes in the workload and cloud environment.
... Modern applications, such as Social Networks, Wikis, and Blogs, are data-centric, which require frequent data access [10]. This poses new challenges on the data-tier of multi-tier applications because the performance of the datatier is typically governed by strict SLOs [11]. ...
... We are targeting multi-tier web applications (the left side of Fig. 1). We are focusing on managing the data-tier because of its major effect on the performance of web applications, which are mostly data centric [10]. For the data-tier, we assume horizontally scalable key-value stores due to their popularity in many large scale web applications such as Facebook and LinkedIn. ...
Article
Full-text available
The pay-as-you-go pricing model and the illusion of unlimited resources in the Cloud initiate the idea to provision services elastically. Elastic provisioning of services allocates/de-allocates resources dynamically in response to the changes of the workload. It minimizes the service provisioning cost while maintaining the desired service level objectives (SLOs). Model-predictive control is often used in building such elasticity controllers that dynamically provision resources. However, they need to be trained, either online or offline, before making accurate scaling decisions. The training process involves tedious and significant amount of work as well as some expertise, especially when the model has many dimensions and the training granularity is fine, which is proved to be essential in order to build an accurate elasticity controller. In this paper, we present OnlineElastMan, which is a self-trained proactive elasticity manager for cloud-based storage services. It automatically evolves itself while serving the workload. Experiments using OnlineElastMan with Cassandra indicate that OnlineElastMan continuously improves its provision accuracy, i.e., minimizing provisioning cost and SLO violations, under various workload patterns.
... Schneider et al. [9] point out that the use of AJAX and mashups generates more aggressive and bursty network usage compared to the overall HTTP traffic. Similar conclusions but considering server performance are presented in [10]. Unfortunately, these studies only consider specific web paradigms, thus the workload used is not representative enough of current users' navigations. ...
Article
Full-text available
The increasing popularity of web applications has introduced a new paradigm where users are no longer passive web consumers but they become active contributors to the web, specially in the contexts of social networking, blogs, wikis or e-commerce. In this new paradigm, contents and services are even more dynamic, which consequently increases the level of dynamism in user’s behavior. Moreover, this trend is expected to rise in the incoming web.This dynamism is a major adversity to define and model representative web workload, in fact, this characteristic is not fully represented in the most of the current web workload generators. This work proves that the web user’s dynamic behavior is a crucial point that must be addressed in web performance studies in order to accurately estimate system performance indexes.In this paper, we analyze the effect of using a more realistic dynamic workload on the web performance metrics. To this end, we evaluate a typical e-commerce scenario and compare the results obtained using different levels of dynamic workload instead of traditional workloads. Experimental results show that, when a more dynamic and interactive workload is taken into account, performance indexes can widely differ and noticeably affect the stress borderline on the server. For instance, the processor usage can increase 30% due to dynamism, affecting negatively average response time perceived by users, which can also turn in unwanted effects in marketing and fidelity policies.
... Schneider et al. [SAAF08] point out that the use of AJAX and mashups generates more aggressive and bursty network usage compared to the overall HTTP traffic. Similar conclusions but considering server performance are presented in [ONUI09] by Ohara et al. Unfortunately, these studies only consider specific web paradigms, thus the workload used is not representative enough of current users' navigations. ...
... They state that ample computational and network resources are readily available and capable of consuming URLs that are tens of megabytes long. Although it may be possible to make a request with a long URL it is difficult to accept the restrain this will put on the interaction of an application, especially as AJAX applications typically utilise frequent data requests (Ohara et al., 2009). ...
... Despite this, Bozdag, Mesbah & van Deursen (2009) argue that there has been done little empirical research to actually confirm the trade-offs by utilising a pull versus push approach in Web applications. Research also show that the data-centricity of AJAX applications can lead to reduced server performance because of frequent data requests (Ohara et al., 2009), thus making a push-model interesting. Bozdag, Mesbah & van Deursen's (2009) work compares push-based data delivery against pull-based data delivery in terms of data coherence, scalability, network performance and reliability. ...
Article
Full-text available
The past decade has marked a shift in Web development as users have become accustomed to Web applications with dynamic content and enhanced user experience. Different languages and technologies have been utilised to make way for such applications, gradually stretching existing standards and protocols to its limits. The field of Web development has been characterized by a lack of coherent architectural concepts, partly due to the absences of standard protocols that support modern communication styles. As a result of this, systems specifically designed for real-time data delivery have been required and realised with proprietary technology in the industry, consequently violating established software engineering principles such as modularity, consistency and simplicity. This paper explores how current Web technologies support the requirements of modern Web applications. A prototype application was developed in the last phase to demonstrate the efficacy of combining the WebSocket protocol and API together with the use of JavaScript as exclusive programming language at the client and server. Based on the findings of the research carried out it appears that the use of protocols and standards such as WebSocket, WebSocket API and Server-Sent Events caters for higher network performance, increased flexibility and standards compliance.
... Blogging is an example of this new class of application where users can modify and aggregate content in the form of posts (entries). These new applications induce workloads in the web with possible "different" characteristics compared to previous web workloads [ (Abdolreza, 2010), (Ohara, 2009)]. The study of these new characteristics is an important step in the development of workload generators for capacity planning purposes. ...
Conference Paper
Full-text available
Web 2.0 technologies have enabled the collaboration and sharing of web users through emerging applications such as Wikis, Blogs and Mashups. These applications induce workloads in the web with new features, whose study is important for the development of workload generators that support capacity planning and traffic engineering activities. GBLOT is an analytical generator of workloads that can be used to evaluate the short-term behavior of blog hosting sites. The user session model of GBLOT is based on CBMGs (Customer Behavior Model Graphs). The tool provides a distributed architecture which refers to the possibility of generating processes among several computational nodes. GBLOT has been developed in three stages, each with its own objectives and challenges. The aim of this paper is to use the experience obtained with GBLOT to make evident some problems in the construction of analytic workload generators for blogging systems. Some of these problems could be extended to other Web 2.0 applications. Our major findings are: (1) Standardized application level protocols are necessary. They will enable us to develop tools capable of generating workloads for different types of web publishing systems. (2) The distributed architecture is not optional, it is necessary if we want to model scenarios happening in days or hours of heavy loads, such as flash crowds. (3) The introduction of new posts could influence the popularity of blogs. We question the usefulness of static models of popularity to represent the dynamism of Web 2.0 applications.
... To test the SMT scalability, we increased the number of SMT threads in each core. Although many previous studies67891011 measured core scalability and SMT scalability of programs on multi-core SMT processors, this is the first work to focus on the effects of the parallelization model on multi-core SMT processors. Our results showed that the multi-thread model achieved much better SMT scalability than the multi-process model because the multi-thread model generated a smaller number of cache misses and DTLB misses due to a smaller memory footprint. ...
... There are many papers that have measured performance scalability on systems with high thread-level parallelism using multi-core SMT processors67891011. For example, Kaseridis and John [7] studied the scalability of the SPECjbb2005 on a Niagara processor. ...
... Our results showed that the 4-way SMT of Niagara might be another important factor that reduced the performance of 4-JVM configuration on Niagara. Many previous studies identified lock contention as the dominant cause of poor scalability on multi-core SMT processors91011. For example, Ishizaki et al. [11] reported that the performance of Java server workloads running on a Niagara2 processor was improved by up to 132% by removing the contended locks. ...
Conference Paper
Many modern high-performance processors support multiple hardware threads in the form of multiple cores and SMT (Simultaneous Multi-Threading). Hence achieving good performance scalability of programs with respect to the numbers of cores (core scalability) and SMT threads in one core (SMT scalability) is critical. To identify a way to achieve higher performance on the multi-core SMT processors, this paper compares the performance scalability with two parallelization models (using multiple processes and using multiple threads in one process) on two types of hardware parallelism (core scalability and SMT scalability). We tested standard Java benchmarks and a real-world server program written in PHP on two platforms, Sun's UltraSPARC T1 (Niagara) processor and Intel's Xeon (Nehalem) processor. We show that the multi-thread model achieves better SMT scalability compared to the multi-process model by reducing the number of cache misses and DTLB misses. However both models achieve roughly equal core scalability. We show that the multi-thread model generates up to 7.4 times more DTLB misses than the multi-process model when multiple cores are used. To take advantage of the both models, we implemented a memory allocator for a PHP runtime to reduce DTLB misses on multi-core SMT processors. The allocator is aware of the core that is running each software thread and allocates memory blocks from same memory page for each processor core. When using all of the hardware threads on a Niagara, the core-aware allocator reduces the DTLB misses by 46.7% compared to the default allocator, and it improves the performance by 3.0%.
... As the content sharing using OSNs has become extremely popular, recent years have witnessed the performance issues of server systems that host OSN services. Specifically, previous studies have examined the negative impact of OSN workloads on server performance in terms of CPU usage [2], cache miss behavior [3] , and scalability in multicore ar- chitectures [4]. Thus, there was a need for optimizing and improving existing server systems hosting the OSN services. ...
... At a much lower semantic level, there have been studies examining the (negative) impact of the workload of OSNs on server performance. Ohara et al. [4] showed that requests arising from user's contributory nature of OSNs often retrieve and update persistent data, leading to reduced performance and inhibiting us from exploiting multicore architectures. Nagpurkar et al. [3] found that stalls due to data cache misses form the dominant component of stall cycles. ...
Conference Paper
Despite the growing popularity of Online Social Networks (OSNs), the workload characteristics of OSN servers, such as those hosting blog services, are not well understood. Understanding workload characteristics is important for optimizing and improving the performance of current systems and software based on observed trends. Thus, in this paper, we characterize the system workload of the largest blog hosting servers in South Korea, Tistory. In addition to understanding the system workload of the blog hosting server, we have developed synthesized workloads and obtained the following major findings: (i) the transfer size of non-multimedia files and blog articles can be modeled by a truncated Pareto distribution and a log-normal distribution respectively, and (ii) users' accesses to blog articles do not show temporal locality, but they are strongly biased toward those posted along with images or audio.
... DAIKON derives invariants over multiple test inputs while DIDUCE does the same over multiple stages of a program's execution. These techniques attempt to learn invariants over program structures, and do not apply to Web 2.0 applications as these applications are typically data centric [27]. Hence, web applications require techniques that infer data-centric invariants. ...
Article
Full-text available
Web 2.0 applications are increasing in popularity and are being widely adopted. However, they are prone to errors due to their non-deterministic behavior and the lack of error-detection mechanisms on the client side. This paper presents DoDOM, an automated system for detecting errors in a Web~2.0 application using dynamic analysis. DoDOM repeatedly executes the application under a given sequence of user actions and observes its behavior. Based on the observations, DoDOM extracts a set of invariants on the web application's DOM structure. We show that invariants exist for real applications and can be learned within a reasonable number of executions. We further demonstrate the use of the invariants in detecting errors in web applications due to failures of events and the unavailability of domains.
Conference Paper
Community authorities in Europe are tasked to create Advanced Local Energy Plans (ALEP), which encompasses collecting local data on current energy use and generation, as well as generating future development scenarios. Both the data and the development scenarios must be publicly accessible as a basis for energy-related decisions taken by residents, local companies and other local institutions. The data must partially be collected voluntarily -at least in the part regarding residential generation and use. On the other hand - to offer value - the data should be possibly complete. Therefore the need arises to solicit residential input and use of the data. This paper presents a Web2.0 based approach to creating a social environment where residents are willing to exchange energy-related information.