[haizea-commit] r497 - in trunk/src/haizea/resourcemanager: . frontends
haizea-commit at mailman.cs.uchicago.edu
haizea-commit at mailman.cs.uchicago.edu
Mon Sep 15 11:53:14 CDT 2008
Author: borja
Date: 2008-09-15 11:53:14 -0500 (Mon, 15 Sep 2008)
New Revision: 497
Removed:
trunk/src/haizea/resourcemanager/frontends/base.py
Modified:
trunk/src/haizea/resourcemanager/frontends/__init__.py
trunk/src/haizea/resourcemanager/frontends/rpc.py
trunk/src/haizea/resourcemanager/frontends/tracefile.py
trunk/src/haizea/resourcemanager/resourcepool.py
trunk/src/haizea/resourcemanager/scheduler.py
Log:
Misc. code cleaning
Modified: trunk/src/haizea/resourcemanager/frontends/__init__.py
===================================================================
--- trunk/src/haizea/resourcemanager/frontends/__init__.py 2008-09-15 16:52:21 UTC (rev 496)
+++ trunk/src/haizea/resourcemanager/frontends/__init__.py 2008-09-15 16:53:14 UTC (rev 497)
@@ -16,3 +16,12 @@
# limitations under the License. #
# -------------------------------------------------------------------------- #
+from haizea.common.utils import abstract
+
+class RequestFrontend(object):
+ def __init__(self, rm):
+ self.rm = rm
+
+ def get_accumulated_requests(self): abstract()
+
+ def exists_more_requests(self): abstract()
\ No newline at end of file
Deleted: trunk/src/haizea/resourcemanager/frontends/base.py
===================================================================
--- trunk/src/haizea/resourcemanager/frontends/base.py 2008-09-15 16:52:21 UTC (rev 496)
+++ trunk/src/haizea/resourcemanager/frontends/base.py 2008-09-15 16:53:14 UTC (rev 497)
@@ -1,27 +0,0 @@
-# -------------------------------------------------------------------------- #
-# Copyright 2006-2008, University of Chicago #
-# Copyright 2008, Distributed Systems Architecture Group, Universidad #
-# Complutense de Madrid (dsa-research.org) #
-# #
-# Licensed under the Apache License, Version 2.0 (the "License"); you may #
-# not use this file except in compliance with the License. You may obtain #
-# a copy of the License at #
-# #
-# http://www.apache.org/licenses/LICENSE-2.0 #
-# #
-# Unless required by applicable law or agreed to in writing, software #
-# distributed under the License is distributed on an "AS IS" BASIS, #
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
-# See the License for the specific language governing permissions and #
-# limitations under the License. #
-# -------------------------------------------------------------------------- #
-
-from haizea.common.utils import abstract
-
-class RequestFrontend(object):
- def __init__(self, rm):
- self.rm = rm
-
- def getAccumulatedRequests(self): abstract()
-
- def existsMoreRequests(self): abstract()
\ No newline at end of file
Modified: trunk/src/haizea/resourcemanager/frontends/rpc.py
===================================================================
--- trunk/src/haizea/resourcemanager/frontends/rpc.py 2008-09-15 16:52:21 UTC (rev 496)
+++ trunk/src/haizea/resourcemanager/frontends/rpc.py 2008-09-15 16:53:14 UTC (rev 497)
@@ -17,16 +17,16 @@
# -------------------------------------------------------------------------- #
import haizea.common.constants as constants
from haizea.resourcemanager.datastruct import ARLease, BestEffortLease, ImmediateLease, ResourceTuple
-from haizea.resourcemanager.frontends.base import RequestFrontend
+from haizea.resourcemanager.frontends import RequestFrontend
from haizea.common.utils import round_datetime
from mx.DateTime import DateTimeDelta, TimeDelta, ISO
import logging
-HAIZEA_START_NOW = "now"
-HAIZEA_START_BESTEFFORT = "best_effort"
-HAIZEA_DURATION_UNLIMITED = "unlimited"
+class RPCFrontend(RequestFrontend):
+ HAIZEA_START_NOW = "now"
+ HAIZEA_START_BESTEFFORT = "best_effort"
+ HAIZEA_DURATION_UNLIMITED = "unlimited"
-class RPCFrontend(RequestFrontend):
def __init__(self, rm):
self.rm = rm
self.logger = logging.getLogger("RPCREQ")
@@ -34,12 +34,12 @@
config = self.rm.config
self.rm.rpc_server.register_rpc(self.create_lease)
- def getAccumulatedRequests(self):
+ def get_accumulated_requests(self):
acc = self.accumulated
self.accumulated = []
return acc
- def existsMoreRequests(self):
+ def exists_more_requests(self):
return True
def create_lease(self, start, duration, preemptible, numnodes, cpu, mem, vmimage, vmimagesize):
Modified: trunk/src/haizea/resourcemanager/frontends/tracefile.py
===================================================================
--- trunk/src/haizea/resourcemanager/frontends/tracefile.py 2008-09-15 16:52:21 UTC (rev 496)
+++ trunk/src/haizea/resourcemanager/frontends/tracefile.py 2008-09-15 16:53:14 UTC (rev 497)
@@ -17,7 +17,7 @@
# -------------------------------------------------------------------------- #
import haizea.common.constants as constants
-from haizea.resourcemanager.frontends.base import RequestFrontend
+from haizea.resourcemanager.frontends import RequestFrontend
import haizea.traces.readers as tracereaders
from haizea.resourcemanager.datastruct import ARLease, BestEffortLease
import operator
@@ -73,7 +73,7 @@
self.logger.info("Loaded workload with %i requests (%i best-effort + %i AR)" % (num_besteffort+num_ar, num_besteffort, num_ar))
- def getAccumulatedRequests(self):
+ def get_accumulated_requests(self):
# When reading from a trace file, there are no
# "accumulated requests". Rather, we just take whatever
# requests are in the trace up to the current time
@@ -83,11 +83,11 @@
self.requests = [r for r in self.requests if r.submit_time > time]
return nowreq
- def existsPendingReq(self):
+ def exists_more_requests(self):
return len(self.requests) != 0
- def getNextReqTime(self):
- if self.existsPendingReq():
+ def get_next_request_time(self):
+ if self.exists_more_requests():
return self.requests[0].submit_time
else:
return None
\ No newline at end of file
Modified: trunk/src/haizea/resourcemanager/resourcepool.py
===================================================================
--- trunk/src/haizea/resourcemanager/resourcepool.py 2008-09-15 16:52:21 UTC (rev 496)
+++ trunk/src/haizea/resourcemanager/resourcepool.py 2008-09-15 16:53:14 UTC (rev 497)
@@ -94,12 +94,6 @@
verify_suspend_action.from_rr(rr)
self.vm.verify_suspend(verify_suspend_action)
- # TODO
- # The following should be implemented to handle asynchronous
- # notifications of a suspend completing.
- #def suspendDone(self, lease, rr):
- # pass
-
def resume_vms(self, lease, rr):
# Remove memory image files
for vnode in rr.vnodes:
@@ -119,18 +113,6 @@
verify_resume_action = actions.VMEnactmentConfirmResumeAction()
verify_resume_action.from_rr(rr)
self.vm.verify_resume(verify_resume_action)
-
- # TODO
- # The following should be implemented to handle asynchronous
- # notifications of a resume completing.
- #def resumeDone(self, lease, rr):
- # pass
-
- # TODO
- # The following should be implemented to handle asynchronous
- # notifications of a VM ending
- #def notify_vm_done(self, lease, rr):
- # pass
def get_nodes(self):
return self.nodes
Modified: trunk/src/haizea/resourcemanager/scheduler.py
===================================================================
--- trunk/src/haizea/resourcemanager/scheduler.py 2008-09-15 16:52:21 UTC (rev 496)
+++ trunk/src/haizea/resourcemanager/scheduler.py 2008-09-15 16:53:14 UTC (rev 497)
@@ -32,7 +32,7 @@
import haizea.resourcemanager.datastruct as ds
import haizea.common.constants as constants
-from haizea.common.utils import round_datetime_delta, estimate_transfer_time
+from haizea.common.utils import round_datetime_delta, round_datetime, estimate_transfer_time
from haizea.resourcemanager.slottable import SlotTable, SlotFittingException
from haizea.resourcemanager.deployment.unmanaged import UnmanagedDeployment
from haizea.resourcemanager.deployment.predeployed import PredeployedImagesDeployment
@@ -604,7 +604,7 @@
changepoints[-1][1] = nodes[:]
else:
if not canmigrate:
- vmrr, susprr = lease.get_last_vmrr()
+ vmrr = lease.get_last_vmrr()
curnodes = set(vmrr.nodes.values())
else:
curnodes=None
@@ -1322,7 +1322,7 @@
self.logger.debug("LEASE-%i Start of handleEndVM" % l.id)
self.logger.vdebug("LEASE-%i Before:" % l.id)
l.print_contents()
- now_time = self.rm.clock.get_time()
+ now_time = round_datetime(self.rm.clock.get_time())
diff = now_time - rr.start
l.duration.accumulate_duration(diff)
rr.state = ResourceReservation.STATE_DONE
More information about the Haizea-commit
mailing list