[dpdk-dev] [PATCH v5 04/10] test/hash: change order of loops in hash function tests

Pablo de Lara pablo.de.lara.guarch at intel.com
Fri May 22 12:16:05 CEST 2015


In order to see more clearly the performance difference
between different hash functions, order of the loops
have been changed, so it iterates first through initial values,
then key sizes and then the hash functions.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch at intel.com>
---
 app/test/test_hash_functions.c |   20 ++++++++++----------
 1 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/app/test/test_hash_functions.c b/app/test/test_hash_functions.c
index 973fbe8..3b72e8f 100644
--- a/app/test/test_hash_functions.c
+++ b/app/test/test_hash_functions.c
@@ -86,8 +86,8 @@ get_hash_name(rte_hash_function f)
  * Test a hash function.
  */
 static void
-run_hash_func_perf_test(rte_hash_function f, uint32_t init_val,
-		uint32_t key_len)
+run_hash_func_perf_test(uint32_t key_len, uint32_t init_val,
+		rte_hash_function f)
 {
 	static uint8_t key[HASHTEST_ITERATIONS][RTE_HASH_KEY_LENGTH_MAX];
 	uint64_t ticks, start, end;
@@ -122,17 +122,17 @@ run_hash_func_perf_tests(void)
 	printf("Hash Func.  , Key Length (bytes), Initial value, Ticks/Op.\n");
 
 	for (i = 0;
-	     i < sizeof(hashtest_funcs) / sizeof(rte_hash_function);
+	     i < sizeof(hashtest_initvals) / sizeof(uint32_t);
 	     i++) {
 		for (j = 0;
-		     j < sizeof(hashtest_initvals) / sizeof(uint32_t);
-		     j++) {
+		     j < sizeof(hashtest_key_lens) / sizeof(uint32_t);
+	             j++) {
 			for (k = 0;
-			     k < sizeof(hashtest_key_lens) / sizeof(uint32_t);
-			     k++) {
-				run_hash_func_perf_test(hashtest_funcs[i],
-						hashtest_initvals[j],
-						hashtest_key_lens[k]);
+		             k < sizeof(hashtest_funcs) / sizeof(rte_hash_function);
+		             k++) {
+				run_hash_func_perf_test(hashtest_key_lens[j],
+						hashtest_initvals[i],
+						hashtest_funcs[k]);
 			}
 		}
 	}
-- 
1.7.4.1



More information about the dev mailing list