|
GridSim 5.0 beta | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Object Thread Sim_entity AllocPolicy ConservativeBackfill ARConservativeBackfill
public class ARConservativeBackfill
ARConservativeBackfill
class is an allocation policy for
ParallelResource
that implements conservative backfilling and
supports advance reservations. The policy is based on the conservative
backfilling algorithm described in the following papers:
ConservativeBackfill
this scheduler maintains
an availability profile. But the difference is that in many cases
an advance reservation will require two entries in the profile,
one to mark its start time and another to delimit its finish time.
In addition, when a job is cancelled, the advance reservations are not
removed from the availability profile and therefore are not moved
forwards in the scheduling queue. In other words, there is no compression
of the scheduling queue.
NOTE THAT:
WorkloadLublin99
.
ResourceCharacteristics
,
ReservationPolicy
,
SingleProfile
,
ConservativeBackfill
Nested Class Summary |
---|
Nested classes/interfaces inherited from class Thread |
---|
Thread.State, Thread.UncaughtExceptionHandler |
Field Summary |
---|
Fields inherited from class ConservativeBackfill |
---|
dynamics, jobOrder, profile, ratingPE, runningJobs, UPT_SCHEDULE, waitingJobs |
Fields inherited from class AllocPolicy |
---|
initTime_, myId_, outputPort_, resCalendar_, resId_, resName_, resource_, totalPE_ |
Fields inherited from class Thread |
---|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
Constructor Summary | |
---|---|
ARConservativeBackfill(String resourceName,
String entityName)
Allocates a new ARConservativeBackfill object. |
|
ARConservativeBackfill(String resourceName,
String entityName,
int commitPeriod)
Allocates a new ARConservativeBackfill object. |
Method Summary | |
---|---|
void |
body()
Handles internal events that come to this entity. |
boolean |
cancelReservation(ReservationMessage message)
This method handles a cancel reservation request. |
boolean |
commitReservation(ReservationMessage message)
Handles a commit reservation request. |
ReservationMessage |
createReservation(ReservationMessage message)
Handles an advance reservation request. |
void |
gridletSubmit(Gridlet gridlet,
boolean ack)
Schedules a new job received by the Grid resource entity. |
boolean |
modifyReservation(ReservationMessage message)
A method that handles a request to modify a reservation. |
void |
processOtherEvent(Sim_event ev)
Process and event sent to this entity |
ReservationMessage |
queryAvailability(ReservationMessage message)
Handles a query free time request. |
ReservationMessage |
queryReservation(ReservationMessage message)
Handles a query reservation request. |
protected void |
updateSchedule()
This method is called to update the schedule. |
Methods inherited from class AllocPolicy |
---|
addTotalLoad, calculateTotalLoad, findGridlet, getTotalLoad, gridletMigrate, init, isEndSimulation, sendAck, sendCancelGridlet, sendFinishGridlet, sendInternalEvent, sendInternalEvent, setEndSimulation |
Methods inherited from class Thread |
---|
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield |
Methods inherited from class Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public ARConservativeBackfill(String resourceName, String entityName) throws Exception
ARConservativeBackfill
object.
resourceName
- the grid resource entity name that will contain
this allocation policyentityName
- this object entity name
Exception
- This happens when one of the following scenarios occur:
null
or empty
public ARConservativeBackfill(String resourceName, String entityName, int commitPeriod) throws Exception
ARConservativeBackfill
object.
resourceName
- the grid resource entity name that will contain
this allocation policyentityName
- this object entity namecommitPeriod
- a default commit period time for a user to commit
a reservation (unit is in second). NOTE: once it is set, you cannot
change the time again.
Exception
- This happens when one of the following scenarios occur:
null
or empty
Method Detail |
---|
public void body()
ConservativeBackfill
body
in class ConservativeBackfill
public void processOtherEvent(Sim_event ev)
processOtherEvent
in class AllocPolicy
ev
- the event to be handledpublic ReservationMessage createReservation(ReservationMessage message)
createReservation
in interface ReservationPolicy
message
- the advance reservation message received
true
if the reservation was accepted;
false
otherwise.public boolean cancelReservation(ReservationMessage message)
cancelReservation
in interface ReservationPolicy
message
- the advance reservation message received requesting
the cancellation
true
if the reservation was cancelled;
false
otherwise.public ReservationMessage queryAvailability(ReservationMessage message)
queryAvailability
in interface ReservationPolicy
message
- the advance reservation message received.
public ReservationMessage queryReservation(ReservationMessage message)
queryReservation
in interface ReservationPolicy
message
- the advance reservation message received.
public boolean commitReservation(ReservationMessage message)
commitReservation
in interface ReservationPolicy
message
- the advance reservation message received
true
if the reservation was committed;
false
otherwise.public boolean modifyReservation(ReservationMessage message)
modifyReservation
in interface ReservationPolicy
message
- the advance reservation message received
true
if the reservation was modified;
false
otherwise.public void gridletSubmit(Gridlet gridlet, boolean ack)
gridletSubmit
in class ConservativeBackfill
gridlet
- a job object to be executedack
- user wants to know whether this operation is successful
or not, false
otherwise.ResGridlet
,
ResGridletList
protected void updateSchedule()
updateSchedule
in class ConservativeBackfill
|
GridSim 5.0 beta | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |