[dpdk-dev] time taken for allocation of mempool.

Burakov, Anatoly anatoly.burakov at intel.com
Thu Nov 14 10:57:48 CET 2019


On 14-Nov-19 9:50 AM, Venumadhav Josyula wrote:
> Hi Anatoly,
> 
> Thanks for quick response. We want to understand, if there will be 
> performance implications because of iova-mode being va. We want to 
> understand,  specifically in terms following
> 
>   * cache misses
>   * Branch misses etc
>   * translation of va addr -> phy addr when packet is receieved 
> 

There will be no impact whatsoever. You mentioned that you were already 
using VFIO, so you were already making use of IOMMU*. Cache/branch 
misses are independent of IOVA layout, and translations are done by the 
hardware (in either IOVA as PA or IOVA as VA case - IOMMU doesn't care 
what you program it with, it still does the translation, even if it's a 
1:1 IOVA-to-PA mapping), so there is nothing that can cause degradation.

In fact, under some circumstances, using IOVA as VA mode can be used to 
get performance /gains/, because the code can take advantage of the fact 
that there are large IOVA-contiguous segments and no page-by-page 
allocations. Some drivers (IIRC octeontx mempool?) even refuse to work 
in IOVA as PA mode due to huge overheads of page-by-page buffer offset 
tracking.

TL;DR you'll be fine :)

* Using an IOMMU can /theoretically/ affect performance due to hardware 
IOVA->PA translation and IOTLB cache misses. In practice, i have never 
been able to observe /any/ effect whatsoever on performance when using 
IOMMU vs. without using IOMMU, so this appears to not be a concern /in 
practice/.

>   Thanks and regards
> Venu
> 
> On Thu, 14 Nov 2019 at 15:14, Burakov, Anatoly 
> <anatoly.burakov at intel.com <mailto:anatoly.burakov at intel.com>> wrote:
> 
>     On 13-Nov-19 9:01 PM, Venumadhav Josyula wrote:
>      > Hi Anatoly,
>      >
>      > By default w/o specifying --iova-mode option is iova-mode=pa by
>     default ?
>      >
>      > Thanks
>      > Venu
>      >
> 
>     In 18.11, there is a very specific set of circumstances that will
>     default to IOVA as VA mode. Future releases have become more
>     aggressive,
>     to the point of IOVA as VA mode being the default unless asked
>     otherwise. So yes, it is highly likely that in your case, IOVA as PA is
>     picked as the default.
> 
>     -- 
>     Thanks,
>     Anatoly
> 


-- 
Thanks,
Anatoly


More information about the dev mailing list