diff --git a/python/dune/perftool/pdelab/driver/gridoperator.py b/python/dune/perftool/pdelab/driver/gridoperator.py
index 500d8bc71254018d5e2315073e2eed3c212f74be..9b8880ad9e162f32bfbd56edc264728e06bd6321 100644
--- a/python/dune/perftool/pdelab/driver/gridoperator.py
+++ b/python/dune/perftool/pdelab/driver/gridoperator.py
@@ -120,7 +120,8 @@ def define_dofestimate(name):
     gfs = name_trial_gfs()
     ini = name_initree()
 
-    return ["int generic_dof_estimate =  {} * {}.maxLocalSize();".format(geo_factor, gfs),
+    return ["{}.update();".format(gfs),
+            "int generic_dof_estimate =  {} * {}.maxLocalSize();".format(geo_factor, gfs),
             "int {} = {}.get<int>(\"istl.number_of_nnz\", generic_dof_estimate);".format(name, ini)]
 
 
diff --git a/python/dune/perftool/pdelab/driver/timings.py b/python/dune/perftool/pdelab/driver/timings.py
index 67576153fda54668d2331871c4827e25356d4079..a2d01fd3df783519fa6abd717b6befdde344c040 100644
--- a/python/dune/perftool/pdelab/driver/timings.py
+++ b/python/dune/perftool/pdelab/driver/timings.py
@@ -3,14 +3,27 @@
 from dune.perftool.options import get_option, set_option
 from dune.perftool.generation import (cached,
                                       include_file,
+                                      pre_include,
                                       post_include,
                                       preamble,
                                       )
+from dune.perftool.pdelab.driver import (get_formdata,
+                                         name_initree,
+                                         name_mpihelper,
+                                         )
+from dune.perftool.pdelab.driver.gridfunctionspace import (name_trial_gfs,
+                                                           )
+from dune.perftool.pdelab.driver.gridoperator import (name_gridoperator,
+                                                      name_localoperator,
+                                                      type_gridoperator,
+                                                      )
+from dune.perftool.pdelab.driver.solve import (name_vector,
+                                               type_vector,
+                                               )
 
 
 @preamble
 def define_timing_identifier(name):
-    from dune.perftool.pdelab.driver import name_initree
     ini = name_initree()
     return "auto {} = {}.get<std::string>(\"identifier\", std::string(argv[0]));".format(name, ini)
 
@@ -24,15 +37,12 @@ def name_timing_identifier():
 @preamble
 def dump_dof_numbers(stream):
     ident = name_timing_identifier()
-    from dune.perftool.pdelab.driver import get_trial_element, name_gfs
     return "{} << {} << \" dofs dofs \" << {}.size() << std::endl;".format(stream,
                                                                            ident,
-                                                                           name_gfs(get_trial_element()))
+                                                                           name_trial_gfs())
 
 @preamble
 def define_timing_stream(name):
-    from dune.perftool.pdelab.driver import name_mpihelper
-
     include_file('fstream', filetag='driver', system=True)
     include_file('sstream', filetag='driver', system=True)
     include_file('sys/types.h', filetag='driver', system=True)
@@ -54,9 +64,6 @@ def name_timing_stream():
 
 @cached
 def setup_timer():
-    # Necessary includes and defines
-    from dune.perftool.generation import pre_include
-
     # TODO check that we are using YASP?
     if get_option('opcounter'):
         pre_include("#define ENABLE_COUNTER", filetag="driver")
@@ -66,13 +73,6 @@ def setup_timer():
 
 @preamble
 def evaluate_residual_timer():
-    from dune.perftool.pdelab.driver import (get_formdata,
-                                             name_gridoperator,
-                                             name_localoperator,
-                                             name_vector,
-                                             type_vector,
-                                             )
-
     formdata = get_formdata()
     n_go = name_gridoperator(formdata)
     v = name_vector(formdata)
@@ -112,13 +112,6 @@ def apply_jacobian_timer():
     # Set the matrix_free option to True!
     set_option("matrix_free", True)
 
-    from dune.perftool.pdelab.driver import (get_formdata,
-                                             name_gridoperator,
-                                             name_localoperator,
-                                             name_vector,
-                                             type_vector,
-                                             )
-
     formdata = get_formdata()
     n_go = name_gridoperator(formdata)
     v = name_vector(formdata)
@@ -155,13 +148,6 @@ def apply_jacobian_timer():
 
 @preamble
 def assemble_matrix_timer():
-    from dune.perftool.pdelab.driver import (get_formdata,
-                                             name_gridoperator,
-                                             name_localoperator,
-                                             name_vector,
-                                             type_vector,
-                                             )
-
     formdata = get_formdata()
     t_go = type_gridoperator(formdata)
     n_go = name_gridoperator(formdata)
diff --git a/test/poisson/opcount_poisson_dg.ufl b/test/poisson/opcount_poisson_dg.ufl
index d731f77c3a9c180a630af3a161e0deaa896bacf5..1748e05796f0a0c82073c5b7fb24db9631891c71 100644
--- a/test/poisson/opcount_poisson_dg.ufl
+++ b/test/poisson/opcount_poisson_dg.ufl
@@ -1,6 +1,7 @@
 degree = 1
 cell = "quadrilateral"
 
+dim = 2
 x = SpatialCoordinate(cell)
 
 f = -4.