[dpdk-dev] i40e queues per VF

Thomas Monjalon thomas.monjalon at 6wind.com
Thu Feb 16 15:55:35 CET 2017


2017-02-16 13:58, Wu, Jingjing:
> From: Thomas Monjalon
> > 
> > Hi,
> > 
> > When reading the documentation, it is not easy to understand the capability of
> > i40evf for the number of queues.
> > 
> > First, please could you explain why we need a build-time config option?
> > In the doc, there is neither justification nor tuning guidelines:
> > 
> > http://dpdk.org/doc/guides/nics/i40e.html#config-file-options
> > "
> > CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF (default 64) Number of
> > queues reserved for PF.
> > CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VF (default 4) Number of
> > queues reserved for each SR-IOV VF.
> > "
> 
> This number is used as initialization time to allocate queue number
> for PF/VF for HW's queue pool. Will add more description in i40e.rst.

The description "Number of queues reserved for each SR-IOV VF" seems
partially wrong. Please explain it is a queue pair.

> > I feel these are hard limits and should be some constants in the code, not some
> > build configuration options.
> > 
> > The other doc to look at is:
> > http://dpdk.org/doc/guides/nics/intel_vf.html#intel-fortville-10-40-gigabit-
> > ethernet-controller-vf-infrastructure
> > "
> > Each VF can have a maximum of 16 queue pairs.
> > "
> > 
> > Do we agree that a queue pair is 1 Rx queue / 1 Tx queue?
> > Note: the concept of queue pairs in Intel VF should be explained somewhere.
> > 
> Yes.
> > Below, a different limitation is given:
> > "
> > The available queue number(at most 4) per VF depends on the total number of
> > pool, which is determined by the max number of VF at PF initialization stage and
> > the number of queue specified in config "
> >
> I think there may be some inconsistent description in  doc intel_vf.rst due to
> Multiple kinds of NICs. We should correct them.
> Thanks for pointing that.
> 
> > So what is the real maximum of queue pairs? 4 or 16?
> > The datasheet talks about 16 queues. Is it 8 pairs?
> 
> That's is 16 queue pairs. 16 RX queues and 16 Tx queues.
> > 
> > Is there something to configure the number of queues when creating VF with the
> > kernel driver?
> 
> In kernel driver, it seems at most only 4 queues are supported. That's
> Why we add  build-time config option to make more queues are possible.

If we can create 16 queue pairs, why restrict the default configuration to 4?
Why is it a build-time config option?



More information about the dev mailing list