DPDK patches and discussions
 help / color / mirror / Atom feed
From: Neil Horman <nhorman@tuxdriver.com>
To: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH] acl: If build does not support sse4.2, emulate missing instructions with C code
Date: Wed, 6 Aug 2014 08:12:21 -0400	[thread overview]
Message-ID: <20140806121221.GA26562@localhost.localdomain> (raw)
In-Reply-To: <2601191342CEEE43887BDE71AB9772582134FC52@IRSMSX105.ger.corp.intel.com>

On Wed, Aug 06, 2014 at 10:52:09AM +0000, Ananyev, Konstantin wrote:
> 
> > > For ACL there is a simple UT, that could be run as:
> > > ./x86_64-native-linuxapp-gcc/app/test ...
> > > RTE>>acl_autotest
> > > It takes just few seconds to run.
> > 
> > It doesn't seem to work properly, at least not on any of my systems.  With a
> > system allocation 100 pages to hugepage memory:
> > 
> > [root@hmsreliant app]# ./test -c 0x3 -n 2
> > EAL: Detected lcore 0 as core 0 on socket 0
> > EAL: Detected lcore 1 as core 1 on socket 0
> > EAL: Detected lcore 2 as core 2 on socket 0
> > EAL: Detected lcore 3 as core 3 on socket 0
> > EAL: Detected lcore 4 as core 0 on socket 0
> > EAL: Detected lcore 5 as core 1 on socket 0
> > EAL: Detected lcore 6 as core 2 on socket 0
> > EAL: Detected lcore 7 as core 3 on socket 0
> > EAL: Support maximum 64 logical core(s) by configuration.
> > EAL: Detected 8 lcore(s)
> > EAL:   cannot open VFIO container, error 2 (No such file or directory)
> > EAL: VFIO support could not be initialized
> > EAL: Setting up memory...
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7fef07000000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7fef06c00000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x400000 bytes
> > EAL: Virtual area found at 0x7fef06600000 (size = 0x400000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7fef06200000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7fef05e00000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x600000 bytes
> > EAL: Virtual area found at 0x7fef05600000 (size = 0x600000)
> > EAL: Ask a virtual area of 0x600000 bytes
> > EAL: Virtual area found at 0x7fef04e00000 (size = 0x600000)
> > EAL: Ask a virtual area of 0x800000 bytes
> > EAL: Virtual area found at 0x7fef04400000 (size = 0x800000)
> > EAL: Ask a virtual area of 0x400000 bytes
> > EAL: Virtual area found at 0x7fef03e00000 (size = 0x400000)
> > EAL: Ask a virtual area of 0xa00000 bytes
> > EAL: Virtual area found at 0x7fef03200000 (size = 0xa00000)
> > EAL: Ask a virtual area of 0x400000 bytes
> > EAL: Virtual area found at 0x7fef02c00000 (size = 0x400000)
> > EAL: Ask a virtual area of 0x400000 bytes
> > EAL: Virtual area found at 0x7fef02600000 (size = 0x400000)
> > EAL: Ask a virtual area of 0x1800000 bytes
> > EAL: Virtual area found at 0x7fef00c00000 (size = 0x1800000)
> > EAL: Ask a virtual area of 0x1200000 bytes
> > EAL: Virtual area found at 0x7feeff800000 (size = 0x1200000)
> > EAL: Ask a virtual area of 0x2600000 bytes
> > EAL: Virtual area found at 0x7feefd000000 (size = 0x2600000)
> > EAL: Ask a virtual area of 0xc00000 bytes
> > EAL: Virtual area found at 0x7feefc200000 (size = 0xc00000)
> > EAL: Ask a virtual area of 0x2200000 bytes
> > EAL: Virtual area found at 0x7feef9e00000 (size = 0x2200000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7feef9a00000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7feef9600000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7feef9200000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7feef8e00000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7feef8a00000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7feef8600000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x200000 bytes
> > EAL: Virtual area found at 0x7feef8200000 (size = 0x200000)
> > EAL: Ask a virtual area of 0x600000 bytes
> > EAL: Virtual area found at 0x7feef7a00000 (size = 0x600000)
> > EAL: Requesting 100 pages of size 2MB from socket 0
> > EAL: TSC frequency is ~3392297 KHz
> > EAL: Master core 0 is ready (tid=73cf880)
> > EAL: Core 1 is ready (tid=f71fe700)
> > APP: HPET is not enabled, using TSC as default timer
> > RTE>>acl_autotest
> > ACL: allocation of 25166720 bytes on socket 9 for ACL_acl_ctx failed
> > 
> > This hangs forever (well, at least 30 minutes, but thats sufficiently
> > close to forever for me to wait).
> > 
> 
> Ok that's unusual.
> Never seen before.
> I suppose that happens with unmodified dpdk 1.7?
If I build unmodified dpdk 1.7 (which I can only build for the native platform),
it works, however it doesn't work when built with modifications for the default
platform, but see below.

> I do run acl_autotest with at least 256M of huge-pages as ACL is quite memory consuming  and, as I remember, requires at least 2X32M areas of contiguous hugepages.
> But in that case (not enough hugepages) it should just fail with something like:
> ACL: allocation of 25953152 bytes on socket -1 for ACL_acl_ctx failed
> Any other details, so I can try to reproduce it:
> arch you build/run it on?
x86_64 default build (has to be to test the new code).

> amount of free memory in the system?
Its an 8G workstation, should have most of that free (haven't checked yet).

> Wonder what pstack says?
It says that we're stuck in the eal library, before we've touched the ACL
library it seems, so I'm not sure whats going on here:
#0  0x0000003d11ef53c3 in epoll_wait () from /lib64/libc.so.6
#1  0x00000000004d315a in eal_intr_thread_main ()
#2  0x0000003d12607f33 in start_thread () from /lib64/libpthread.so.0
#3  0x0000003d11ef4ded in clone () from /lib64/libc.so.6
Thread 2 (Thread 0x7fee73ffe700 (LWP 14529)):
#0  0x0000003d1260e87d in read () from /lib64/libpthread.so.0
#1  0x00000000004ced0a in eal_thread_loop ()
#2  0x0000003d12607f33 in start_thread () from /lib64/libpthread.so.0
#3  0x0000003d11ef4ded in clone () from /lib64/libc.so.6
Thread 1 (Thread 0x7fee84100880 (LWP 14527)):
#0  0x000000000041adde in acl_match_check_x2.constprop ()
#1  0x000000000041b1af in search_sse_2 ()
#2  0x00000000004baab9 in rte_acl_classify ()
#3  0x000000000047d12d in test_acl ()
#4  0x000000000041c535 in cmd_autotest_parsed ()
#5  0x00000000004d8503 in cmdline_parse ()
#6  0x00000000004d7600 in cmdline_valid_buffer ()
#7  0x00000000004da43a in rdline_char_in ()
#8  0x00000000004d7809 in cmdline_interact ()
#9  0x000000000041bccb in main ()

> 
> Thanks
> Konstantin
> 
> 
> 

  reply	other threads:[~2014-08-06 12:10 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-04 15:35 Neil Horman
2014-08-05 15:26 ` Ananyev, Konstantin
2014-08-05 18:20   ` Neil Horman
2014-08-06 10:52     ` Ananyev, Konstantin
2014-08-06 12:12       ` Neil Horman [this message]
2014-08-06 12:23         ` Ananyev, Konstantin
2014-08-06 13:35           ` Neil Horman
2014-08-06 11:39     ` Ananyev, Konstantin
2014-08-06 12:18       ` Neil Horman
2014-08-06 12:26         ` Ananyev, Konstantin
2014-08-06 16:59         ` Richardson, Bruce
2014-08-06 17:27           ` Neil Horman
2014-08-12 23:19             ` Thomas Monjalon
2014-08-13 12:33               ` Neil Horman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140806121221.GA26562@localhost.localdomain \
    --to=nhorman@tuxdriver.com \
    --cc=dev@dpdk.org \
    --cc=konstantin.ananyev@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).