Roy,
Thanks for pointing out the right side of the statement. I made the
changes and they will be available in the next snapshot.
Thanks,
Brian
Roy Dragseth wrote:
On Monday 16 March 2009 23:07:14 Brian Christiansen wrote:
Roy,
Looking in MPBSI.c, it appears that nodememovercommitfactor is already
implemented to work with swap, except that in in _MPBSIGetSSSStatus the
setting of N->CRes.Swap is after the overcommitting work is done. How
does the following patch work for you?
Thanks,
Brian
--- src/moab/MPBSI.c
+++ src/moab/MPBSI.c
@@ -6263,6 +6263,11 @@
} /* END else if (!strcmp(Name,"message")) */
} /* END while (ptr != NULL) */
+ /* NOTE: PBS totmem = swap + RAM */
+
+ if (TotMem > 0)
+ N->CRes.Swap = TotMem;
+
if (MSched.NodeMemOverCommitFactor > 0.0)
{
/* NOTE: both real memory and swap overcommitted */
@@ -6276,11 +6281,6 @@
/* memory factor not applied to node load */
}
- /* NOTE: PBS totmem = swap + RAM */
-
- if (TotMem > 0)
- N->CRes.Swap = TotMem;
-
return(SUCCESS);
} /* END __MPBSIGetSSSStatus() */
This should work equally well, but then we need to change a few more lines in
the if-clause from
N->CRes.Swap = (int)(N->CRes.Mem * MSched.NodeMemOverCommitFactor);
N->ARes.Swap = (int)(N->ARes.Mem * MSched.NodeMemOverCommitFactor);
to
N->CRes.Swap = (int)(N->CRes.Swap * MSched.NodeMemOverCommitFactor);
N->ARes.Swap = (int)(N->ARes.Swap * MSched.NodeMemOverCommitFactor);
(the current code doesn't look correct anyway)
I ran a quick test with your changes and mine and it seems to be functionally
equivalent with my old proposal.
r.
_______________________________________________
mauiusers mailing list
[email protected]
http://www.supercluster.org/mailman/listinfo/mauiusers