diff --git a/python/dune/codegen/sumfact/autotune.py b/python/dune/codegen/sumfact/autotune.py
index 566e15de5c20733abbb25e70da775f30f8432b1e..c2ffd350000beeab9467d5f62cb6a6f5c5205a89 100644
--- a/python/dune/codegen/sumfact/autotune.py
+++ b/python/dune/codegen/sumfact/autotune.py
@@ -13,6 +13,7 @@ import os
 import re
 import subprocess
 import filelock
+import hashlib
 
 
 def get_cmake_cache_entry(entry):
@@ -193,6 +194,7 @@ def autotune_realization(sf):
 
     basename = "autotune_sumfact_{}".format(sf.function_name)
     name = os.path.join(dir, "autotune_sumfact_{}".format(sf.function_name))
+    name = hashlib.sha256(name.encode()).hexdigest()
     filename = os.path.join(dir, "{}.cc".format(basename))
     logname = os.path.join(dir, "{}.log".format(basename))
     lock = "{}.lock".format(name)