[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-16 Thread Yerden Zhumabekov
15.11.2014 0:41, Neil Horman ?: > On Fri, Nov 14, 2014 at 10:43:39PM +0600, Yerden Zhumabekov wrote: >> 14.11.2014 19:53, Neil Horman ?: >>> >>> Well, its possible you'll get lucky. crc is such a common operation, its >>> entirely possible that the gcc intrinsic emits software based crc

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-14 Thread Yerden Zhumabekov
14.11.2014 19:53, Neil Horman ?: > On Fri, Nov 14, 2014 at 05:57:51PM +0600, Yerden Zhumabekov wrote: >> 14.11.2014 17:33, Neil Horman ?: >>> Not really. That covers the case of applications selecting the hash >>> function >>> using the DEFUALT_HASH_FUNC macro, but doesn't nothing for ap

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-14 Thread Yerden Zhumabekov
14.11.2014 17:33, Neil Horman ?: > On Fri, Nov 14, 2014 at 01:15:12PM +0600, Yerden Zhumabekov wrote: >> >> Hello, >> >> A quick grep on dpdk source shows that rte_hash_crc() is used in >> librte_hash in following context: >> >> In rte_hash.c: >> /* Hash function used if none is specified */ >

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-14 Thread Thomas Monjalon
2014-11-14 08:53, Neil Horman: > On Fri, Nov 14, 2014 at 05:57:51PM +0600, Yerden Zhumabekov wrote: > > 14.11.2014 17:33, Neil Horman ?: > > > On Fri, Nov 14, 2014 at 01:15:12PM +0600, Yerden Zhumabekov wrote: > > >> A quick grep on dpdk source shows that rte_hash_crc() is used in > > >> librte

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-14 Thread Neil Horman
On Fri, Nov 14, 2014 at 10:43:39PM +0600, Yerden Zhumabekov wrote: > > 14.11.2014 19:53, Neil Horman ?: > > On Fri, Nov 14, 2014 at 05:57:51PM +0600, Yerden Zhumabekov wrote: > >> 14.11.2014 17:33, Neil Horman ?: > >>> Not really. That covers the case of applications selecting the hash >

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-14 Thread Yerden Zhumabekov
14.11.2014 6:52, Neil Horman ?: > On Thu, Nov 13, 2014 at 06:33:14PM +0100, Thomas Monjalon wrote: >> Any comment on these patches? >> >> 2014-09-03 12:05, Yerden Zhumabekov: >>> As SSE4.2 provides CRC32 instructions with either 32 and 64 bit operands, >>> new rte_hash_crc_8byte() call assisted

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-14 Thread Neil Horman
On Fri, Nov 14, 2014 at 05:57:51PM +0600, Yerden Zhumabekov wrote: > > 14.11.2014 17:33, Neil Horman ?: > > On Fri, Nov 14, 2014 at 01:15:12PM +0600, Yerden Zhumabekov wrote: > >> > >> Hello, > >> > >> A quick grep on dpdk source shows that rte_hash_crc() is used in > >> librte_hash in followi

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-14 Thread Neil Horman
On Fri, Nov 14, 2014 at 01:15:12PM +0600, Yerden Zhumabekov wrote: > 14.11.2014 6:52, Neil Horman ?: > > On Thu, Nov 13, 2014 at 06:33:14PM +0100, Thomas Monjalon wrote: > >> Any comment on these patches? > >> > >> 2014-09-03 12:05, Yerden Zhumabekov: > >>> As SSE4.2 provides CRC32 instructions

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-13 Thread Neil Horman
On Thu, Nov 13, 2014 at 06:33:14PM +0100, Thomas Monjalon wrote: > Any comment on these patches? > > 2014-09-03 12:05, Yerden Zhumabekov: > > As SSE4.2 provides CRC32 instructions with either 32 and 64 bit operands, > > new rte_hash_crc_8byte() call assisted with _mm_crc32_u64 intrinsic may be > >

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-11-13 Thread Thomas Monjalon
Any comment on these patches? 2014-09-03 12:05, Yerden Zhumabekov: > As SSE4.2 provides CRC32 instructions with either 32 and 64 bit operands, > new rte_hash_crc_8byte() call assisted with _mm_crc32_u64 intrinsic may be > useful. > > Then, rte_hash_crc() function is redesigned to take advantage o

[dpdk-dev] [PATCH 0/2] rewritten rte_hash_crc() call

2014-09-03 Thread Yerden Zhumabekov
As SSE4.2 provides CRC32 instructions with either 32 and 64 bit operands, new rte_hash_crc_8byte() call assisted with _mm_crc32_u64 intrinsic may be useful. Then, rte_hash_crc() function is redesigned to take advantage of both 32 and 64 bit operands. This improves the function's performance signif