[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20101203101450.GA9573@Desktop-Junchang>
Date: Fri, 3 Dec 2010 18:14:52 +0800
From: Junchang Wang <junchangwang@...il.com>
To: eric.dumazet@...il.com
Cc: netdev@...r.kernel.org
Subject: Question about __alloc_skb() speedup
Hi Eric,
I'm reading your patch (ec7d2f2cf3a1 __alloc_skb() speedup),
in which you prefetch skb and the shinfo part. I'm very
curious why we don't prefetch skb->data. It seems that will
help tx path a lot.
I added the following code
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 104f844..c60a808 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -222,6 +222,8 @@ struct sk_buff *__alloc_skb(unsigned int size, gfp_t gfp_mask,
child->fclone = SKB_FCLONE_UNAVAILABLE;
}
+ prefetchw(data);
+
out:
return skb;
nodata:
and the pktgen in my server (A Intel SR1625 server with two E5530
4-core processors and a single ixgbe-based NIC) goes from 7.6Mpps to
8.4Mpps (64 byte), with 10% performance gain.
For rx path, I did experiments on both ixgbe and igb with pktgen+kute,
and there is no change in system performance.
welcome any suggestions and corrections.
Thanks.
--Junchang
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists