[dpdk-dev] [PATCH] prefetch second cacheline of mbufs on alloc
Paul Emmerich
emmericp at net.in.tum.de
Tue May 12 01:15:18 CEST 2015
this improves the throughput of a simple tx-only application by 11% in
the full-featured ixgbe tx path and by 14% in the simple tx path.
---
lib/librte_mbuf/rte_mbuf.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h
index ab6de67..f6895b4 100644
--- a/lib/librte_mbuf/rte_mbuf.h
+++ b/lib/librte_mbuf/rte_mbuf.h
@@ -538,6 +538,7 @@ static inline struct rte_mbuf *__rte_mbuf_raw_alloc(struct rte_mempool *mp)
if (rte_mempool_get(mp, &mb) < 0)
return NULL;
m = (struct rte_mbuf *)mb;
+ rte_prefetch0(&m->cacheline1);
RTE_MBUF_ASSERT(rte_mbuf_refcnt_read(m) == 0);
rte_mbuf_refcnt_set(m, 1);
return (m);
--
1.9.1
More information about the dev
mailing list