[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-13 Thread Linhaifeng
On 2015/5/13 9:18, Ravi Kerur wrote: > If you can wait until Thursday I will probably send v3 patch which will > have full memcmp support. Ok, I'd like to test it:) > > In your program try with volatile pointer and see if it helps. like "volatile uint8_t *src, *dst" ?

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-13 Thread Ravi Kerur
On Wed, May 13, 2015 at 2:03 AM, Bruce Richardson < bruce.richardson at intel.com> wrote: > On Tue, May 12, 2015 at 06:16:20PM -0700, Ravi Kerur wrote: > > On Mon, May 11, 2015 at 3:29 PM, Don Provan wrote: > > > > > I probably shouldn't stick my nose into this, but I can't help myself. > > > >

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-13 Thread Ravi Kerur
On Wed, May 13, 2015 at 5:21 AM, Jay Rolette wrote: > On Tue, May 12, 2015 at 8:16 PM, Ravi Kerur wrote: > >> On Mon, May 11, 2015 at 3:29 PM, Don Provan wrote: >> >> > I probably shouldn't stick my nose into this, but I can't help myself. >> > >> > An experienced programmer will tend to

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-13 Thread Ravi Kerur
gt; > Subject: FW: [dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE > instructions. > > > > > > > > From: Ravi Kerur [mailto:rkerur at gmail.com] > > Sent: Monday, May 11, 2015 9:47 PM > > To: Ananyev, Konstantin > > Cc: dev at dpdk.org > >

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-13 Thread Ravi Kerur
On Wed, May 13, 2015 at 12:22 AM, Linhaifeng wrote: > > > On 2015/5/13 9:18, Ravi Kerur wrote: > > If you can wait until Thursday I will probably send v3 patch which will > > have full memcmp support. > > Ok, I'd like to test it:) > > > > > In your program try with volatile pointer and see if it

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-13 Thread Ananyev, Konstantin
Hi Ravi, > -Original Message- > From: Ananyev, Konstantin > Sent: Wednesday, May 13, 2015 11:02 AM > To: Ananyev, Konstantin > Subject: FW: [dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE > instructions. > > > > From: Ravi Kerur [mailto:rkerur at gma

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-13 Thread Bruce Richardson
On Tue, May 12, 2015 at 06:16:20PM -0700, Ravi Kerur wrote: > On Mon, May 11, 2015 at 3:29 PM, Don Provan wrote: > > > I probably shouldn't stick my nose into this, but I can't help myself. > > > > An experienced programmer will tend to ignore the documentation for > > a routine named

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-13 Thread Jay Rolette
On Tue, May 12, 2015 at 8:16 PM, Ravi Kerur wrote: > On Mon, May 11, 2015 at 3:29 PM, Don Provan wrote: > > > I probably shouldn't stick my nose into this, but I can't help myself. > > > > An experienced programmer will tend to ignore the documentation for > > a routine named "blahblah_memcmp"

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-12 Thread Ravi Kerur
Hi Linhaifeng, On Tue, May 12, 2015 at 1:13 AM, Linhaifeng wrote: > Hi, Ravi Kerur > > On 2015/5/9 5:19, Ravi Kerur wrote: > > Preliminary results on Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz, Ubuntu > > 14.04 x86_64 shows comparisons using AVX/SSE instructions taking 1/3rd > > CPU ticks for 16,

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-12 Thread Ravi Kerur
> dprovan at bivio.net > > -Original Message- > From: Ravi Kerur [mailto:rkerur at gmail.com] > Sent: Monday, May 11, 2015 1:47 PM > To: Ananyev, Konstantin > Cc: dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE > instructions. > &g

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-12 Thread Linhaifeng
Hi, Ravi Kerur On 2015/5/9 5:19, Ravi Kerur wrote: > Preliminary results on Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz, Ubuntu > 14.04 x86_64 shows comparisons using AVX/SSE instructions taking 1/3rd > CPU ticks for 16, 32, 48 and 64 bytes comparison. In addition, I had write a program to test

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-11 Thread Don Provan
ough about your use cases to say whether that makes sense here. -don provan dprovan at bivio.net -Original Message- From: Ravi Kerur [mailto:rke...@gmail.com] Sent: Monday, May 11, 2015 1:47 PM To: Ananyev, Konstantin Cc: dev at dpdk.org Subject: Re: [dpdk-dev] [PATCH v2] Implement memcmp us

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-11 Thread Ananyev, Konstantin
Hi Ravi, > > From: Ravi Kerur [mailto:rkerur at gmail.com] > Sent: Monday, May 11, 2015 6:43 PM > To: Ananyev, Konstantin > Cc: Matt Laswell; dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE > instructions. > > Hi Konstantin, &

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-11 Thread Ravi Kerur
n > > Cc: Matt Laswell; dev at dpdk.org > > Subject: Re: [dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE > instructions. > > > > Hi Konstantin, > > > > > > On Mon, May 11, 2015 at 2:51 AM, Ananyev, Konstantin < > konstantin.ananyev at intel.com>

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-11 Thread Ravi Kerur
PM > > To: Matt Laswell > > Cc: dev at dpdk.org > > Subject: Re: [dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE > instructions. > > > > On Fri, May 8, 2015 at 3:29 PM, Matt Laswell > wrote: > > > > > > > > > > > On Fri

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-11 Thread Ananyev, Konstantin
Hi Ravi, > -Original Message- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Ravi Kerur > Sent: Friday, May 08, 2015 11:55 PM > To: Matt Laswell > Cc: dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE > instructions. >

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-08 Thread Matt Laswell
On Fri, May 8, 2015 at 5:54 PM, Ravi Kerur wrote: > > > On Fri, May 8, 2015 at 3:29 PM, Matt Laswell > wrote: > >> >> >> On Fri, May 8, 2015 at 4:19 PM, Ravi Kerur wrote: >> >>> This patch replaces memcmp in librte_hash with rte_memcmp which is >>> implemented with AVX/SSE instructions. >>>

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-08 Thread Matt Laswell
On Fri, May 8, 2015 at 4:19 PM, Ravi Kerur wrote: > This patch replaces memcmp in librte_hash with rte_memcmp which is > implemented with AVX/SSE instructions. > > +static inline int > +rte_memcmp(const void *_src_1, const void *_src_2, size_t n) > +{ > + const uint8_t *src_1 = (const

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-08 Thread Ravi Kerur
On Fri, May 8, 2015 at 3:29 PM, Matt Laswell wrote: > > > On Fri, May 8, 2015 at 4:19 PM, Ravi Kerur wrote: > >> This patch replaces memcmp in librte_hash with rte_memcmp which is >> implemented with AVX/SSE instructions. >> >> +static inline int >> +rte_memcmp(const void *_src_1, const void

[dpdk-dev] [PATCH v2] Implement memcmp using AVX/SSE instructions.

2015-05-08 Thread Ravi Kerur
This patch replaces memcmp in librte_hash with rte_memcmp which is implemented with AVX/SSE instructions. Preliminary results on Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz, Ubuntu 14.04 x86_64 shows comparisons using AVX/SSE instructions taking 1/3rd CPU ticks for 16, 32, 48 and 64 bytes comparison.