2016-02-05 15:15, Ananyev, Konstantin: > From: Pattan, Reshma > > From: Thomas Monjalon > > > _mm_prefetch is defined only in x86 compilers. > > > rte_prefetch functions are defined in EAL for each arch, and must be > > > preferred > > > over compiler intrinsics. [...] > > > - _mm_prefetch((void *)bufs[0], 0); > > > - _mm_prefetch((void *)bufs[1], 0); > > > - _mm_prefetch((void *)bufs[2], 0); > > > + rte_prefetch0((void *)bufs[0]); > > > + rte_prefetch0((void *)bufs[1]); > > > + rte_prefetch0((void *)bufs[2]); > > > > Some time back Jerin Jacob has sent patch for replacing the _mm_prefetch > > with rte_prefetch_non_temporal. This is FYI. > > Yep: > http://dpdk.org/dev/patchwork/patch/9369/ > http://dpdk.org/dev/patchwork/patch/9370/ > > And on IA _mm_prefetch(p, 0) != rte_prefetch0(p). > I think, as in Jacob implementation, it should be PREFETCHNTA.
Oh yes, you're right. Thanks patch rejected