>>>>> Andi Kleen <ak@suse.de> writes: > It probably would not make much difference to turn them on -- 2.4 > should do all udp csum computation in parallel to copies and during > that they're mostly free. It makes a small difference, maybe 1 or 2%. >> 6.15% udp_recvmsg # !? > This one is really a mystery. Could you set the profile table shift > to 1 and try to narrow it to some instruction or run it under oprofile > and check for cache misses etc.? With shift 1 I get the pretty similar profile below. I'm playing with oprofile now. >> 4.45% udp_rcv # no "most recent socket" cache > It used to have one, but it was removed for some reason I cannot remember. I think my application would probably hit it around 1/3 the time (I'll have just a few sockets per host, and frequently one will be "dominant", trafficwise). Whether or not it's useful in the general case, I dunno. The paper "A Faster UDP" suggests that it is, but how the general case of a random academic Sun in 1993 compares to today's Linux boxen is unclear. >> 3.97% ip_route_output_key # could cache route for unconnected sockets > It is probably more cache line bouncing, where the cache wouldn't help. In my case almost everything is to the local ethernet. So hanging onto the route should be good, since it'll usually apply to the next packet out that socket. Maybe I'll play with it someday. With shift 1: 6.41% udp_recvmsg 5.78% ip_build_xmit 4.82% udp_rcv 4.72% __generic_copy_to_user 4.23% udp_queue_rcv_skb 4.20% ip_route_output_key 4.13% ip_rcv 3.80% udp_sendmsg 3.47% sock_alloc_send_skb 3.28% dev_queue_xmit 3.10% __generic_copy_from_user 2.94% net_rx_action 2.87% skb_release_data 2.49% ip_output 2.48% __kfree_skb 2.25% sock_def_write_space 2.21% do_gettimeofday 2.12% system_call 2.06% sock_def_readable 1.80% skb_copy_datagram_iovec 1.69% kmalloc 1.62% skb_recv_datagram 1.49% fget 1.39% loopback_xmit 1.25% netif_rx 1.25% kfree 1.24% sys_recvmsg 1.21% udp_v4_lookup_longway 1.11% verify_iovec 1.00% rmqueue 0.96% sys_sendmsg -- Grant Taylor - x285 - http://pasta/~gtaylor/ Starent Networks - +1.978.851.1185 - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html