From 176f45d6e73d542947fe92e085e79e83c6d5ef3e Mon Sep 17 00:00:00 2001
From: Cort Posnansky <cort.posnansky@ligo.org>
Date: Tue, 18 Jun 2024 17:40:50 +0000
Subject: [PATCH] Change dynamic memory requests to fixed small/large requests

---
 gstlal/python/dags/layers/__init__.py | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/gstlal/python/dags/layers/__init__.py b/gstlal/python/dags/layers/__init__.py
index a2cfdccb56..f780fb8995 100644
--- a/gstlal/python/dags/layers/__init__.py
+++ b/gstlal/python/dags/layers/__init__.py
@@ -50,7 +50,7 @@ class Layer:
 		Whether to leverage Condor file transfer for moving around
 		files. On by default.
 	dynamic_memory
-		Whether to dynamically increase memory request if jobs are
+		Whether to automatically increase memory request if jobs are
 		put on hold due to going over memory requested.
 		Off by default.
 	requirements
@@ -128,11 +128,10 @@ class Layer:
 		# set dynamic memory opts if requested
 		if self.dynamic_memory:
 			base_memory = submit_options["request_memory"]
-			submit_options["+MemoryUsage"] = f"( {base_memory} ) * 2 / 3"
-			submit_options["request_memory"] = "( MemoryUsage ) * 3 / 2"
+			submit_options["request_memory"] = f"ifThenElse((isUndefined(MemoryUsage) || (MemoryUsage<{int(0.8*base_memory)})), {base_memory}, {2*base_memory})"
 			submit_options["periodic_release"] = " || ".join([
 				submit_options["periodic_release"],
-				"((CurrentTime - EnteredCurrentStatus > 180) && (HoldReasonCode != 34))"
+				"((HoldReasonCode==34) && (RequestMemory>MemoryProvisioned) && (time()-EnteredCurrentStatus>120))"
 			])
 
 		return {
-- 
GitLab