
%     Registration    Networking Driver Performance and Measurement - e1000 A 
%                                           Case Study                        
%  Proposal           John A Ronciak (john.ronciak@intel.com)                 

Networking performance is a popular topic in Linux and  
is becoming more critical for achieving good overall    
system performance. This paper takes a look at what was 
done in the e1000 driver to improve performance by (a)  
increasing throughput and (b) reducing of CPU           
utilization. A lot of work has gone into the e1000      
Ethernet driver as well into the PRO/1000 Gigabit       
Ethernet hardware in regard to both of these            
performance attributes This paper covers the major      
things that were done to both the driver and to the     
hardware to improve many of the aspects of Ethernet     
network performance. The paper covers performance       
improvements due to the contribution from the Linux     
community and from the Intel group responsible for both 
the driver and hardware. The paper describes            
optimizations to improve small packet performance for   
applications like packet routers, VoIP, etc. and those  
for standard and jumbo packets and how those            
modifications differs from the small packet             
optimizations. A discussion on the tools and utilities  
used to measure performance and ideas for other tools   
that could help to measure performance are presented.   
Some of the ideas may require help from the community   
for refinement and implementation.                      


