[jbosscache-commits] JBoss Cache SVN: r7062 - core/branches/flat/src/test/java/org/jboss/starobrno/profiling.

jbosscache-commits at lists.jboss.org jbosscache-commits at lists.jboss.org
Mon Nov 3 12:58:47 EST 2008


Author: manik.surtani at jboss.com
Date: 2008-11-03 12:58:47 -0500 (Mon, 03 Nov 2008)
New Revision: 7062

Modified:
   core/branches/flat/src/test/java/org/jboss/starobrno/profiling/MemConsumptionTest.java
Log:


Modified: core/branches/flat/src/test/java/org/jboss/starobrno/profiling/MemConsumptionTest.java
===================================================================
--- core/branches/flat/src/test/java/org/jboss/starobrno/profiling/MemConsumptionTest.java	2008-11-03 17:28:16 UTC (rev 7061)
+++ core/branches/flat/src/test/java/org/jboss/starobrno/profiling/MemConsumptionTest.java	2008-11-03 17:58:47 UTC (rev 7062)
@@ -22,6 +22,8 @@
 package org.jboss.starobrno.profiling;
 
 import org.jboss.starobrno.Cache;
+import org.jboss.starobrno.CacheException;
+import org.jboss.starobrno.UnitTestCacheFactory;
 import org.jboss.starobrno.util.TestingUtil;
 import org.testng.annotations.Test;
 
@@ -29,37 +31,48 @@
 import java.text.NumberFormat;
 import java.util.Arrays;
 import java.util.Random;
-import java.util.concurrent.TimeUnit;
-import org.jboss.starobrno.UnitTestCacheFactory;
 
 @Test(groups = "profiling")
 public class MemConsumptionTest
 {
-   // adjust the next 3 numbers
-   static final int numEntries = 1000000;
-   static final int payloadSize = 20; // bytes
-   static final int keySize = 10; // bytes
-   static final int bytesPerChar = 2;
+   // adjust the next 4 values
+   int numEntries = 1000000;
+   int payloadSize = 20; // bytes
+   int keySize = 10; // bytes
+   PayloadType payloadType = PayloadType.STRINGS;
 
+   enum PayloadType
+   {
+      STRINGS, BYTE_ARRAYS
+   }
+
+   int bytesPerCharacter = 2;
+
    Random r = new Random();
 
    public void testMemConsumption() throws IOException
    {
-      int kBytesCached = (bytesPerChar * numEntries * (payloadSize + keySize)) / 1024;
+      int kBytesCached = (bytesPerCharacter * numEntries * (payloadSize + keySize)) / 1024;
       System.out.println("Bytes to be cached: " + NumberFormat.getIntegerInstance().format(kBytesCached) + " kb");
 
-//      Cache<byte[], byte[]> c = new DefaultCacheFactory<byte[], byte[]>().createCache(); // default LOCAL cache
-      Cache<String, String> c = new UnitTestCacheFactory<String, String>().createCache(); // default LOCAL cache
-//      Map<String, String> c = new ConcurrentHashMap<String, String>();
-      long start = System.nanoTime();
+      Cache c = new UnitTestCacheFactory().createCache(); // default LOCAL cache
       for (int i = 0; i < numEntries; i++)
       {
-//         c.put(generateUniqueKey(i, keySize), generateBytePayload(payloadSize));
-         c.put(generateUniqueString(i, keySize), generateRandomString(payloadSize));
+         switch (payloadType)
+         {
+            case STRINGS:
+               c.put(generateUniqueString(i, keySize), generateRandomString(payloadSize));
+               break;
+            case BYTE_ARRAYS:
+               c.put(generateUniqueKey(i, keySize), generateBytePayload(payloadSize));
+               break;
+            default:
+               throw new CacheException("Unknown payload type");
+         }
+
+
          if (i % 1000 == 0) System.out.println("Added " + i + " entries");
       }
-      long duration = System.nanoTime() - start;
-      System.out.println("Done, took " + TimeUnit.NANOSECONDS.toSeconds(duration) + " seconds!");
 
       System.out.println("Calling System.gc()");
       System.gc();  // clear any unnecessary objects




More information about the jbosscache-commits mailing list