[ovs-discuss] OVS 2.7.0 + DPDK 17.02 + multicore

Levente Csikor csikor at tmit.bme.hu
Sun May 7 13:31:38 UTC 2017


Thanks, it's working now! The 'interface' was the keywordindeed!
 
Do I need to do the affinity ``trick''as well?
I mean the part similarto after '\'in the following:

ovs-vsctl set interface dpdk-p0 options:n_rxq=4 \
    *other_config:pmd-rxq-affinity="0:3,1:7,3:8"*

I realized that without this OVS automatically assigns cores/threads to
the queues, however when I explicitly set it (like above), the output of
'ovs-appctl dpif-netdev/pmd-rxq-show' says for those threads that they
are isolated (isolated: true).
Otherwise, the value of isolated is false.
Does it have any (significant) impact on the performance or on anything
else?

Cheers



On 05/07/2017 01:12 AM, Darrell Ball wrote:
>
>  
>
>  
>
> *From: *<ovs-discuss-bounces at openvswitch.org> on behalf of Levente
> Csikor <csikor at tmit.bme.hu>
> *Date: *Saturday, May 6, 2017 at 3:36 AM
> *To: *"discuss at openvswitch.org" <discuss at openvswitch.org>
> *Subject: *[ovs-discuss] OVS 2.7.0 + DPDK 17.02 + multicore
>
>  
>
> Dear All,
>
> I would like to run OVS with DPDK using multiple cores by multiple
> poll-mode driver threads to fine tune the performance and achieve
> higher packet rate.
> I realized that since version 2.5.0 the multiple core assignment
> changed a bit, and I followed the instructions at
> http://docs.openvswitch.org/en/latest/intro/install/dpdk/
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__docs.openvswitch.org_en_latest_intro_install_dpdk_&d=DwMDaQ&c=uilaK90D4TOVoH58JNXRgQ&r=BVhFA09CGX7JQ5Ih-uZnsw&m=L_sO_555UZCkLTLLfgsvpixjfPj6uRLy9AJhNbSppMA&s=5qBNp8XzYYYmUz6gGXR0eYxcQ3QIjEF3jU526iCJe00&e=>
>
> Everything is properly installed and set with respect to hugepages,
> dpdk drivers, etc.
>
> Here is the relevant part of my init-script, for instance, in case of
> 3 cores:
> sudo $OVS_PATH/utilities/ovs-vsctl --no-wait set Open_vSwitch .
> other_config:dpdk-init=true
> sudo $OVS_PATH/utilities/ovs-vsctl --no-wait set Open_vSwitch .
> other_config:dpdk-lcore-mask=e
> sudo $OVS_PATH/utilities/ovs-vsctl --no-wait set Open_vSwitch .
> other_config:dpdk-socket-mem="4096,0"
> sudo $OVS_PATH/utilities/ovs-vsctl --no-wait set Open_vSwitch .
> other_config:dpdk-hugepage-dir="/mnt/huge"
>
> sudo $OVS_PATH/utilities/ovs-vsctl --no-wait set Open_vSwitch .
> other_config:pmd-cpu-mask=e
> sudo $OVS_PATH/utilities/ovs-vsctl --no-wait set Open_vSwitch .
> other_config:n-rxq=3
>
>  
>
>  
>
>  
>
> *************
>
>  
>
> I guess you want “options : n_rxq” in Interface table
>
>  
>
> see
>
> http://openvswitch.org/support/dist-docs/ovs-vswitchd.conf.db.5.pdf
>
>  
>
> also, you should read
>
>  
>
> http://docs.openvswitch.org/en/latest/howto/dpdk/
>
> * *
>
>  
>
> *************
>
>  
>
>
>
> sudo $OVS_PATH/vswitchd/ovs-vswitchd   unix:$DB_SOCK --pidfile --detach
>
> I also tried the older version of rx_queue setup that worked for
> version 2.5.0:
> sudo $OVS_PATH/utilities/ovs-vsctl set Open_vSwitch .
> other_config:*n-dpdk-rxqs=3**
>
> *Open vSwitch starts, but after installing numerous flow rules,
> sending different packets with different L2/L3/L4 headers (to foster
> RSS), it did not scale up. It still used only 1 core.
> Linux command /top/ showed only 100% CPU load instead of 300%, or even
> when I checked //proc/cpuinfo/ it also showed that only 1 core is
> scaled up to the maximum CPU frequency.
> (Furthermore, if the outputs of these programs were wrong after all, I
> check the packet rate as well, but it did not change unfortunately)
>
>
> Would anyone be so kind as to further assist me towards using multiple
> cores?
> What did I miss/do wrong?
>
> Thank you in advance,
> Levi
>
>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20170507/41988c8b/attachment.html>


More information about the discuss mailing list