* [PATCH 0/2 v3] ipv4: Cache dst in tunnels
@ 2014-01-02 19:48 Tom Herbert
2014-01-02 21:51 ` Rick Jones
2014-01-04 0:42 ` David Miller
0 siblings, 2 replies; 3+ messages in thread
From: Tom Herbert @ 2014-01-02 19:48 UTC (permalink / raw)
To: davem, netdev, eric.dumazet
Version 3 of caching routes in tunnels.
Addressed some comments from Eric in this series.
There are two patches (variants) in the series:
1) One dst cached for each tunnel.
2) Percpu dst cache per tunnel to avoid false sharing
Testing with GRE tunnels on a 32 CPU host with bnx2x (RSS support
for GRE) shows a modest improvement in CPU utilization with these
patches running 200 TCP_RR netperf clients.
Without patches
71.22% CPU utilization
138/180/244 90/95/99% latencies
1.30465e+06 CPU/tps
18318 CPU/tps
With patches
69.84%
142/186/249 90/95/99% latencies
1.30827e+06
18732 CPU/tps
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 0/2 v3] ipv4: Cache dst in tunnels
2014-01-02 19:48 [PATCH 0/2 v3] ipv4: Cache dst in tunnels Tom Herbert
@ 2014-01-02 21:51 ` Rick Jones
2014-01-04 0:42 ` David Miller
1 sibling, 0 replies; 3+ messages in thread
From: Rick Jones @ 2014-01-02 21:51 UTC (permalink / raw)
To: Tom Herbert, davem, netdev, eric.dumazet
Nothing that calls for a V4, but a couple of nits and such.
On 01/02/2014 11:48 AM, Tom Herbert wrote:
> Without patches
> 71.22% CPU utilization
> 138/180/244 90/95/99% latencies
The netperf version I have, for which I think I faithfully applied the
patches from Google for the percentiles is 50, 90 and 99.
raj@tardy:~$ netperf -- -O ? | grep -i laten
RT_LATENCY
MIN_LATENCY
MAX_LATENCY
P50_LATENCY
P90_LATENCY
P99_LATENCY
MEAN_LATENCY
STDDEV_LATENCY
> 1.30465e+06 CPU/tps
That is TPS rather than CPU/TPS I am guessing.
> 18318 CPU/tps
TPS/CPU%
>
> With patches
> 69.84%
> 142/186/249 90/95/99% latencies
> 1.30827e+06
> 18732 CPU/tps
Any idea as to the source of the similarly modest increase in the latencies?
Speaking of which, given the overhead of measuring the individual
latencies, you might try a pair of runs without them being measured and
see if you show a larger delta in tps and/or CPU utilization.
raj@tardy:~/netperf2_trunk/src$ ./netperf -i 30,3 -t TCP_RR -- -o
throughput,p50_latency,p90_latency,p99_latency; ./netperf -i 30,3 -t
TCP_RR -- -o throughput
MIGRATED TCP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET
to localhost.localdomain () port 0 AF_INET : +/-2.500% @ 99% conf. :
interval : demo : first burst 0
Throughput,50th Percentile Latency Microseconds,90th Percentile Latency
Microseconds,99th Percentile Latency Microseconds
46248.37,21,22,28
MIGRATED TCP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET
to localhost.localdomain () port 0 AF_INET : +/-2.500% @ 99% conf. :
interval : demo : first burst 0
Throughput
48098.45
A nitpick from the 1/2 email:
> the tunnel is "connected" so that all the rouitng parameters are
happy benchmarking,
rick jones
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 0/2 v3] ipv4: Cache dst in tunnels
2014-01-02 19:48 [PATCH 0/2 v3] ipv4: Cache dst in tunnels Tom Herbert
2014-01-02 21:51 ` Rick Jones
@ 2014-01-04 0:42 ` David Miller
1 sibling, 0 replies; 3+ messages in thread
From: David Miller @ 2014-01-04 0:42 UTC (permalink / raw)
To: therbert; +Cc: netdev, eric.dumazet
From: Tom Herbert <therbert@google.com>
Date: Thu, 2 Jan 2014 11:48:18 -0800 (PST)
> Version 3 of caching routes in tunnels.
Applied, but I really have to wonder when I have to fix up things like
this:
net/ipv4/ip_tunnel.c: In function ‘ip_tunnel_init’:
net/ipv4/ip_tunnel.c:1062:20: warning: assignment from incompatible pointer type [enabled by default]
-->
--- a/net/ipv4/ip_tunnel.c
+++ b/net/ipv4/ip_tunnel.c
@@ -1059,7 +1059,7 @@ int ip_tunnel_init(struct net_device *dev)
u64_stats_init(&ipt_stats->syncp);
}
- tunnel->dst_cache = alloc_percpu(struct ip_tunnel_dst *);
+ tunnel->dst_cache = alloc_percpu(struct ip_tunnel_dst);
if (!tunnel->dst_cache) {
free_percpu(dev->tstats);
return -ENOMEM;
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-01-04 0:42 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-02 19:48 [PATCH 0/2 v3] ipv4: Cache dst in tunnels Tom Herbert
2014-01-02 21:51 ` Rick Jones
2014-01-04 0:42 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).