diff --git a/python/dune/perftool/sumfact/accumulation.py b/python/dune/perftool/sumfact/accumulation.py
index aacae7f44a1aad17d0d92b3597a2129e9975687d..c1305cedaa61bc7cc637c882a9226f80f74deb59 100644
--- a/python/dune/perftool/sumfact/accumulation.py
+++ b/python/dune/perftool/sumfact/accumulation.py
@@ -61,8 +61,15 @@ def accum_iname(restriction, bound, i):
     return sumfact_iname(bound, "accum")
 
 
-class AlreadyAssembledInput(SumfactKernelInputBase, ImmutableRecord):
-    pass
+class AlreadyAssembledInput(SumfactKernelInputBase):
+    def __init__(self, index):
+        self.index = index
+
+    def __eq__(self, other):
+        return type(self) == type(other) and self.index == other.index
+
+    def __hash__(self):
+        return 0
 
 
 @backend(interface="accum_insn", name="sumfact")
@@ -91,8 +98,6 @@ def generate_accumulation_instruction(visitor, accterm, measure, subdomain_id):
     accum_index = None
     if visitor.indices:
         accum_index = visitor.indices[0]
-    if accterm.argument.index:
-        accum_index = accterm.argument.index[0]._value
 
     jacobian_inames = tuple()
     if accterm.is_jacobian: