From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 87C96A00BE; Tue, 28 Apr 2020 15:46:30 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 1047F1D5B4; Tue, 28 Apr 2020 15:46:29 +0200 (CEST) Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by dpdk.org (Postfix) with ESMTP id 9A98A1D562 for ; Tue, 28 Apr 2020 15:46:27 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1588081586; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=TK1p1AAkeH3jGVYsWA7LFSUSX6qJhth51FQ+qa4BzJQ=; b=ZXcaLSDHSafm5ZQIMV8xYcic0txPgnx08Urvho+GwHq2xaH9yYP2Pmpx/kBv9iY/JnqzmF F6nO1BcAEQ5ugCZVnAfvk7EU+LWerc7TCuT56kuMBTB7udWTUsgV3jK7Ncy855TsgqbcG4 JR8J4p5MoecYD5ladV2cX+90cXyuyNU= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-203-KM4V7RJ4M4KXi6zgvfzuTw-1; Tue, 28 Apr 2020 09:46:24 -0400 X-MC-Unique: KM4V7RJ4M4KXi6zgvfzuTw-1 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id ED4171005510; Tue, 28 Apr 2020 13:46:22 +0000 (UTC) Received: from [10.36.110.26] (unknown [10.36.110.26]) by smtp.corp.redhat.com (Postfix) with ESMTPS id B369C282C7; Tue, 28 Apr 2020 13:46:20 +0000 (UTC) To: "Liu, Yong" , "Ye, Xiaolong" , "Wang, Zhihong" Cc: "dev@dpdk.org" , Honnappa Nagarahalli , "jerinj@marvell.com" References: <20200313174230.74661-1-yong.liu@intel.com> <20200426021943.43158-1-yong.liu@intel.com> <20200426021943.43158-7-yong.liu@intel.com> <672a584a-46d1-c78b-7b21-9ed7bc060814@redhat.com> <86228AFD5BCD8E4EBFD2B90117B5E81E63546D0C@SHSMSX103.ccr.corp.intel.com> <86228AFD5BCD8E4EBFD2B90117B5E81E6354755C@SHSMSX103.ccr.corp.intel.com> From: Maxime Coquelin Autocrypt: addr=maxime.coquelin@redhat.com; keydata= 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 Mwqu3GQ= Message-ID: <679f4dc1-a4ac-ab1b-a7b1-297d66158820@redhat.com> Date: Tue, 28 Apr 2020 15:46:18 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 MIME-Version: 1.0 In-Reply-To: <86228AFD5BCD8E4EBFD2B90117B5E81E6354755C@SHSMSX103.ccr.corp.intel.com> Content-Language: en-US X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Subject: Re: [dpdk-dev] [PATCH v10 6/9] net/virtio: add vectorized packed ring Rx path X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 4/28/20 3:01 PM, Liu, Yong wrote: >>> Maxime, >>> Thanks for point it out, it will add extra cache miss in datapath. >>> And its impact on performance is around 1% in loopback case. >> Ok, thanks for doing the test. I'll try to run some PVP benchmarks >> on my side because when doing IO loopback, the cache pressure is >> much less important. >> >>> While benefit of vectorized path will be more than that number. >> Ok, but I disagree for two reasons: >> 1. You have to keep in mind than non-vectorized is the default and >> encouraged mode to use. Indeed, it takes a lot of shortcuts like not >> checking header length (so no error stats), etc... >> > Ok, I will keep non-vectorized same as before. >=20 >> 2. It's like saying it's OK it degrades by 5% on $CPU_VENDOR_A because >> the gain is 20% on $CPU_VENDOR_B. >> >> In the case we see more degradation in real-world scenario, you might >> want to consider using ifdefs to avoid adding padding in the non- >> vectorized case, like you did to differentiate Virtio PMD to Virtio-user >> PMD in patch 7. >> > Maxime, > The performance difference is so slight, so I ignored for it look like a = sampling error.=20 Agree for IO loopback, but it adds one more cache line access per burst, which might be see in some real-life use cases. > It maybe not suitable to add new configuration for such setting which onl= y used inside driver. Wait, the Virtio-user #ifdef is based on the defconfig options? How can it work since both Virtio PMD and Virtio-user PMD can be selected at the same time? I thought it was a define set before the headers inclusion and unset afterwards, but I didn't checked carefully. > Virtio driver can check whether virtqueue is using vectorized path when i= nitialization, will use padded structure if it is. > I have added some tested code and now performance came back. Since code = has changed in initialization process, it need some time for regression ch= eck. Ok, works for me. I am investigating a linkage issue with your series, which does not happen systematically (see below, it happens also with clang). David pointed me to some Intel patches removing the usage if __rte_weak, could it be related? gcc -o app/test/dpdk-test 'app/test/3062f5d@@dpdk-test@exe/commands.c.o' 'app/test/3062f5d@@dpdk-test@exe/packet_burst_generator.c.o' 'app/test/3062f5d@@dpdk-test@exe/test.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_acl.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_alarm.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_atomic.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_barrier.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_bpf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_byteorder.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cmdline.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cmdline_cirbuf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cmdline_etheraddr.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cmdline_ipaddr.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cmdline_lib.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cmdline_num.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cmdline_portlist.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cmdline_string.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_common.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cpuflags.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_crc.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cryptodev.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cryptodev_asym.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cryptodev_blockcipher.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cryptodev_security_pdcp.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_cycles.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_debug.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_distributor.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_distributor_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_eal_flags.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_eal_fs.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_efd.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_efd_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_errno.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_event_crypto_adapter.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_event_eth_rx_adapter.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_event_ring.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_event_timer_adapter.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_eventdev.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_external_mem.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_fbarray.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_fib.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_fib_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_fib6.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_fib6_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_func_reentrancy.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_flow_classify.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_hash.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_hash_functions.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_hash_multiwriter.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_hash_readwrite.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_hash_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_hash_readwrite_lf_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_interrupts.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ipfrag.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ipsec.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ipsec_sad.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_kni.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_kvargs.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_link_bonding.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_link_bonding_rssconf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_logs.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_lpm.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_lpm6.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_lpm6_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_lpm_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_malloc.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_mbuf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_member.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_member_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_memcpy.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_memcpy_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_memory.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_mempool.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_mempool_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_memzone.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_meter.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_metrics.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_mcslock.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_mp_secondary.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_per_lcore.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_pmd_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_power.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_power_cpufreq.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_power_kvm_vm.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_prefetch.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_rand_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_rawdev.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_rcu_qsbr.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_rcu_qsbr_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_reciprocal_division.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_reciprocal_division_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_red.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_reorder.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_rib.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_rib6.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ring.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ring_mpmc_stress.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ring_hts_stress.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ring_peek_stress.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ring_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ring_rts_stress.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ring_stress.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_rwlock.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_sched.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_security.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_service_cores.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_spinlock.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_stack.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_stack_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_string_fns.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_table.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_table_acl.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_table_combined.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_table_pipeline.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_table_ports.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_table_tables.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_tailq.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_thash.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_timer.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_timer_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_timer_racecond.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_timer_secondary.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_ticketlock.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_trace.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_trace_register.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_trace_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_version.c.o' 'app/test/3062f5d@@dpdk-test@exe/virtual_pmd.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_pmd_ring_perf.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_pmd_ring.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_event_eth_tx_adapter.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_bitratestats.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_latencystats.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_link_bonding_mode4.c.o' 'app/test/3062f5d@@dpdk-test@exe/sample_packet_forward.c.o' 'app/test/3062f5d@@dpdk-test@exe/test_pdump.c.o' -Wl,--no-undefined -Wl,--as-needed -Wl,-O1 -Wl,--whole-archive -Wl,--start-group drivers/librte_common_cpt.a drivers/librte_common_dpaax.a drivers/librte_common_iavf.a drivers/librte_common_octeontx.a drivers/librte_common_octeontx2.a drivers/librte_bus_dpaa.a drivers/librte_bus_fslmc.a drivers/librte_bus_ifpga.a drivers/librte_bus_pci.a drivers/librte_bus_vdev.a drivers/librte_bus_vmbus.a drivers/librte_mempool_bucket.a drivers/librte_mempool_dpaa.a drivers/librte_mempool_dpaa2.a drivers/librte_mempool_octeontx.a drivers/librte_mempool_octeontx2.a drivers/librte_mempool_ring.a drivers/librte_mempool_stack.a drivers/librte_pmd_af_packet.a drivers/librte_pmd_ark.a drivers/librte_pmd_atlantic.a drivers/librte_pmd_avp.a drivers/librte_pmd_axgbe.a drivers/librte_pmd_bond.a drivers/librte_pmd_bnxt.a drivers/librte_pmd_cxgbe.a drivers/librte_pmd_dpaa.a drivers/librte_pmd_dpaa2.a drivers/librte_pmd_e1000.a drivers/librte_pmd_ena.a drivers/librte_pmd_enetc.a drivers/librte_pmd_enic.a drivers/librte_pmd_failsafe.a drivers/librte_pmd_fm10k.a drivers/librte_pmd_i40e.a drivers/librte_pmd_hinic.a drivers/librte_pmd_hns3.a drivers/librte_pmd_iavf.a drivers/librte_pmd_ice.a drivers/librte_pmd_igc.a drivers/librte_pmd_ixgbe.a drivers/librte_pmd_kni.a drivers/librte_pmd_liquidio.a drivers/librte_pmd_memif.a drivers/librte_pmd_netvsc.a drivers/librte_pmd_nfp.a drivers/librte_pmd_null.a drivers/librte_pmd_octeontx.a drivers/librte_pmd_octeontx2.a drivers/librte_pmd_pfe.a drivers/librte_pmd_qede.a drivers/librte_pmd_ring.a drivers/librte_pmd_sfc.a drivers/librte_pmd_softnic.a drivers/librte_pmd_tap.a drivers/librte_pmd_thunderx.a drivers/librte_pmd_vdev_netvsc.a drivers/librte_pmd_vhost.a drivers/librte_pmd_virtio.a drivers/librte_pmd_vmxnet3.a drivers/librte_rawdev_dpaa2_cmdif.a drivers/librte_rawdev_dpaa2_qdma.a drivers/librte_rawdev_ioat.a drivers/librte_rawdev_ntb.a drivers/librte_rawdev_octeontx2_dma.a drivers/librte_rawdev_octeontx2_ep.a drivers/librte_rawdev_skeleton.a drivers/librte_pmd_caam_jr.a drivers/librte_pmd_dpaa_sec.a drivers/librte_pmd_dpaa2_sec.a drivers/librte_pmd_nitrox.a drivers/librte_pmd_null_crypto.a drivers/librte_pmd_octeontx_crypto.a drivers/librte_pmd_octeontx2_crypto.a drivers/librte_pmd_crypto_scheduler.a drivers/librte_pmd_virtio_crypto.a drivers/librte_pmd_octeontx_compress.a drivers/librte_pmd_qat.a drivers/librte_pmd_ifc.a drivers/librte_pmd_dpaa_event.a drivers/librte_pmd_dpaa2_event.a drivers/librte_pmd_octeontx2_event.a drivers/librte_pmd_opdl_event.a drivers/librte_pmd_skeleton_event.a drivers/librte_pmd_sw_event.a drivers/librte_pmd_dsw_event.a drivers/librte_pmd_octeontx_event.a drivers/librte_pmd_bbdev_null.a drivers/librte_pmd_bbdev_turbo_sw.a drivers/librte_pmd_bbdev_fpga_lte_fec.a drivers/librte_pmd_bbdev_fpga_5gnr_fec.a -Wl,--no-whole-archive -Wl,--no-as-needed -pthread -lm -ldl -lnuma lib/librte_acl.a lib/librte_eal.a lib/librte_kvargs.a lib/librte_bitratestats.a lib/librte_ethdev.a lib/librte_net.a lib/librte_mbuf.a lib/librte_mempool.a lib/librte_ring.a lib/librte_meter.a lib/librte_metrics.a lib/librte_bpf.a lib/librte_cfgfile.a lib/librte_cmdline.a lib/librte_cryptodev.a lib/librte_distributor.a lib/librte_efd.a lib/librte_hash.a lib/librte_eventdev.a lib/librte_timer.a lib/librte_fib.a lib/librte_rib.a lib/librte_flow_classify.a lib/librte_table.a lib/librte_port.a lib/librte_sched.a lib/librte_ip_frag.a lib/librte_kni.a lib/librte_pci.a lib/librte_lpm.a lib/librte_ipsec.a lib/librte_security.a lib/librte_latencystats.a lib/librte_member.a lib/librte_pipeline.a lib/librte_rawdev.a lib/librte_rcu.a lib/librte_reorder.a lib/librte_stack.a lib/librte_power.a lib/librte_pdump.a lib/librte_gso.a lib/librte_vhost.a lib/librte_compressdev.a lib/librte_bbdev.a -Wl,--end-group '-Wl,-rpath,$ORIGIN/../../lib:$ORIGIN/../../drivers' -Wl,-rpath-link,/tmp/dpdk_build/meson_buildir_gcc/lib:/tmp/dpdk_build/meson= _buildir_gcc/drivers drivers/librte_pmd_virtio.a(net_virtio_virtio_ethdev.c.o): In function `set_rxtx_funcs': virtio_ethdev.c:(.text.unlikely+0x6f): undefined reference to `virtio_xmit_pkts_packed_vec' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. > Regards, > Marvin >=20