[vm, gc] More aggressively consider idle compactions.

Bug: https://github.com/flutter/flutter/issues/20245
Change-Id: Ie993f4bbac6435b2305e46cfbe0e95115e8554f8
Reviewed-on: https://dart-review.googlesource.com/69060
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
diff --git a/runtime/vm/heap/pages.cc b/runtime/vm/heap/pages.cc
index 253da16..0d13154 100644
--- a/runtime/vm/heap/pages.cc
+++ b/runtime/vm/heap/pages.cc
@@ -1367,10 +1367,9 @@
   gc_threshold_in_words_ =
       after.CombinedCapacityInWords() + (kPageSizeInWords * grow_heap);
 
-  // Set the idle threshold halfway between the current capacity and the
-  // capacity at which we'd block for a GC.
+  // Set a tight idle threshold.
   idle_gc_threshold_in_words_ =
-      (after.CombinedCapacityInWords() + gc_threshold_in_words_) / 2;
+      after.CombinedCapacityInWords() + 2 * kPageSizeInWords;
 
   if (FLAG_log_growth) {
     THR_Print("%s: threshold=%" Pd "kB, idle_threshold=%" Pd "kB\n",