diff --git a/applications/poisson_dg/poisson_dg.mini b/applications/poisson_dg/poisson_dg.mini
index 52e85877844f850698903ea873908896577bbfd7..2be3336603f196d47503bf770b71cbfadb713780 100644
--- a/applications/poisson_dg/poisson_dg.mini
+++ b/applications/poisson_dg/poisson_dg.mini
@@ -3,8 +3,22 @@ __exec_suffix = deg{formcompiler.ufl_variants.degree}_{opcount_suffix}
 
 opcount_suffix = opcount, nonopcount | expand opcount
 
+# Calculate the size of the grid to equlibritate it to 100 MB/rank
+# Input parameters
+mbperrank = 1
+ranks = 16
+floatingbytes = 8
+
+# Metaini Calculations
+totalmem = {mbperrank} * 1048576 * {ranks} | eval
+dofsperdir = {formcompiler.ufl_variants.degree} + 1 | eval
+celldofs = {dofsperdir} * {dofsperdir} * {dofsperdir} | eval
+totalcells = {totalmem} / ({floatingbytes} * {celldofs}) | eval
+cellsperdir = {totalcells} ** (1/3) | eval | toint
+
+# Setup the grid!
 extension = 1.0 1.0 1.0
-cells = 16 16 16
+cells = {cellsperdir} {cellsperdir} {cellsperdir}
 
 [wrapper.vtkcompare]
 name = {__name}