From: Peizhao Ou <peizhaoo@uci.edu>
Date: Fri, 26 Jan 2018 19:01:36 +0000 (-0800)
Subject: Fixes RigtorpMPMC test case
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=29aa9f7df2b1f676105b0f560909d8bd6372b143;p=libcds.git

Fixes RigtorpMPMC test case
---

diff --git a/test/stress/sequential/sequential-misc/common.h b/test/stress/sequential/sequential-misc/common.h
index e297f166..b6a3a505 100644
--- a/test/stress/sequential/sequential-misc/common.h
+++ b/test/stress/sequential/sequential-misc/common.h
@@ -7,6 +7,11 @@ typedef unsigned long long ullong;
 
 #define GetConfig(field) s_n##field = cfg.get_size_t(#field, s_n##field)
 
+#define GetConfigExpected(field, expected)                                     \
+  s_n##field = cfg.get_size_t(#field, s_n##field);                             \
+  if (s_n##field < (expected)) {                                               \
+    s_n##field = expected;                                                     \
+  }
 
 #ifdef PERFORMANCE
 #define DEBUG(stmt)
diff --git a/test/stress/sequential/sequential-misc/rigtorp_mpmc_driver.cpp b/test/stress/sequential/sequential-misc/rigtorp_mpmc_driver.cpp
index 743a64aa..1038fde8 100644
--- a/test/stress/sequential/sequential-misc/rigtorp_mpmc_driver.cpp
+++ b/test/stress/sequential/sequential-misc/rigtorp_mpmc_driver.cpp
@@ -15,10 +15,13 @@ protected:
   static size_t s_nRigtorpMPMCQueueCapacity;
 
   static void SetUpTestCase() {
-    cds_test::config const &cfg = get_config("Misc");
-    GetConfig(RigtorpMPMCQueuePassCount);
-    GetConfig(RigtorpMPMCQueueEnqueueStride);
-    GetConfig(RigtorpMPMCQueueCapacity);
+    cds_test::config const &cfg = get_config("SequentialMisc");
+    GetConfigExpected(RigtorpMPMCQueuePassCount, 10000);
+    GetConfigExpected(RigtorpMPMCQueueEnqueueStride, 1024);
+    GetConfigExpected(RigtorpMPMCQueueCapacity, 2048);
+    if (s_nRigtorpMPMCQueueCapacity <= s_nRigtorpMPMCQueueEnqueueStride) {
+      s_nRigtorpMPMCQueueCapacity = 2 * s_nRigtorpMPMCQueueEnqueueStride;
+    }
   }
 
   void test() {
@@ -27,8 +30,8 @@ protected:
     size_t pop_sum = 0;
 
     while (nNo < s_nRigtorpMPMCQueuePassCount) {
-      size_t curr_push_count =
-          std::min(s_nRigtorpMPMCQueuePassCount - nNo, s_nRigtorpMPMCQueueEnqueueStride);
+      size_t curr_push_count = std::min(s_nRigtorpMPMCQueuePassCount - nNo,
+                                        s_nRigtorpMPMCQueueEnqueueStride);
       for (size_t i = 0; i < curr_push_count; i++) {
         q.push(nNo);
         ++nNo;