ACM Home Page
Please provide us with feedback. Feedback
Memory-manager/scheduler co-design: optimizing event-driven servers to improve cache behavior
Full text PdfPdf (227 KB)
Source International Symposium on Memory Management archive
Proceedings of the 5th international symposium on Memory management table of contents
Ottawa, Ontario, Canada
SESSION: Locality and visualisation table of contents
Pages: 104 - 114  
Year of Publication: 2006
ISBN:1-59593-221-6
Authors
Sapan Bhatia  INRIA/LaBRI
Charles Consel  INRIA/LaBRI
Julia Lawall  University of Copenhagen
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 35,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1133956.1133971
What is a DOI?

ABSTRACT

Event-driven programming has emerged as a standard to implement high-performance servers due to its flexibility and low OS overhead. Still, memory access remains a bottleneck. Generic optimization techniques yield only small improvements in the memory access behavior of event-driven servers, as such techniques do not exploit their specific structure and behavior.This paper presents an optimization framework dedicated to event-driven servers, based on a strategy to eliminate data-cache misses. We propose a novel memory manager combined with a tailored scheduling strategy to restrict the working data set of the program to a memory region mapped directly into the data cache. Our approach exploits the flexible scheduling and deterministic execution of event-driven servers.We have applied our framework to industry-standard webservers including TUX and thttpd, as well as to the Squid proxy server and the Cactus QoS framework. Testing TUX and thttpd using a standard HTTP benchmark tool shows that our optimizations applied to the TUX web server reduce L2 data cache misses under heavy load by up to 75% and increase the throughput of the server by up to 38%.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
G. Banga, P. Druschel, and J. Mogul. Better operating system features for faster network servers. In Workshop on Internet Server Performance, June 1998.
 
2
A. Begel, S. McCanne, and S. Graham. BPF+: Exploiting global
3
 
4
Jeff Bonwick. The slab allocator: An object-caching kernel memory allocator. In USENIX94, 1994.
5
6
7
 
8
D. Clark, V. Jacobson, J. Romkey, and M. Salwen. An analysis of TCP processing overhead. IEEE Communications Magazine, 27(6):23--29, June 1989.
 
9
Hewlett-Packard company Information Networks Division. Netperf: A network performance benchmark, February 1996.
 
10
Standard Performance Evaluation Corporation. The SPECWeb99 Benchmark. quarterly results. URL: http://www.spec.org/osg/web99/results/.
 
11
K. Elmeleegy, A. Chanda, A. L. Cox, and W. Zwaenepoel. Lazy asynchronous I/O for event-driven servers. In USENIX Annual Technical Conference, pages 241--254, Boston, MA, June 2004.
12
 
13
Fraunhofer Fokus. Sip express router. URL: www.iptel.org/ser.
 
14
The Apache Foundation. Apache HTTP server project. URL:http://www.apache.org.
 
15
 
16
D. Lea. A memory allocator. URL: http://g.oswego.edu/dl/html/malloc.html.
 
17
C. Lever, M. Eriksen, and S. Molloy. An analysis of the TUX web server. Technical Report 00--8, University of Michigan, November 2000.
 
18
Zeus Technology Limited. Zeus web server. URL: www.zeus.co.uk.
 
19
S. McCanne and V. Jacobson. The BSD packet filter: A new architecture for user-level packet capture. In Proceedings of the Winter 1993 USENIX Conference, pages 259--269, San Diego, CA, USA, January 1993. USENIX.
 
20
V. S. Pai, P. Druschel, and W. Zwaenepoel. Flash: An efficient and portable web server. In USENIX Annual Technical Conference, pages 199--212, Monterey, CA, June 1999.
21
 
22
SIGCOMM Symposium on Communications Architectures and Protocols, Stanford University, CA, August 1996. ACM Press.
 
23
R. Tarjan. Depth-first search and linear graph algorithms. SIAM Journal of Computing, 1(2):146--160, 1972.
24
25
26
 
27
N. Zeldovich, A. Yip, F. Dabek, R. T. Morris, D. Mazieres, and M-. F. Kaashoek. Multiprocessor support for event-driven programs. In USENIX Annual Technical Conference, pages 239--252, San Antonio, TX, June 2003.


Collaborative Colleagues:
Sapan Bhatia: colleagues
Charles Consel: colleagues
Julia Lawall: colleagues