[haizea-commit] r504 - in trunk/src/haizea: resourcemanager traces

haizea-commit at mailman.cs.uchicago.edu haizea-commit at mailman.cs.uchicago.edu
Fri Sep 19 11:39:13 CDT 2008


Author: borja
Date: 2008-09-19 11:39:12 -0500 (Fri, 19 Sep 2008)
New Revision: 504

Modified:
   trunk/src/haizea/resourcemanager/resourcepool.py
   trunk/src/haizea/resourcemanager/rm.py
   trunk/src/haizea/traces/readers.py
Log:
Miscellaneous pending fixes

Modified: trunk/src/haizea/resourcemanager/resourcepool.py
===================================================================
--- trunk/src/haizea/resourcemanager/resourcepool.py	2008-09-19 16:38:50 UTC (rev 503)
+++ trunk/src/haizea/resourcemanager/resourcepool.py	2008-09-19 16:39:12 UTC (rev 504)
@@ -263,8 +263,8 @@
         return "(RAM L%iv%i %s)" % (self.lease_id, self.vnode, self.filename)
     
 class ResourcePoolWithReusableImages(ResourcePool):
-    def __init__(self, scheduler):
-        ResourcePool.__init__(self, scheduler)
+    def __init__(self, info_enact, vm_enact, deploy_enact):
+        ResourcePool.__init__(self, info_enact, vm_enact, deploy_enact)
         
         self.nodes = [NodeWithReusableImages.from_node(n) for n in self.nodes]
     

Modified: trunk/src/haizea/resourcemanager/rm.py
===================================================================
--- trunk/src/haizea/resourcemanager/rm.py	2008-09-19 16:38:50 UTC (rev 503)
+++ trunk/src/haizea/resourcemanager/rm.py	2008-09-19 16:39:12 UTC (rev 504)
@@ -83,7 +83,6 @@
         # Create the RM components
         
         mode = config.get("mode")
-        clock = config.get("clock")
         
         self.daemon = daemon
         self.pidfile = pidfile
@@ -107,13 +106,14 @@
         self.daemon = False
         
         self.init_logging()
-
+        clock = self.config.get("clock")
+        
         # The clock
-        if self.clock == constants.CLOCK_SIMULATED:
+        if clock == constants.CLOCK_SIMULATED:
             starttime = self.config.get("starttime")
             self.clock = SimulatedClock(self, starttime)
             self.rpc_server = None
-        elif self.clock == constants.CLOCK_REAL:
+        elif clock == constants.CLOCK_REAL:
             wakeup_interval = self.config.get("wakeup-interval")
             non_sched = self.config.get("non-schedulable-interval")
             self.clock = RealClock(self, wakeup_interval, non_sched)
@@ -125,8 +125,12 @@
         deploy_enact = SimulatedDeploymentEnactment()
                 
         # Resource pool
-        if self.config.get("diskimage-reuse") == constants.REUSE_IMAGECACHES:
-            resourcepool = ResourcePoolWithReusableImages(info_enact, vm_enact, deploy_enact)
+        deploy_type = self.config.get("lease-preparation")
+        if deploy_type == constants.DEPLOYMENT_TRANSFER:
+            if self.config.get("diskimage-reuse") == constants.REUSE_IMAGECACHES:
+                resourcepool = ResourcePoolWithReusableImages(info_enact, vm_enact, deploy_enact)
+            else:
+                resourcepool = ResourcePool(info_enact, vm_enact, deploy_enact)
         else:
             resourcepool = ResourcePool(info_enact, vm_enact, deploy_enact)
     
@@ -134,14 +138,14 @@
         slottable = SlotTable()
         
         # Deployment scheduler
-        deploy_type = self.config.get("lease-preparation")
+        
         if deploy_type == constants.DEPLOYMENT_UNMANAGED:
             deployment_scheduler = UnmanagedDeploymentScheduler(slottable, resourcepool, deploy_enact)
         elif deploy_type == constants.DEPLOYMENT_TRANSFER:
             deployment_scheduler = ImageTransferDeploymentScheduler(slottable, resourcepool, deploy_enact)    
     
         # Scheduler
-        self.scheduler = Scheduler(self, slottable, resourcepool, deployment_scheduler)
+        self.scheduler = Scheduler(slottable, resourcepool, deployment_scheduler)
         
         # TODO: Having the slot table contained in the deployment scheduler, and also
         # in the "main" scheduler (which itself contains the same slot table) is far
@@ -150,10 +154,10 @@
         # class comments for more details)
         
         # Lease request frontends
-        if self.clock == constants.CLOCK_SIMULATED:
+        if clock == constants.CLOCK_SIMULATED:
             # In pure simulation, we can only use the tracefile frontend
             self.frontends = [TracefileFrontend(self, self.clock.get_start_time())]
-        elif self.clock == constants.CLOCK_REAL:
+        elif clock == constants.CLOCK_REAL:
             # In simulation with a real clock, only the RPC frontend can be used
             self.frontends = [RPCFrontend(self)] 
         
@@ -790,7 +794,7 @@
 if __name__ == "__main__":
     from haizea.resourcemanager.configfile import HaizeaConfig
     from haizea.common.config import ConfigException
-    CONFIGFILE = "../../../etc/suspendresume.conf"
+    CONFIGFILE = "../../../etc/sample_trace.conf"
     try:
         CONFIG = HaizeaConfig.from_file(CONFIGFILE)
     except ConfigException, msg:

Modified: trunk/src/haizea/traces/readers.py
===================================================================
--- trunk/src/haizea/traces/readers.py	2008-09-19 16:38:50 UTC (rev 503)
+++ trunk/src/haizea/traces/readers.py	2008-09-19 16:39:12 UTC (rev 504)
@@ -17,7 +17,7 @@
 # -------------------------------------------------------------------------- #
 
 from mx.DateTime import TimeDelta
-from haizea.resourcemanager.datastruct import ARLease, BestEffortLease, ResourceTuple
+from haizea.resourcemanager.datastruct import Lease, ARLease, BestEffortLease, ResourceTuple
 import haizea.common.constants as constants
 import haizea.traces.formats as formats
 
@@ -58,7 +58,7 @@
                     realdur = maxdur
                 preemptible = True
                 req = BestEffortLease(tSubmit, maxdur, vmimage, vmimagesize, numnodes, resreq, preemptible, realdur)
-                req.state = constants.LEASE_STATE_PENDING
+                req.state = Lease.STATE_NEW
                 requests.append(req)
     return requests
 
@@ -101,6 +101,6 @@
         else:
             preemptible = False
             req = ARLease(tSubmit, tStart, duration, vmimage, vmimagesize, numnodes, resreq, preemptible, realduration)
-        req.state = constants.LEASE_STATE_PENDING
+        req.state = Lease.STATE_NEW
         requests.append(req)
     return requests



More information about the Haizea-commit mailing list