Prefetch ethernet addresses. This is a no-op on odp-linux but improves performance significantly on odp-dpdk implementation.
Signed-off-by: Matias Elo <[email protected]> --- V2: - Use ODPH_ETHHDR_LEN define (Maxim) test/performance/odp_l2fwd.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/performance/odp_l2fwd.c b/test/performance/odp_l2fwd.c index 164f7f5..e296b94 100644 --- a/test/performance/odp_l2fwd.c +++ b/test/performance/odp_l2fwd.c @@ -255,6 +255,9 @@ static inline void fill_eth_addrs(odp_packet_t pkt_tbl[], for (i = 0; i < num; ++i) { pkt = pkt_tbl[i]; + + odp_packet_prefetch(pkt, 0, ODPH_ETHHDR_LEN); + if (odp_packet_has_eth(pkt)) { eth = (odph_ethhdr_t *)odp_packet_l2_ptr(pkt, NULL); -- 1.9.1
