Browsing by Author "Rajamani, Karthick"
Now showing 1 - 4 of 4
Results Per Page
Sort Options
Item A Simple and Effective Caching Scheme for Dynamic Content(2000-11-28) Cox, Alan; Rajamani, KarthickAs web sites increasingly deliver dynamic content, the process of content generation at request time is becoming a severe limitation to web site throughput. Recent studies have shown that much of the dynamic content is, however, better characterized as pseudo-dynamic, i.e., a dynamic composition of stored or static data. Consequently, caching the generated web pages may increase the web server's throughput if there is some temporal locality in the request stream. In this paper, we perform a quantitative analysis of the benefits of caching for dynamic content using the e-commerce benchmark, TPC-W,as the workload. We implement caching through a simple and efficient Apache extension module, DCache, that can be easily incorporated into the current infrastructure for dynamic content delivery. Our DCache module uses conventional expiration times and our own request-initiated invalidation scheme as the methods for keeping the cache consistent. It also supports site-specific optimization by providing a mechanism to incorporate the priorities of specific web pages into the caching scheme. Our experiments show that we can obtain over 3 times the non-caching throughput with our caching approach.Item Automatic data aggregation for software distributed shared memory systems(1997) Rajamani, Karthick; Zwaenepoel, WillySoftware Distributed Shared Memory (DSM) provides a shared-memory abstraction on distributed memory hardware, making a parallel programmer's task easier. Unfortunately, software DSM is less efficient than the direct use of the underlying message-passing hardware. The chief reason for this is that hand-coded and compiler-generated message-passing programs typically achieve better data aggregation in their messages than programs using software DSM. Software DSM has poorer data aggregation because the system lacks the knowledge of the application's behavior that a programmer or compiler analysis can provide. We propose four new techniques to perform automatic data aggregation in software DSM. Our techniques use run-time analysis of past data-fetch accesses made by a processor, to aggregate data movement for future accesses. They do not need any additional compiler support. We implemented our techniques in the TreadMarks software DSM system. We used a test suite of four applications--3D-FFT, Barnes-Hut, Ilink and Shallow. For these applications we obtained 40% to 66% reduction in message counts which resulted in 6% to 19% improvement in execution times.Item Bottleneck Characterization of Dynamic Web Site Benchmarks(2002-02) Amza, Cristiana; Cecchet, Emmanuel; Chanda, Anupam; Cox, Alan; Elnikety, Sameh; Gil, Romer; Marguerite, Julie; Rajamani, Karthick; Zwaenepoel, WillyThe absence of benchmarks for Web sites with dynamic content hasbeen a major impediment to research in this area. We describe three benchmarks for evaluating the performance of Web sites with dynamic content. The benchmarks model three common types of dynamic-content Web sites with widely varying application characteristics: an online bookstore, an auction site, and a bulletin board. For each benchmark we describe the design of the database, the interactions provided by the Web server, and the workloads used in analyzing the performance of the system. We have implemented these three benchmarks with commonly used open-source software. In particular, we used the Apache Web server, the PHP scripting language, and the MySQL relational database. Our implementation is therefore representative of the many dynamic content Web sites built using these tools. Our implementations are available freely from our Web site for other researchers to use. We present a performance evaluation of our implementations of these three benchmarks on contemporary commodity hardware. Our performance evaluation focused on finding andex plaining the bottleneck resources in each benchmark. For the online bookstore, the CPU on the database was the bottleneck, while for the auction site and the bulletin board the CPU on the front-end Web server was the bottleneck. In none of the benchmarks was the network between the front-end and the back-end a bottleneck. With amounts of memory common by today's standards, neither the main memory nor the disk proved to be a limiting factor in terms of performance for any of the benchmarks.Item Multi-tier caching of dynamic content for database-driven Web sites(2002) Rajamani, Karthick; Cox, Alan L.Web sites have gradually shifted from delivering just static html pages and images to customized, user-specific content and plethora of online services. The new features and facilities are made possible by dynamic content which is produced at request time. Multi-tiered database-driven web sites form the predominant infrastructure for most structured and scalable approaches to dynamic content delivery. However, even with these scalable approaches, the request-time computation and high resource demands for dynamic content generation result in significantly higher latencies and lower throughputs than for sites with just static content. This thesis proposes the caching of dynamic content as the solution for improving the performance of web sites with significant amount of dynamic content. This work shows that there is significant locality in the data accesses and computations for content generation which can be exploited by caching to improve performance. This work introduces a novel multi-tier caching architecture that incorporates multiple, independent caching components to enable easy deployment and effective performance over the prevalent multi-tiered database-driven architecture for dynamic content delivery. The dynamic content infrastructure and the proposed caching strategy is evaluated with e-commerce workloads from the TPC-W benchmark. The evaluation of the system without caching shows that content generation overheads are dominated by the database component for e-commerce workloads. With multi-tier caching, each caching component overcomes specific overheads during content generation while the combination provides overall improvements in performance significantly greater than the individual contributions. The increased peak throughputs with caching range from 1.58 to 8.72 times the peak throughputs without caching at similar or significantly reduced average response times. At the same load as for the peak throughputs without caching, the response times were reduced by 90% to 97% with caching. The evaluations also establish the effectiveness of the strategy in relation to variation in platform and site configurations. Overall, the proposed multi-tier caching strategy brings about dramatic improvements in performance for dynamic content delivery.