diff --git a/openquake/risk/classical_psha_based.py b/openquake/risk/classical_psha_based.py
index <HASH>..<HASH> 100644
--- a/openquake/risk/classical_psha_based.py
+++ b/openquake/risk/classical_psha_based.py
@@ -29,7 +29,7 @@ from numpy import subtract, mean
 
 from openquake import shapes
 from openquake.risk.common import loop, collect
-from openquake.utils.general import Memoize
+from openquake.utils.general import MemoizeMutable
 
 STEPS_PER_INTERVAL = 5
 
@@ -97,7 +97,7 @@ def _generate_loss_ratios(vuln_function):
     return _split_loss_ratios(loss_ratios)
 
 
-@Memoize
+@MemoizeMutable
 def _compute_lrem(vuln_function, distribution=None):
     """Compute the LREM (Loss Ratio Exceedance Matrix).
after testing a bit, it's better to maintain MemoizeMutable, it's faster


Former-commit-id: ec<I>ecfe7f0c3e<I>dbfa<I>ae<I>b<I>