On 11/08/17 19:32, gyanesh patra wrote:
> I am not sure what you mean. Can you please elaborate?
> 
> As i mentioned before I am able to run dpdk examples. Hence the drivers
> are available and working fine.
> I configured ODP & ODP-DPDK with "LDFLAGS=-libverbs" and compiled to
> work with mellanox. I followed the same while compiling dpdk too.
> 
> Is there anything i am missing?
> 
> P Gyanesh Kumar Patra


in general if CONFIG_RTE_LIBRTE_MLX5_PMD=y was specified then it has to
work. I think we did test only with ixgbe. But in general it's common code.

"Unable to init any I/O type." means it it called all open for all pktio
in list here:
./platform/linux-generic/pktio/io_ops.c

and setup_pkt_dpdk() failed for some reason.

I do not like allocations errors in your log.

Try to compile ODP with --enable-debug-print --enable-debug it will make
ODP_DBG() macro work and it will be visible why it does not opens pktio.

Maxim


> 
> On Wed, Nov 8, 2017 at 5:22 PM, Maxim Uvarov <maxim.uva...@linaro.org
> <mailto:maxim.uva...@linaro.org>> wrote:
> 
>     is Mellanox pmd compiled in?
> 
>     Maxim.
> 
>     On 11/08/17 17:58, gyanesh patra wrote:
>     > Hi,
>     > I am trying to run ODP & ODP-DPDK examples on our server with
>     mellanox 100G
>     > NICs. I am using the odp_l2fwd example. While running the example,
>     I am
>     > facing some issues.
>     > -> When I run "ODP" example using the if names given by kernel as
>     > arguments, I am not getting enough throughput.(the value is very low)
>     > -> And when I try "ODP-DPDK" example using port ID as "0,1", it can't
>     > create pktio. Whereas I am able to run the examples from "DPDK"
>     > repo with portID "0,1" for the same mellanox NICs. I tried running
>     with
>     > "81:00.0,81:00.1" and also with if-names too without any success.
>     Adding
>     > the whitelist using ODP_PLATFORM_PARAMS doesn't help either.
>     >
>     > Am I missing any steps to use mellanox NICs? OR is there a
>     different method
>     > to specify the device details to create pktio?
>     > I am providing the output of "odp_l2fwd" examples for ODP and ODP-DPDK
>     > repository here.
>     >
>     > The NICs being used:
>     >
>     > 0000:81:00.0 'MT27700 Family [ConnectX-4]' if=enp129s0f0 drv=mlx5_core
>     > unused=
>     > 0000:81:00.1 'MT27700 Family [ConnectX-4]' if=enp129s0f1 drv=mlx5_core
>     > unused=
>     >
>     > ODP l2fwd example run details:
>     > ------------------------------
>     > root@ubuntu:/home/ubuntu/odp/test/performance# ./odp_l2fwd -i
>     > enp129s0f0,enp129s0f1
>     > HW time counter freq: 2399999886 <tel:2399999886>
>     <(239)%20999-9886> hz
>     >
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     > _ishm.c:880:_odp_ishm_reserve():No huge pages, fall back to normal
>     pages.
>     > check: /proc/sys/vm/nr_hugepages.
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     >  PKTIO: initialized loop interface.
>     >  PKTIO: initialized pcap interface.
>     >  PKTIO: initialized ipc interface.
>     >  PKTIO: initialized socket mmap, use export
>     ODP_PKTIO_DISABLE_SOCKET_MMAP=1
>     > to disable.
>     >  PKTIO: initialized socket mmsg,use export
>     ODP_PKTIO_DISABLE_SOCKET_MMSG=1
>     > to disable.
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     >
>     > ODP system info
>     > ---------------
>     > ODP API version: 1.15.0
>     > ODP impl name:   "odp-linux"
>     > CPU model:       Intel(R) Xeon(R) CPU E5-2680 v4
>     > CPU freq (hz):   3300000000
>     > Cache line size: 64
>     > CPU count:       56
>     >
>     >
>     > CPU features supported:
>     > SSE3 PCLMULQDQ DTES64 MONITOR DS_CPL VMX SMX EIST TM2 SSSE3 FMA
>     CMPXCHG16B
>     > XTPR PDCM PCID DCA SSE4_1 SSE4_2 X2APIC MOVBE POPCNT TSC_DEADLINE
>     AES XSAVE
>     > OSXSAVE AVX F16C RDRAND FPU VME DE PSE TSC MSR PAE MCE CX8 APIC
>     SEP MTRR
>     > PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM PBE
>     > DIGTEMP TRBOBST ARAT PLN ECMD PTM MPERF_APERF_MSR ENERGY_EFF
>     FSGSBASE HLE
>     > AVX2 BMI2 ERMS INVPCID RTM LAHF_SAHF SYSCALL XD 1GB_PG RDTSCP
>     EM64T INVTSC
>     >
>     > CPU features NOT supported:
>     > CNXT_ID PSN ACNT2 BMI1 SMEP AVX512F LZCNT
>     >
>     > Running ODP appl: "odp_l2fwd"
>     > -----------------
>     > IF-count:        2
>     > Using IFs:       enp129s0f0 enp129s0f1
>     > Mode:            PKTIN_DIRECT, PKTOUT_DIRECT
>     >
>     > num worker threads: 32
>     > first CPU:          24
>     > cpu mask:           0xFFFFFFFF000000
>     >
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     > _ishmphy.c:152:_odp_ishmphy_map():mmap failed:Cannot allocate memory
>     >
>     > Pool info
>     > ---------
>     >   pool            0
>     >   name            packet pool
>     >   pool type       packet
>     >   pool shm        11
>     >   user area shm   0
>     >   num             8192
>     >   align           64
>     >   headroom        128
>     >   seg len         8064
>     >   max data len    65536
>     >   tailroom        0
>     >   block size      8768
>     >   uarea size      0
>     >   shm size        72143104
>     >   base addr       0x7f5fc1234000
>     >   uarea shm size  0
>     >   uarea base addr (nil)
>     >
>     > pktio/socket_mmap.c:401:mmap_setup_ring():setsockopt(pkt mmap):
>     Invalid
>     > argument
>     > pktio/socket_mmap.c:496:sock_mmap_close():mmap_unmap_sock()
>     Invalid argument
>     > created pktio 1, dev: enp129s0f0, drv: socket
>     > Sharing 1 input queues between 16 workers
>     > Sharing 1 output queues between 16 workers
>     > created 1 input and 1 output queues on (enp129s0f0)
>     > pktio/socket_mmap.c:401:mmap_setup_ring():setsockopt(pkt mmap):
>     Invalid
>     > argument
>     > pktio/socket_mmap.c:496:sock_mmap_close():mmap_unmap_sock()
>     Invalid argument
>     > created pktio 2, dev: enp129s0f1, drv: socket
>     > Sharing 1 input queues between 16 workers
>     > Sharing 1 output queues between 16 workers
>     > created 1 input and 1 output queues on (enp129s0f1)
>     >
>     > Queue binding (indexes)
>     > -----------------------
>     > worker 0
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 1
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 2
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 3
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 4
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 5
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 6
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 7
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 8
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 9
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 10
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 11
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 12
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 13
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 14
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 15
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 16
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 17
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 18
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 19
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 20
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 21
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 22
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 23
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 24
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 25
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 26
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 27
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 28
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 29
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     > worker 30
>     >   rx: pktio 0, queue 0
>     >   tx: pktio 1, queue 0
>     > worker 31
>     >   rx: pktio 1, queue 0
>     >   tx: pktio 0, queue 0
>     >
>     >
>     > Port config
>     > --------------------
>     > Port 0 (enp129s0f0)
>     >   rx workers 16
>     >   tx workers 16
>     >   rx queues 1
>     >   tx queues 1
>     > Port 1 (enp129s0f1)
>     >   rx workers 16
>     >   tx workers 16
>     >   rx queues 1
>     >   tx queues 1
>     >
>     > [01] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [02] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [03] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [04] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [05] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [06] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [07] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [08] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [09] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [10] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [11] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [12] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [13] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [14] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [15] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [16] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [17] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [18] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [19] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [20] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [21] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [22] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [23] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [24] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [25] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [26] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [27] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [28] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [29] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [30] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [31] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     > [32] num pktios 1, PKTIN_DIRECT, PKTOUT_DIRECT
>     >
>     > 0 pps, 0 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 0 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 0 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 0 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 0 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 0 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 0 max pps,  0 rx drops, 0 tx drops
>     > 96 pps, 96 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 96 max pps,  0 rx drops, 0 tx drops
>     > 64 pps, 96 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 96 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 96 max pps,  0 rx drops, 0 tx drops
>     > 32 pps, 96 max pps,  0 rx drops, 0 tx drops
>     > 0 pps, 96 max pps,  0 rx drops, 0 tx drops
>     > 416 pps, 416 max pps,  0 rx drops, 0 tx drops
>     >
>     >
>     > ODP-DPDK example run details:
>     > -----------------------------
>     > root@ubuntu:/home/ubuntu/odp-dpdk/test/common_plat/performance#
>     ./odp_l2fwd
>     > -i 0,1
>     > EAL: Detected 56 lcore(s)
>     > EAL: Probing VFIO support...
>     > EAL: PCI device 0000:05:00.0 on NUMA socket 0
>     > EAL:   probe driver: 8086:1528 net_ixgbe
>     > EAL: PCI device 0000:05:00.1 on NUMA socket 0
>     > EAL:   probe driver: 8086:1528 net_ixgbe
>     > ../linux-generic/_ishmphy.c:150:_odp_ishmphy_map():mmap failed:Cannot
>     > allocate memory
>     > ../linux-generic/_ishm.c:866:_odp_ishm_reserve():No huge pages,
>     fall back
>     > to normal pages. check: /proc/sys/vm/nr_hugepages.
>     > ../linux-generic/_ishmphy.c:150:_odp_ishmphy_map():mmap failed:Cannot
>     > allocate memory
>     > ../linux-generic/_ishmphy.c:150:_odp_ishmphy_map():mmap failed:Cannot
>     > allocate memory
>     > ../linux-generic/_ishmphy.c:150:_odp_ishmphy_map():mmap failed:Cannot
>     > allocate memory
>     >  PKTIO: initialized loop interface.
>     > ../linux-generic/_ishmphy.c:150:_odp_ishmphy_map():mmap failed:Cannot
>     > allocate memory
>     > No crypto devices available
>     > ../linux-generic/_ishmphy.c:150:_odp_ishmphy_map():mmap failed:Cannot
>     > allocate memory
>     > ../linux-generic/_ishmphy.c:150:_odp_ishmphy_map():mmap failed:Cannot
>     > allocate memory
>     > ../linux-generic/_ishmphy.c:150:_odp_ishmphy_map():mmap failed:Cannot
>     > allocate memory
>     >
>     > ODP system info
>     > ---------------
>     > ODP API version: 1.15.0
>     > ODP impl name:   odp-dpdk
>     > CPU model:       Intel(R) Xeon(R) CPU E5-2680 v4
>     > CPU freq (hz):   2400000000
>     > Cache line size: 64
>     > CPU count:       56
>     >
>     > Running ODP appl: "odp_l2fwd"
>     > -----------------
>     > IF-count:        2
>     > Using IFs:       0 1
>     > Mode:            PKTIN_DIRECT, PKTOUT_DIRECT
>     >
>     > num worker threads: 32
>     > first CPU:          24
>     > cpu mask:           0xFFFFFFFF000000
>     >
>     > mempool <packet pool>@0x7f1c7fe7de40
>     >   flags=10
>     >   pool=0x7f1c7e8ddcc0
>     >   phys_addr=0x17ffe7de40
>     >   nb_mem_chunks=1
>     >   size=8192
>     >   populated_size=8192
>     >   header_size=64
>     >   elt_size=2624
>     >   trailer_size=64
>     >   total_obj_size=2752
>     >   private_data_size=64
>     >   avg bytes/object=2752.000000
>     >   internal cache infos:
>     >     cache_size=512
>     >     cache_count[0]=0
>     >     cache_count[1]=0
>     >     cache_count[2]=0
>     >     cache_count[3]=0
>     >     cache_count[4]=0
>     >     cache_count[5]=0
>     >     cache_count[6]=0
>     >     cache_count[7]=0
>     >     cache_count[8]=0
>     >     cache_count[9]=0
>     >     cache_count[10]=0
>     >     cache_count[11]=0
>     >     cache_count[12]=0
>     >     cache_count[13]=0
>     >     cache_count[14]=0
>     >     cache_count[15]=0
>     >     cache_count[16]=0
>     >     cache_count[17]=0
>     >     cache_count[18]=0
>     >     cache_count[19]=0
>     >     cache_count[20]=0
>     >     cache_count[21]=0
>     >     cache_count[22]=0
>     >     cache_count[23]=0
>     >     cache_count[24]=0
>     >     cache_count[25]=0
>     >     cache_count[26]=0
>     >     cache_count[27]=0
>     >     cache_count[28]=0
>     >     cache_count[29]=0
>     >     cache_count[30]=0
>     >     cache_count[31]=0
>     >     cache_count[32]=0
>     >     cache_count[33]=0
>     >     cache_count[34]=0
>     >     cache_count[35]=0
>     >     cache_count[36]=0
>     >     cache_count[37]=0
>     >     cache_count[38]=0
>     >     cache_count[39]=0
>     >     cache_count[40]=0
>     >     cache_count[41]=0
>     >     cache_count[42]=0
>     >     cache_count[43]=0
>     >     cache_count[44]=0
>     >     cache_count[45]=0
>     >     cache_count[46]=0
>     >     cache_count[47]=0
>     >     cache_count[48]=0
>     >     cache_count[49]=0
>     >     cache_count[50]=0
>     >     cache_count[51]=0
>     >     cache_count[52]=0
>     >     cache_count[53]=0
>     >     cache_count[54]=0
>     >     cache_count[55]=0
>     >     cache_count[56]=0
>     >     cache_count[57]=0
>     >     cache_count[58]=0
>     >     cache_count[59]=0
>     >     cache_count[60]=0
>     >     cache_count[61]=0
>     >     cache_count[62]=0
>     >     cache_count[63]=0
>     >     cache_count[64]=0
>     >     cache_count[65]=0
>     >     cache_count[66]=0
>     >     cache_count[67]=0
>     >     cache_count[68]=0
>     >     cache_count[69]=0
>     >     cache_count[70]=0
>     >     cache_count[71]=0
>     >     cache_count[72]=0
>     >     cache_count[73]=0
>     >     cache_count[74]=0
>     >     cache_count[75]=0
>     >     cache_count[76]=0
>     >     cache_count[77]=0
>     >     cache_count[78]=0
>     >     cache_count[79]=0
>     >     cache_count[80]=0
>     >     cache_count[81]=0
>     >     cache_count[82]=0
>     >     cache_count[83]=0
>     >     cache_count[84]=0
>     >     cache_count[85]=0
>     >     cache_count[86]=0
>     >     cache_count[87]=0
>     >     cache_count[88]=0
>     >     cache_count[89]=0
>     >     cache_count[90]=0
>     >     cache_count[91]=0
>     >     cache_count[92]=0
>     >     cache_count[93]=0
>     >     cache_count[94]=0
>     >     cache_count[95]=0
>     >     cache_count[96]=0
>     >     cache_count[97]=0
>     >     cache_count[98]=0
>     >     cache_count[99]=0
>     >     cache_count[100]=0
>     >     cache_count[101]=0
>     >     cache_count[102]=0
>     >     cache_count[103]=0
>     >     cache_count[104]=0
>     >     cache_count[105]=0
>     >     cache_count[106]=0
>     >     cache_count[107]=0
>     >     cache_count[108]=0
>     >     cache_count[109]=0
>     >     cache_count[110]=0
>     >     cache_count[111]=0
>     >     cache_count[112]=0
>     >     cache_count[113]=0
>     >     cache_count[114]=0
>     >     cache_count[115]=0
>     >     cache_count[116]=0
>     >     cache_count[117]=0
>     >     cache_count[118]=0
>     >     cache_count[119]=0
>     >     cache_count[120]=0
>     >     cache_count[121]=0
>     >     cache_count[122]=0
>     >     cache_count[123]=0
>     >     cache_count[124]=0
>     >     cache_count[125]=0
>     >     cache_count[126]=0
>     >     cache_count[127]=0
>     >     total_cache_count=0
>     >   common_pool_count=8192
>     >   no statistics available
>     > ../linux-generic/odp_packet_io.c:226:setup_pktio_entry():Unable to
>     init any
>     > I/O type.
>     > odp_l2fwd.c:642:create_pktio():Error: failed to open 0
>     >
>     >
>     > Thanks & Regards,
>     > P Gyanesh Kumar Patra
>     >
> 
> 

Reply via email to