diff --git a/src/settings.js b/src/settings.js
index 0632832e7558d..35ff967e0a7d1 100644
--- a/src/settings.js
+++ b/src/settings.js
@@ -129,7 +129,7 @@ var STACK_SIZE = 64*1024;
 // the extra security checks it does (such as noticing metadata corruption in
 // its internal data structures, which emmalloc does not do).
 // [link]
-var MALLOC = "dlmalloc";
+var MALLOC = "mimalloc";
 
 // If 1, then when malloc would fail we abort(). This is nonstandard behavior,
 // but makes sense for the web since we have a fixed amount of memory that
@@ -164,7 +164,7 @@ var ABORTING_MALLOC = true;
 // for imported memories (e.g. when dynamic linking is used).
 //
 // [link]
-var INITIAL_HEAP = 16777216;
+var INITIAL_HEAP = 128 << 20;
 
 // The initial amount of memory to use. Using more memory than this will
 // cause us to expand the heap, which can be costly with typed arrays:
diff --git a/test/common.py b/test/common.py
index a6b37f77f07ea..82a824a2fe966 100644
--- a/test/common.py
+++ b/test/common.py
@@ -1236,7 +1236,7 @@ def setUp(self):
       if node_version[0] < feature_matrix.min_browser_versions[feature_matrix.Feature.JS_BIGINT_INTEGRATION]['node'] / 10000:
         self.emcc_args.append('-sWASM_BIGINT=0')
 
-    self.v8_args = ['--wasm-staging']
+    self.v8_args = ['--wasm-staging', '--enable-os-system']
     self.env = {}
     self.temp_files_before_run = []
     self.required_engine = None