diff --git a/src/test/java/com/aparapi/runtime/MultiplePassesMemoryConsumptionTest.java b/src/test/java/com/aparapi/runtime/MultiplePassesMemoryConsumptionTest.java
index 36d1fa67f5f68bdb4e97f3359ff543162f7be604..0cffdad1f5b2eff9b5ba6bd6770caa41047f077a 100644
--- a/src/test/java/com/aparapi/runtime/MultiplePassesMemoryConsumptionTest.java
+++ b/src/test/java/com/aparapi/runtime/MultiplePassesMemoryConsumptionTest.java
@@ -31,8 +31,10 @@ public class MultiplePassesMemoryConsumptionTest {
                 globalArray[getGlobalId()] = getGlobalId();
             }
         };
+        System.gc();
         long baseFree = Runtime.getRuntime().freeMemory();
         for (int loop = 0; loop < 100; loop++) {
+            System.gc();
             if( baseFree > Runtime.getRuntime().freeMemory())
                 baseFree = Runtime.getRuntime().freeMemory();
             kernel.execute(Range.create(512, 64), 1);
@@ -40,8 +42,11 @@ public class MultiplePassesMemoryConsumptionTest {
                 Assert.assertEquals("Wrong", i, globalArray[i]);
             }
         }
+
+        System.gc();
         long testFree = Runtime.getRuntime().freeMemory();
         for (int loop = 0; loop < 100; loop++) {
+            System.gc();
             if( testFree > Runtime.getRuntime().freeMemory())
                 testFree = Runtime.getRuntime().freeMemory();
             kernel.execute(Range.create(512, 64), 2);