diff --git a/platform/util/src/com/intellij/util/ref/GCUtil.java b/platform/util/src/com/intellij/util/ref/GCUtil.java
index dd502cc0cab575da59d8a2dcf0d5202a4c404138..ceea540dec9926523824b0661c7d39e1789e3d02 100644
--- a/platform/util/src/com/intellij/util/ref/GCUtil.java
+++ b/platform/util/src/com/intellij/util/ref/GCUtil.java
@@ -60,7 +60,7 @@ public class GCUtil {
       }
 
       // full gc is caused by allocation of large enough array below, SoftReference will be cleared after two full gc
-      int bytes = Math.min((int)(freeMemory * 0.1), Integer.MAX_VALUE / 2);
+      int bytes = Math.min((int)(freeMemory * 0.05), Integer.MAX_VALUE / 2);
       list.add(new SoftReference<Object>(new byte[bytes]));
     }