Re: [dpdk-users] Newbie query: DPDK use case scenario
, | 1: if DPDK is something that our team can utilize for providing a | faster networking platform, which the applications team (say teams | that use standard unix networking interface to develop software) | can use ? or DPDK is relevant mostly for companies that build Core | Networking Hardware and Software products ? ` this would be very usecase dependent. fwiw, dpdk doesnt really come with a canonical network stack, and you would need something for app folks to use. if you look at bunch of sample applications (http://dpdk.org/doc/guides/sample_app_ug/index.html) you can get a fair idea of effort etc. required for your usecase. -- kind regards anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda. On Fri, Sep 15, 2017 at 2:15 AM, amit mehtawrote: > Hello, > > I work at a platform team in a Software Company. Our group > is responsible for providing and maintaining middleware software > for our applications team. > > We have Linux boxes (x86_64 machines running Linux) and have DPDK > supported Intel NIC cards (I had a quick look at the DPDK website > and fortunately, we have such NICs in our Linux boxes). > > I am fairly new to the entire fast network packet processing domain, > hence, I'm wondering : > > 1: if DPDK is something that our team can utilize for providing a > faster networking platform, which the applications team (say teams > that use standard unix networking interface to develop software) > can use ? or DPDK is relevant mostly for companies that build Core > Networking Hardware and Software products ? > > 2: If mine is indeed a valid use case for DPDK usage, then how > big could be the impact on the existing software ? > > Thank you for your help. > > Thanks, > Amit > > -- > Sent from Bahamas, while drinking chi-chi and piña colada. >
Re: [dpdk-users] Question about range type of DPDK ACL
On Thu, Jun 22, 2017 at 11:28 AM, Doohwan Leewrote: > Ok. The code to set rule for IPv4 address is like below. > this is same as setting masks (1.0.0.0/8) :) fwiw, beware of memory explosion in this case though... -- kind regards anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
Re: [dpdk-users] Question about range type of DPDK ACL
On Wed, Jun 21, 2017 at 11:36 AM, Doohwan Leewrote: > DPDK ACL library uses multi-bit trie with 8-bit stride. > I guess that implementation of the trie doesn't support 32bit range > matching. > well, you _can_ have address wildcard matches e.g. an address+mask combination of 1.2.3.0/24 would match all addresses 1.2.3.[0..255] -- kind regards anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
Re: [dpdk-users] Memory Allocation
On Tue, May 16, 2017 at 9:44 PM, Kumaraparameshwaran Rathnavel < kr...@cloudsimple.com> wrote: > will the memory be allocated on the Node where the DPDK thread was > initially running when the memory allocation functions was called rte_malloc(...) will return memory allocated on the NUMA socket of the core which made the invokation. access to this from other locations will incur the qpi penalty... -- thanks anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
Re: [dpdk-users] DPDK beginer: Best way to try out DPDK on a laptop with unsupported NIC
On Tue, Jan 31, 2017 at 8:12 AM, Matthew Hallwrote: > vmxnet3 and virtio-net support in DPDK are both broken in VirtualBox. I > how about kvm+qemu combination. those seem to work fine for me. ymmv (tm) -- kind regards anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
Re: [dpdk-users] DPDK pinned Memory for non Root User
On Wed, Dec 28, 2016 at 4:21 PM, Shreyansh Jainwrote: > There is possible way, as documented here: > http://dpdk.org/doc/guides/linux_gsg/enable_func.html# > running-dpdk-applications-without-root-privileges > > But I haven't tried it myself and neither do I know if it will solve your > problem. > yeah it says that but afaik, /proc/self/pagemap cannot be opened (during init) due to virt2phys translation issues... --- thanks anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
Re: [dpdk-users] DPDK pinned Memory for non Root User
On Wed, Dec 28, 2016 at 3:51 PM, Karthi Mwrote: > So is there a way for App to get pinned memory for the users other than > the root user. i am assuming that you are on linux. afaik there is no way to run dpdk as non-root. the thread you linked to has necessary information... -- thanks anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
Re: [dpdk-users] Freeing up Mbuf
On Thu, Dec 22, 2016 at 10:17 PM, Kumaraparameshwaran Rathnavel < kr...@cloudsimple.com> wrote: > In FreeBSD the user can actually specify the free routine for the mbuf > when the transmit routine is called. Is this implemented in DPDK. currently, afaik, dpdk does not provide this functionality. basically, there is no way to poll the tx-ring for consumed buffers. or to put it another way, rte_eth_tx_burst doesn't synchronously transmit the packets. -- kind regards anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
Re: [dpdk-users] KNI - mbuf-sk_buff converstion
On Wed, Dec 21, 2016 at 1:09 PM, Avi Cohenwrote: > are zero_copy with respect to the packet data (headers+payload) - is this > correc umm mbuf's, and skb's are in different address spaces... -- kind regards anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
[dpdk-users] Dell PowerEdge CPU IERR caused by DPDK 16.07
On Mon, Nov 21, 2016 at 3:45 PM, Norbert Nyak? wrote: > As soon as I ran the testpipeline sample application on one of the > servers it stops responding and on the LCD info screen and in the > logs CPU IERR error messages appear > ?difficult to *conclusively* conclude ?that this might be _caused_ by dpdk. what is the error that you see (not just the fact that you saw a CPU-IERR) ? for some more information have a look here: http://www.dell.com/support/article/in/en/indhs1/SLN292634. maybe reseating memory modules (or some such) on the machine where you see this might fix the issue ? one laborious but possible approach to conclude that this is caused (rather than just _triggered_) by dpdk would be to invert machine configuration and then retest ? ?-- thanks anupam ? In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
[dpdk-users] Is rte_get_timer_cycles()is same on all cores?
On Tue, Nov 15, 2016 at 12:44 PM, Chinmaya Dwibedy wrote: > I think, it is same on all cores. Can > anyone please correct me if I am wrong? > ?it *should* be same but because of invariant-tsc support in latest intel machines (see if cpuid gives you "0x8007/edx" which indicates its presence) ?-- kind regards anupam? In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
[dpdk-users] [dpdk-dev] acl: delete/modify rule support
On Tue, Nov 15, 2016 at 10:40 AM, Nikhil Jagtap wrote: > Is it possible to build the ACL context over a period of time, one rule > at a time by calling build post each add operation? > Something like this : > rte_acl_add_rules(ctx, rule1, 1); > rte_acl_build(ctx, build_cfg); > rte_acl_add_rules(ctx, rule2, 1); > rte_acl_build(ctx, build_cfg); > rte_acl_add_rules(ctx, rule3, 1); > rte_acl_build(ctx, build_cfg); > > I tried this, and it seems to be working - but still wanted to confirm. > ?yes this is fine. but building the querying data-structure is not thread safe. so more often than not, you are better of having a rule-list, and then building it all in one fell swoop... ? > > 2) I did not find any delete-rule API. I understand from one of the email > archives (http://dpdk.org/ml/archives/dev/2015-June/018868.html) that it > is > not supported. Any specific reason why deletion of rule is not supported? > Any plan to support it? > Any alternative way other than destroying the whole context, adding the new > set of rules and building the rules again? > current implementation uses multibit-trie?s. to conserve memory, rules are split into multiple non-overlapping/non-intersecting rules. i would wager that implementing deletion would be non-trivial :) better option might be to add/modify/delete your rule-list, and rebuild, and then re-use... ?-- kind regards anupam? In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
[dpdk-users] Beginners question: rte_eth_tx_burst, rte_mbuf access synchronization
On Fri, Nov 11, 2016 at 3:19 PM, Philipp Beyer wrote: > Basically, I need to send the same packet over a single interface, over an > over again, with single bytes changed each time. > I use rte_eth_tx_burst to send 16 packets at once. As I want to re-use the > same buffers in a very simple way, I just increment the refcnt > accordingly. > just throwing it out there: have you considered a trivial scheme of repeatedly invoking 'rte_eth_tx_burst(...)'? till a value less than 'nb_pkts' is returned. once you reach that state, then the reuse can happen... -- kind regards anupam ? In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
[dpdk-users] Is DPDK compatible with C++11 threads?
On Thu, Nov 10, 2016 at 2:30 AM, Wiles, Keith wrote: > Also look at one of the DPDK examples as it uses a lthread on top of > pthreads and it may give you some ideas as to how multiple threads can > work. I am trying to remember which example and my dev machine is down at > this time, but just search for lthread. ?this one: ?http://dpdk.org/doc/guides/sample_app_ug/performance_thread.html one more thing that you probably need to watch out for would be libc interactions within your C++11 application e.g. usage of stl containers might exact a severe performance penalty... -- kind regards anupam In the beginning was the lambda, and the lambda was with Emacs, and Emacs was the lambda.
[dpdk-users] [dpdk-dev] [Crypto-API query]
> [2016-06-28T12:31:02+0530]: "amartya.das" (amartya.das): moved the discussion to dpdk-users (from dpdk-dev) ,[ amartya.das ] | But getting same error: | | Not sure about the problem, any path setting wrong so that it is not fetching? ` couple of things: - assuming standard build paths, can you please check if 'CONFIG_RTE_LIBRTE_PMD_AESNI_MB=y' in your, build/.config ? - if it is, then see if you have bunch of object files in build/build/drivers/crypto/aesni_mb for example, for me i see a bunch of files: -rw-rw-r-- 1 anupam anupam 26068 Jun 28 14:28 librte_pmd_aesni_mb.a -rw-rw-r-- 1 anupam anupam 0 Jun 28 14:28 _postbuild -rw-rw-r-- 1 anupam anupam 0 Jun 28 14:28 _postinstall -rw-rw-r-- 1 anupam anupam 15192 Jun 28 14:28 rte_aesni_mb_pmd.o -rw-rw-r-- 1 anupam anupam 10456 Jun 28 14:28 rte_aesni_mb_pmd_ops.o - if you see this as well, then, while building the l2fwd-crypto application, make sure that you have 'AESNI_MULTI_BUFFER_LIB_PATH' pointing to the correct place. - if this is also true, then check and see if your application contains aes.*pmd symbols e.g. objdump -t build/l2fwd-crypto | grep 'aes.*pmd' - if this gives you something useful, then you are almost there :) running the application e.g. like so: [root at perf3 dpdk-sources]# examples/l2fwd-crypto/build/app/l2fwd-crypto -c 0xc -n 3 --vdev="cryptodev_aesni_mb_pmd,socket_id=0,max_nb_sessions=128" starts doing something sane... couple of minor things: - after building the crypto-multi-buffer support make sure to run the tests as well in 'LibTestApp' if you are running on vcpu's this would most likely fail (no avx support) - please note thtat 'socket_id' in the dpdk-cryptodev page is set to '1' -- thanks anupam