J - The type of SimJobs supported.Q - The type of SimQueues supported.P - The type used for QoS.public class SimQueuePredictor_HOL<J extends SimJob,Q extends HOL,P extends Comparable> extends SimQueuePredictor_FCFS
SimQueuePredictor for HOL.Copyright (C) 2005-2017 Jan de Jongh, TNO
This file is covered by the LICENSE file in the root of this project.
| Constructor and Description |
|---|
SimQueuePredictor_HOL() |
| Modifier and Type | Method and Description |
|---|---|
SimQueueState<SimJob,SimQueue> |
createQueueState(SimQueue queue,
boolean isROEL)
Registers a new
SimQueueQoSStateHandler at the object created by super method. |
void |
doQueueEvents_SQ_SV_ROEL_U(SimQueue queue,
SimQueueState<SimJob,SimQueue> queueState,
Set<SimEntitySimpleEventType.Member> queueEventTypes,
Set<JobQueueVisitLog<SimJob,SimQueue>> visitLogsSet)
Process the next event(s) at a queue with given state.
|
void |
doWorkloadEvents_SQ_SV_ROEL_U(SimQueue queue,
WorkloadSchedule_SQ_SV_ROEL_U workloadSchedule,
SimQueueState<SimJob,SimQueue> queueState,
Set<SimEntitySimpleEventType.Member> workloadEventTypes,
Set<JobQueueVisitLog<SimJob,SimQueue>> visitLogsSet)
Process the next event(s) from given
WorkloadSchedule at a queue with given state. |
protected SimJob |
getJobToStart(SimQueue queue,
SimQueueState<SimJob,SimQueue> queueState) |
boolean |
isStartArmed(SimQueue queue,
SimQueueState<SimJob,SimQueue> queueState)
Checks whether a given state represents
StartArmed on given queue. |
String |
toString() |
getNextQueueEventTimeBeyond, updateToTimeis_ROEL_U_UnderWorkloadQueueEventClashes, is_U_UnderWorkloadQueueEventClashes, predict_SQ_SV_IOEL_U, predict_SQ_SV_ROEL_Uclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitmatchVisitLogs_SQ_SVcreateWorkloadSchedule_SQ_SV_ROEL_U, createWorkloadSchedule_SQ_SV, doWorkloadEvents_SQ_SVhasServerAccessCredits, isQueueAccessVacationpublic String toString()
toString in class SimQueuePredictor_FCFSpublic SimQueueState<SimJob,SimQueue> createQueueState(SimQueue queue, boolean isROEL)
SimQueueQoSStateHandler at the object created by super method.queue - The queue, non-null.isROEL - Whether or not the event list used is a Random-Order Event List.SimQueueQoSStateHandler.public boolean isStartArmed(SimQueue queue, SimQueueState<SimJob,SimQueue> queueState)
SimQueueStatePredictorStartArmed on given queue.isStartArmed in interface SimQueueStatePredictor<SimQueue>isStartArmed in class SimQueuePredictor_FCFSqueue - The queue.queueState - The queue state, non-null.StartArmed at given queue.protected SimJob getJobToStart(SimQueue queue, SimQueueState<SimJob,SimQueue> queueState) throws SimQueuePredictionException
getJobToStart in class SimQueuePredictor_FCFSSimQueuePredictionExceptionpublic void doWorkloadEvents_SQ_SV_ROEL_U(SimQueue queue, WorkloadSchedule_SQ_SV_ROEL_U workloadSchedule, SimQueueState<SimJob,SimQueue> queueState, Set<SimEntitySimpleEventType.Member> workloadEventTypes, Set<JobQueueVisitLog<SimJob,SimQueue>> visitLogsSet) throws SimQueuePredictionException, WorkloadScheduleException
SimQueueEventPredictorWorkloadSchedule at a queue with given state.
The scheduled time and the types of the next events must be known beforehand,
e.g., through WorkloadSchedule.getNextEventTimeBeyond(org.javades.jqueues.r5.entity.jq.queue.SimQueue, double, java.util.Set<org.javades.jqueues.r5.entity.SimEntitySimpleEventType.Member>).
The scheduled time has already been set on the SimQueueState object,
and the object has been updated upto that time.
The time on the queue state must not be changed.
Implementations must update the queue state and (if applicable) add suitable entries to the visit logs.
Implementations must not modify the workload schedule.
doWorkloadEvents_SQ_SV_ROEL_U in interface SimQueueEventPredictor<SimQueue>doWorkloadEvents_SQ_SV_ROEL_U in class SimQueuePredictor_FCFSqueue - The queue, non-null.workloadSchedule - The workload schedule, non-null.queueState - The queue-state, non-null.workloadEventTypes - The (pre-calculated) types of the next workload event(s).visitLogsSet - The visit logs, non-null.SimQueuePredictionException - If the result cannot be computed, e.g., due to invalid input or schedule ambiguities.WorkloadScheduleException - If the workload is invalid (e.g., containing ambiguities).WorkloadSchedule.getNextEventTimeBeyond(org.javades.jqueues.r5.entity.jq.queue.SimQueue, double, java.util.Set<org.javades.jqueues.r5.entity.SimEntitySimpleEventType.Member>),
SimQueueEventPredictor.updateToTime(Q, org.javades.jqueues.r5.util.predictor.state.SimQueueState, double),
SimQueueState.setTime(double)public void doQueueEvents_SQ_SV_ROEL_U(SimQueue queue, SimQueueState<SimJob,SimQueue> queueState, Set<SimEntitySimpleEventType.Member> queueEventTypes, Set<JobQueueVisitLog<SimJob,SimQueue>> visitLogsSet) throws SimQueuePredictionException
SimQueueEventPredictor
The scheduled time and the types of the next events must be known beforehand,
e.g., through SimQueueEventPredictor.getNextQueueEventTimeBeyond(Q, org.javades.jqueues.r5.util.predictor.state.SimQueueState<org.javades.jqueues.r5.entity.jq.job.SimJob, Q>, java.util.Set<org.javades.jqueues.r5.entity.SimEntitySimpleEventType.Member>).
The scheduled time has already been set on the SimQueueState object,
and the object has been updated upto that time.
The time on the queue state must not be changed.
Implementations must update the queue state and (if applicable) add suitable entries to the visit logs.
doQueueEvents_SQ_SV_ROEL_U in interface SimQueueEventPredictor<SimQueue>doQueueEvents_SQ_SV_ROEL_U in class SimQueuePredictor_FCFSqueue - The queue, non-null.queueState - The queue-state, non-nullqueueEventTypes - The (pre-calculated) types of the next workload event(s).visitLogsSet - The visit logs, non-null.SimQueuePredictionException - If the result cannot be computed, e.g., due to invalid input or schedule ambiguities.SimQueueEventPredictor.getNextQueueEventTimeBeyond(Q, org.javades.jqueues.r5.util.predictor.state.SimQueueState<org.javades.jqueues.r5.entity.jq.job.SimJob, Q>, java.util.Set<org.javades.jqueues.r5.entity.SimEntitySimpleEventType.Member>),
SimQueueEventPredictor.updateToTime(Q, org.javades.jqueues.r5.util.predictor.state.SimQueueState, double),
SimQueueState.setTime(double)Copyright © 2018. All rights reserved.