From: "Zhang, Helin" <helin.zhang@intel.com> To: Thomas Monjalon <thomas.monjalon@6wind.com> Cc: "dev@dpdk.org" <dev@dpdk.org> Subject: Re: [dpdk-dev] [PATCH v5 1/5] i40e: Use constant random hash keys Date: Thu, 6 Nov 2014 07:52:53 +0000 Message-ID: <F35DEAC7BCE34641BA9FAC6BCA4A12E70A7AF51C@SHSMSX104.ccr.corp.intel.com> (raw) In-Reply-To: <1526321.WRfZaPjy3u@xps13> > -----Original Message----- > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > Sent: Monday, November 3, 2014 4:59 PM > To: Zhang, Helin > Cc: dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH v5 1/5] i40e: Use constant random hash keys > > 2014-11-03 08:18, Zhang, Helin: > > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > > > The title is a bit surprising: > > > - it should be about RSS > > > > RSS makes use of hash function to route received packets, though hash > > function can be used for other cases, e.g. Flow director. > > Yes but this patch is only changing rss_key_default so I guess it's only related to > RSS, right? Yes, it is related to RSS. > > > > - a constant cannot be really random ;) > > > > The hash keys are generated by libc random function. > > It is preparatory to avoid calling random function for each port. > > Here, you remove the call to rte_rand by a constant value. Yes, actually the hardware just needs random keys by default, no matter what the real data it is. So array of random data would be better, as no need of cpu cycles, and it is safer in multi-threads environments. > > > > 2014-10-21 11:14, Helin Zhang: > > > > To be simpler, and remove the race condition, it uses prepared > > > > constant random hash keys to replace runtime generating the hash keys. > > > > > > Could you explain what is the role of rss_key_default? > > > > Hash function needs to be configured with keys, before end users > > configured them with specific keys, we need to provide a default keys > > which is generated by libc random function. > > The random keys can get the hash function to route the received > > packets to all the queues well-proportioned. Regards, Helin
next prev parent reply other threads:[~2014-11-06 7:44 UTC|newest] Thread overview: 71+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-09-30 6:20 [dpdk-dev] [PATCH v3 0/7] Support configuring hash functions Helin Zhang 2014-09-30 6:20 ` [dpdk-dev] [PATCH v3 1/7] ethdev: add more annotations Helin Zhang 2014-10-13 6:12 ` [dpdk-dev] [PATCH v4 0/7] Support configuring hash functions Helin Zhang 2014-10-13 6:12 ` [dpdk-dev] [PATCH v4 1/7] ethdev: add more annotations Helin Zhang 2014-10-13 6:12 ` [dpdk-dev] [PATCH v4 2/7] ethdev: add interfaces and relevant for filter control Helin Zhang 2014-10-13 6:12 ` [dpdk-dev] [PATCH v4 3/7] ethdev: add structures and enum for hash " Helin Zhang 2014-10-13 6:12 ` [dpdk-dev] [PATCH v4 4/7] i40e: add hash filter control implementation Helin Zhang 2014-10-13 10:23 ` Chilikin, Andrey 2014-10-14 0:42 ` Zhang, Helin 2014-10-13 6:12 ` [dpdk-dev] [PATCH v4 5/7] i40e: add hardware initialization Helin Zhang 2014-10-13 6:12 ` [dpdk-dev] [PATCH v4 6/7] i40e: Use constant random hash keys Helin Zhang 2014-10-13 6:12 ` [dpdk-dev] [PATCH v4 7/7] app/testpmd: add commands to support hash filter control Helin Zhang 2014-10-13 12:27 ` [dpdk-dev] [PATCH v4 0/7] Support configuring hash functions Zhan, Zhaochen 2014-10-14 3:32 ` Wu, Jingjing 2014-10-21 3:14 ` [dpdk-dev] [PATCH v5 0/5] " Helin Zhang 2014-10-21 3:14 ` [dpdk-dev] [PATCH v5 1/5] i40e: Use constant random hash keys Helin Zhang 2014-11-03 7:49 ` Thomas Monjalon 2014-11-03 8:18 ` Zhang, Helin 2014-11-03 8:59 ` Thomas Monjalon 2014-11-06 7:52 ` Zhang, Helin [this message] 2014-11-11 3:30 ` Zhang, Helin 2014-10-21 3:14 ` [dpdk-dev] [PATCH v5 2/5] ethdev: add enum type and relevant structures for hash filter control Helin Zhang 2014-11-03 7:57 ` Thomas Monjalon 2014-11-06 3:41 ` Zhang, Helin 2014-11-06 8:43 ` Thomas Monjalon 2014-11-06 8:54 ` Zhang, Helin 2014-11-11 3:27 ` Zhang, Helin 2014-11-11 6:46 ` Zhang, Helin 2014-11-11 21:08 ` Thomas Monjalon 2014-11-12 5:52 ` Zhang, Helin 2014-11-12 9:30 ` Thomas Monjalon 2014-11-12 14:22 ` Zhang, Helin 2014-10-21 3:14 ` [dpdk-dev] [PATCH v5 3/5] i40e: add hash filter control implementation Helin Zhang 2014-10-21 3:14 ` [dpdk-dev] [PATCH v5 4/5] i40e: add hardware initialization Helin Zhang 2014-10-21 3:14 ` [dpdk-dev] [PATCH v5 5/5] app/testpmd: add commands to support hash filter Helin Zhang 2014-11-07 3:45 ` [dpdk-dev] [PATCH v5 0/5] Support configuring hash functions Chen, Erlu 2014-11-07 6:12 ` Chen, Erlu 2014-11-19 14:58 ` [dpdk-dev] [PATCH v6 0/3] " Helin Zhang 2014-11-19 14:58 ` [dpdk-dev] [PATCH v6 1/3] i40e: Use constant as the default hash keys Helin Zhang 2014-11-19 14:58 ` [dpdk-dev] [PATCH v6 2/3] i40e: support of controlling hash functions Helin Zhang 2014-11-19 14:58 ` [dpdk-dev] [PATCH v6 3/3] app/testpmd: add commands to support " Helin Zhang 2014-11-27 15:45 ` [dpdk-dev] [PATCH v6 0/3] Support configuring " Thomas Monjalon 2014-11-27 16:17 ` Zhang, Helin 2014-11-28 12:14 ` [dpdk-dev] [PATCH v7 0/4] " Helin Zhang 2014-11-28 12:14 ` [dpdk-dev] [PATCH v7 1/4] ethdev: code style fixes Helin Zhang 2014-11-28 12:14 ` [dpdk-dev] [PATCH v7 2/4] i40e: use constant as the default hash keys Helin Zhang 2014-11-28 12:14 ` [dpdk-dev] [PATCH v7 3/4] i40e: support of controlling hash functions Helin Zhang 2014-11-28 12:52 ` Ananyev, Konstantin 2014-11-28 12:14 ` [dpdk-dev] [PATCH v7 4/4] app/testpmd: app/testpmd: add commands to support " Helin Zhang 2014-12-02 2:19 ` [dpdk-dev] [PATCH v8 0/4] Support configuring " Helin Zhang 2014-12-02 2:19 ` [dpdk-dev] [PATCH v8 1/4] ethdev: code style fixes Helin Zhang 2014-12-02 2:19 ` [dpdk-dev] [PATCH v8 2/4] i40e: use constant as the default hash keys Helin Zhang 2014-12-02 2:19 ` [dpdk-dev] [PATCH v8 3/4] i40e: support of controlling hash functions Helin Zhang 2015-01-20 7:54 ` Thomas Monjalon 2015-01-21 0:13 ` Zhang, Helin 2015-01-22 7:44 ` Zhang, Helin 2014-12-02 2:19 ` [dpdk-dev] [PATCH v8 4/4] app/testpmd: add commands to support " Helin Zhang 2014-12-02 13:15 ` [dpdk-dev] [PATCH v8 0/4] Support configuring " Ananyev, Konstantin 2015-01-22 7:36 ` [dpdk-dev] [PATCH v9 0/5] " Helin Zhang 2015-01-22 7:36 ` [dpdk-dev] [PATCH v9 1/5] i40e: use constant as the default hash keys Helin Zhang 2015-01-22 7:36 ` [dpdk-dev] [PATCH v9 2/5] ethdev: code style fixes Helin Zhang 2015-01-22 7:36 ` [dpdk-dev] [PATCH v9 3/5] ethdev: support of configuring hash functions Helin Zhang 2015-01-22 7:36 ` [dpdk-dev] [PATCH v9 4/5] i40e: support of controlling " Helin Zhang 2015-01-22 7:36 ` [dpdk-dev] [PATCH v9 5/5] app/testpmd: add commands to support " Helin Zhang [not found] ` <5028514.8nkR6oWFO2@xps13> 2015-02-03 2:35 ` Zhang, Helin 2014-09-30 6:20 ` [dpdk-dev] [PATCH v3 2/7] ethdev: add interfaces and relevant for filter control Helin Zhang 2014-09-30 6:20 ` [dpdk-dev] [PATCH v3 3/7] ethdev: add structures and enum for hash " Helin Zhang 2014-09-30 6:20 ` [dpdk-dev] [PATCH v3 4/7] i40e: add hash filter control implementation Helin Zhang 2014-09-30 6:20 ` [dpdk-dev] [PATCH v3 5/7] i40e: add hardware initialization Helin Zhang 2014-09-30 6:20 ` [dpdk-dev] [PATCH v3 6/7] i40e: Use constant random hash keys Helin Zhang 2014-09-30 6:20 ` [dpdk-dev] [PATCH v3 7/7] app/testpmd: add commands to support hash filter control Helin Zhang
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=F35DEAC7BCE34641BA9FAC6BCA4A12E70A7AF51C@SHSMSX104.ccr.corp.intel.com \ --to=helin.zhang@intel.com \ --cc=dev@dpdk.org \ --cc=thomas.monjalon@6wind.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
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git