Class LinkedJobInfoList
java.lang.Object
QueueNet.LinkedJobInfoList
- All Implemented Interfaces:
JobInfoList
- Direct Known Subclasses:
PSJobInfoList
This class implements a linked job info list.
- Author:
- Francesco Radaelli, Stefano Omini Modified by Ashanka (May 2010): Patch: Multi-Sink Perf. Index Description: Added new Performance index for capturing 1. global response time (ResponseTime per Sink) 2. global throughput (Throughput per Sink) each sink per class.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected intprotected InverseMeasureprotected InverseMeasure[]protected InverseMeasureprotected InverseMeasure[]protected Measure[]protected Measure[][]protected InverseMeasureprotected InverseMeasure[]protected Measure[]protected Measure[][]protected Measureprotected Measure[]protected Measureprotected Measure[]protected Measureprotected Measure[]protected int[]protected intprotected int[]protected intprotected int[]protected intprotected int[]protected intprotected intprotected doubleprotected doubleprotected double[]protected double[]protected doubleprotected double[]protected double[]protected doubleprotected double[]protected doubleprotected double[]protected double[]protected double[][]protected doubleprotected double[]protected double[]protected double[][]protected doubleprotected double[]protected double[]protected doubleprotected double[]protected double[]protected doubleprotected double[]protected doubleprotected double[]protected doubleprotected double[]protected doubleprotected double[]protected double[]protected Measureprotected Measure[]protected LinkedList<JobInfo> protected LinkedList<JobInfo>[]protected Measureprotected intprotected intThe number of servers to estimate Utilization measure on multiserver environmentsprotected Measureprotected Measure[]protected Measure[]protected Measure[][]protected double[]protected static final intprotected static final intprotected static final intprotected InverseMeasureprotected InverseMeasure[]protected Measure[]protected Measure[][]protected Measureprotected Measure[]protected Measure[]protected Measure[][]protected Measureprotected Measure[]protected Measure[]protected Measure[][]protected Measureprotected Measure[]protected Measure[]protected Measure[][]protected InverseMeasureprotected InverseMeasure[]protected Measureprotected Measure[]protected Measure[]protected Measure[][]protected Measureprotected Measure[]protected int[]The number of servers required by a specific class to estimate Utilization measure on multiserver environmentsprotected Measureprotected Measure[]protected InverseMeasureprotected InverseMeasure[]protected Measure[]protected Measure[][]protected InverseMeasureprotected InverseMeasure[]protected doubleprotected double[]protected Measureprotected Measureprotected Measure[]protected Measure[]protected Measure[]protected Measure[][] -
Constructor Summary
ConstructorsConstructorDescriptionLinkedJobInfoList(JobClassList jobClasses) Creates a new JobInfoList instance.LinkedJobInfoList(JobClassList jobClasses, Boolean[][] classCompatibilities, String stationName, List<Server.ServerType> serverTypes) -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds a new job info at the specified index.voidAdds a new job info at the specified index.void--------------------------------------------------------------------- --------------------- "ADD" AND "REMOVE" METHODS --------------------- ---------------------------------------------------------------------voidAdds a new job info at the start of the list.voidAdds a new job info at the end of the list.voidaddToRetrialOrbit(Job job) Adds a job to the retrial orbit.voidaddUsedServersForJob(int job_id, List<Server.BusyServer> busyServers) --------------------------------------------------------------------- --------------------------- "GET" METHODS ---------------------------- ---------------------------------------------------------------------voidanalyzeArrivalRate(JobClass jobClass, InverseMeasure measurement) Analyzes the arrival rate for the specified job class.voidanalyzeBalkingRate(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Analyzes the balking rate for the specified job class.voidanalyzeCacheHitRate(JobClass jobClass, Measure measurement) Method to calculate cache hit ratevoidanalyzeDropRate(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Analyzes the drop rate for the specified job class.voidanalyzeEarliness(JobClass jobClass, Measure measurement) Analyzes the earliness of the specified job class.voidanalyzeEffectiveUtilization(JobClass jobClass, Measure measurement) Analyzes the effective utilization for the specified job class.voidanalyzeLateness(JobClass jobClass, Measure measurement) Analyzes the lateness of the specified job class.voidanalyzeNumberOfServers(Measure measurement) Analyzes the number of active servers in a Server sectionvoidanalyzeQueueLength(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) --------------------------------------------------------------------- ------------------- "ANALYZE" AND "UPDATE" METHODS ------------------- ---------------------------------------------------------------------voidanalyzeRenegingRate(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Analyzes the reneging rate for the specified job class.voidanalyzeResidenceTime(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) Analyzes the residence time for the specified job class.voidanalyzeResponseTime(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) Analyzes the response time for the specified job class.voidanalyzeResponseTimePerSink(JobClass jobClass, Measure measurement) Analyzes the response time of a sink for the specified job class.voidanalyzeRetrialAttemptsRate(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Analyzes the retrial attempts rate for the specified job class.voidanalyzeRetrialOrbitSize(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) Analyzes the retrial orbit size for the specified job class.voidanalyzeRetrialOrbitTime(JobClass jobClass, Measure measurement) Analyzes the retrial orbit time for the specified job class.voidanalyzeTardiness(JobClass jobClass, Measure measurement) Analyzes the tardiness of the specified job class.voidanalyzeThroughput(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Analyzes the throughput for the specified job class.voidanalyzeThroughputPerSink(JobClass jobClass, InverseMeasure measurement) Analyzes the throughput of a sink for the specified job class.voidanalyzeUtilization(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) Analyzes the utilization for the specified job class.voidanalyzeUtilizationJoin(JobClass jobClass, Measure measurement) Analyzes the utilization of a join for the specified job class.voidRemoves a job info from the list when a job is balked.voidvoidchangeNumberOfActiveServers(int numberOfServers) Changes the number of active servers when the enabling degree changesvoidconsumeJob(JobInfo jobInfo) Removes a job info from the list when a job is consumed.protected voidvoidRemoves a job info from the list when a job is dropped.voidChanges a job info from the list when a job is ended.voidendsServerVacation(VacationJob vacationJob) protected voidfinalRemove(JobInfo what, LinkedList<JobInfo> list, int position) Gets the internal job info list.getInternalJobInfoList(JobClass jobClass) Gets the internal job info list of the specified job class.getJob(int i) Returns ith job in queueintgetJobsCacheCountPerClass(JobClass jclass) intGets the number of added jobs.intgetJobsInPerClass(JobClass jobClass) Gets the number of added jobs of the specified job class.intGets the number of jobs in service.intgetJobsInServicePerClass(JobClass jobClass) Gets the number of jobs in service of the specified job class.intGets the number of removed jobs.intgetJobsOutPerClass(JobClass jobClass) Gets the number of removed jobs of the specified job class.intintdoubledoubleGets the time of the last balked job.doublegetLastJobBalkingTimePerClass(JobClass jobClass) Gets the time of the last balked job of the specified job class.doubleGets the time of the last dropped job.doublegetLastJobDropTimePerClass(JobClass jobClass) Gets the time of the last dropped job of the specified job class.doubleGets the time of the last ended job.doublegetLastJobEndTimePerClass(JobClass jobClass) Gets the time of the last ended job of the specified job class.doubleGets the time of the last added job.doublegetLastJobInTimePerClass(JobClass jobClass) Gets the time of the last added job of the specified job class.doubleGets the time of the last removed job.doublegetLastJobOutTimePerClass(JobClass jobClass) Gets the time of the last removed job of the specified job class.doubleGets the time of the last reneged job.doublegetLastJobRenegingTimePerClass(JobClass jobClass) Gets the time of the last reneged job of the specified job class.doubleGets the time of the last retried job.doublegetLastJobRetrialTimePerClass(JobClass jobClass) Gets the time of the last retried job of the specified job class.doubleGets the sojourn time of the last removed job.doublegetLastJobSojournTimePerClass(JobClass jobClass) Gets the sojourn time of the last removed job of the specified job class.doubleGets the time of the last started job.doublegetLastJobStartTimePerClass(JobClass jobClass) Gets the time of the last started job of the specified job class.doubleGets the time of the last switched job.doublegetLastJobSwitchTimePerClass(JobClass jobClass) Gets the time of the last switched job of the specified job class.doubleGets the time of the last modify.doublegetLastModifyTimePerClass(JobClass jobClass) Gets the time of the last modify of the specified job class.doublegetLastModifyTimePerServer(int s) doublegetLastModifyTimePerServerPerClass(int s, int c) doubleGets the time of the last retrial orbit modify.doubleGets the time of the last retrial orbit modify of the specified job class.doubleGets the time of the last service modify.doublegetLastServiceModifyTimePerClass(JobClass jobClass) Gets the time of the last service modify of the specified job class.Gets the retrial orbit.protected doublegetTime()doubleGets the total sojourn time.doublegetTotalSojournTimePerClass(JobClass jobClass) Gets the total sojourn time of the specified job class.Looks for the job info that references the specified job.voidproduceJob(JobInfo jobInfo) Adds a job info to the list when a job is consumed.voidredirectJob(JobInfo jobInfo) Removes a job info from the list when a job is redirected.voidRemoves a job info from the list.Removes a job info at the start of the list.removeFirst(JobClass jobClass) Removes a job info of the specified job class at the start of the list.voidRemoves a job from the retrial orbit.void--------------------------------------------------------------------- -------------------------- "OTHER" METHODS --------------------------- ---------------------------------------------------------------------Removes a job info at the end of the list.removeLast(JobClass jobClass) Removes a job info of the specified job class at the end of the list.voidremoveOnly(JobInfo jobInfo) Removes a job info from the list.voidremoveUsedServerForJob(int job_id) Removes job when finishedvoidremoveWithoutUpdating(JobInfo jobInfo) voidRemoves a job info from the list when a job is reneged.voidAdds a job info to the list when a job is retried.voidsetNetSystem(NetSystem netSystem) Sets the network system.voidsetNumberOfServers(int numberOfServers) Sets the number of servers.voidsetRegionSoftDeadlinesByClass(double[] regionSoftDeadlinesByClass) Sets the region soft deadlines for each class to be used by tardiness measures.voidsetServerNumRequired(int[] serverNumRequired) Sets the number of servers required by a class.intsize()Gets the number of jobs.intGets the number of jobs of the specified job class.voidChanges a job info in the list when a job is started.voidstartsServerVacation(VacationJob vacationJob) Methods related to server vacationsvoidChanges a job info in the list when a job is switched.protected voidprotected voidupdateAfterRemoval(JobInfo jobInfo) protected voidupdateArrivalRate(JobInfo jobInfo) protected voidupdateBalkingRate(JobInfo jobInfo) protected voidupdateCacheHitRate(JobClass jclass) protected voidupdateDropRate(JobInfo jobInfo) protected voidupdateEarliness(JobInfo jobInfo) protected voidupdateEffectiveUtilization(JobInfo jobInfo) protected voidupdateEffectiveUtilization(VacationJob vacationJob) protected voidupdateLateness(JobInfo jobInfo) protected voidprotected voidupdateQueueLength(JobInfo jobInfo) protected voidupdateRenegingRate(JobInfo jobInfo) protected voidupdateResidenceTime(JobInfo jobInfo) protected voidupdateResponseTime(JobInfo jobInfo) protected voidupdateResponseTimePerSink(JobInfo jobInfo) protected voidupdateRetrialAttemptsRate(JobInfo jobInfo) protected voidprotected voidprotected voidupdateTardiness(JobInfo jobInfo) protected voidupdateThroughput(JobInfo jobInfo) protected voidupdateThroughputPerSink(JobInfo jobInfo) protected voidupdateUtilization(JobInfo jobInfo) protected voidupdateUtilization(VacationJob vacationJob, boolean onStartOfVacation) protected voidupdateUtilizationJoin(JobInfo jobInfo) voidupdateWithoutRemoving(JobInfo jobInfo)
-
Field Details
-
REMOVE_FIRST
protected static final int REMOVE_FIRST- See Also:
-
REMOVE_LAST
protected static final int REMOVE_LAST- See Also:
-
REMOVE_SPECIFIC
protected static final int REMOVE_SPECIFIC- See Also:
-
numberOfJobClasses
protected int numberOfJobClasses -
list
-
listPerClass
-
retrialOrbit
-
retrialOrbitPerClass
-
jobsIn
protected int jobsIn -
jobsInPerClass
protected int[] jobsInPerClass -
jobsOut
protected int jobsOut -
jobsOutPerClass
protected int[] jobsOutPerClass -
jobsTotalCacheHitCount
protected int jobsTotalCacheHitCount -
jobsTotalCacheMissCount
protected int jobsTotalCacheMissCount -
jobsCacheCountPerClass
protected int[] jobsCacheCountPerClass -
jobsInService
protected int jobsInService -
jobsInServicePerClass
protected int[] jobsInServicePerClass -
activeServers
protected int activeServers -
lastJobInTime
protected double lastJobInTime -
lastJobInTimePerClass
protected double[] lastJobInTimePerClass -
lastJobOutTimePerServer
protected double[] lastJobOutTimePerServer -
lastJobOutTimePerServerPerClass
protected double[][] lastJobOutTimePerServerPerClass -
lastJobOutTime
protected double lastJobOutTime -
lastJobOutTimePerClass
protected double[] lastJobOutTimePerClass -
lastJobInTimePerServer
protected double[] lastJobInTimePerServer -
lastJobInTimePerServerPerClass
protected double[][] lastJobInTimePerServerPerClass -
lastJobStartTime
protected double lastJobStartTime -
lastJobStartTimePerClass
protected double[] lastJobStartTimePerClass -
lastJobEndTime
protected double lastJobEndTime -
lastJobEndTimePerClass
protected double[] lastJobEndTimePerClass -
lastJobDropTime
protected double lastJobDropTime -
lastJobDropTimePerClass
protected double[] lastJobDropTimePerClass -
lastJobDropTimePerServer
protected double[] lastJobDropTimePerServer -
lastJobSwitchTime
protected double lastJobSwitchTime -
lastJobSwitchTimePerClass
protected double[] lastJobSwitchTimePerClass -
lastJobBalkingTime
protected double lastJobBalkingTime -
lastJobBalkingTimePerClass
protected double[] lastJobBalkingTimePerClass -
lastJobBalkingTimePerServer
protected double[] lastJobBalkingTimePerServer -
lastJobRenegingTime
protected double lastJobRenegingTime -
lastJobRenegingTimePerClass
protected double[] lastJobRenegingTimePerClass -
lastJobRenegingTimePerServer
protected double[] lastJobRenegingTimePerServer -
lastJobRetrialAttemptTime
protected double lastJobRetrialAttemptTime -
lastJobRetrialAttemptTimePerClass
protected double[] lastJobRetrialAttemptTimePerClass -
lastJobRetrialAttemptTimePerServer
protected double[] lastJobRetrialAttemptTimePerServer -
lastRetrialOrbitModifyTime
protected double lastRetrialOrbitModifyTime -
lastRetrialOrbitModifyTimePerClass
protected double[] lastRetrialOrbitModifyTimePerClass -
lastRetrialOrbitModifyTimePerServer
protected double[] lastRetrialOrbitModifyTimePerServer -
totalSojournTime
protected double totalSojournTime -
totalSojournTimePerClass
protected double[] totalSojournTimePerClass -
lastJobSojournTime
protected double lastJobSojournTime -
lastJobSojournTimePerClass
protected double[] lastJobSojournTimePerClass -
lastActiveServersTime
protected double lastActiveServersTime -
queueLength
-
queueLengthPerClass
-
queueLengthPerServerType
-
queueLengthPerServerTypePerClass
-
responseTime
-
responseTimePerClass
-
responseTimePerServerType
-
responseTimePerServerTypePerClass
-
residenceTime
-
residenceTimePerClass
-
residenceTimePerServerType
-
residenceTimePerServerTypePerClass
-
arrivalRate
-
arrivalRatePerClass
-
throughput
-
throughputPerClass
-
throughputPerServerType
-
throughputPerServerTypePerClass
-
utilization
-
utilizationPerClass
-
utilizationPerServerType
-
utilizationPerServerTypePerClass
-
utilizationJoin
-
utilizationPerClassJoin
-
effectiveUtilization
-
effectiveUtilizationPerClass
-
hitRate
-
hitRatePerClass
-
dropRate
-
dropRatePerClass
-
dropRatePerServerType
-
dropRatePerServerTypePerClass
-
balkingRate
-
balkingRatePerClass
-
balkingRatePerServerType
-
balkingRatePerServerTypePerClass
-
renegingRate
-
renegingRatePerClass
-
renegingRatePerServerType
-
renegingRatePerServerTypePerClass
-
retrialAttemptsRate
-
retrialAttemptsRatePerClass
-
retrialAttemptsPerServerType
-
retrialAttemptsPerServerTypePerClass
-
retrialOrbitSize
-
retrialOrbitSizePerClass
-
retrialOrbitSizePerServerType
-
retrialOrbitSizePerServerTypePerClass
-
retrialOrbitTime
-
retrialOrbitTimePerClass
-
responseTimePerSink
-
responseTimePerSinkPerClass
-
throughputPerSink
-
throughputPerSinkPerClass
-
tardiness
-
tardinessPerClass
-
earliness
-
earlinessPerClass
-
lateness
-
latenessPerClass
-
regionSoftDeadlinesByClass
protected double[] regionSoftDeadlinesByClass -
numberOfActiveServers
-
numberOfServers
protected int numberOfServersThe number of servers to estimate Utilization measure on multiserver environments -
serverNumRequired
protected int[] serverNumRequiredThe number of servers required by a specific class to estimate Utilization measure on multiserver environments
-
-
Constructor Details
-
LinkedJobInfoList
Creates a new JobInfoList instance.- Parameters:
jobClasses- job classes. if (preemption) { jobInService = job; jobInService.setServingMessage(jobInServiceMessage); jobInService.setIsJobInService(true); }
-
LinkedJobInfoList
public LinkedJobInfoList(JobClassList jobClasses, Boolean[][] classCompatibilities, String stationName, List<Server.ServerType> serverTypes)
-
-
Method Details
-
addUsedServersForJob
--------------------------------------------------------------------- --------------------------- "GET" METHODS ---------------------------- ---------------------------------------------------------------------- Specified by:
addUsedServersForJobin interfaceJobInfoList- Parameters:
job_id-busyServers-
-
removeUsedServerForJob
public void removeUsedServerForJob(int job_id) Description copied from interface:JobInfoListRemoves job when finished- Specified by:
removeUsedServerForJobin interfaceJobInfoList- Parameters:
job_id-
-
size
public int size()Description copied from interface:JobInfoListGets the number of jobs.- Specified by:
sizein interfaceJobInfoList- Returns:
- Number of jobs.
-
size
Description copied from interface:JobInfoListGets the number of jobs of the specified job class.- Specified by:
sizein interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Number of jobs of the specified job class.
-
getRetrialOrbit
Description copied from interface:JobInfoListGets the retrial orbit.- Specified by:
getRetrialOrbitin interfaceJobInfoList- Returns:
- Reference to the retrial orbit.
-
addToRetrialOrbit
Description copied from interface:JobInfoListAdds a job to the retrial orbit.- Specified by:
addToRetrialOrbitin interfaceJobInfoList- Parameters:
job- Reference to the job.
-
removeFromRetrialOrbit
Description copied from interface:JobInfoListRemoves a job from the retrial orbit.- Specified by:
removeFromRetrialOrbitin interfaceJobInfoList- Parameters:
job- Reference to the job.
-
getJobsIn
public int getJobsIn()Description copied from interface:JobInfoListGets the number of added jobs.- Specified by:
getJobsInin interfaceJobInfoList- Returns:
- Number of added jobs.
-
getJobsInPerClass
Description copied from interface:JobInfoListGets the number of added jobs of the specified job class.- Specified by:
getJobsInPerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Number of added jobs of the specified job class.
-
getJobsOut
public int getJobsOut()Description copied from interface:JobInfoListGets the number of removed jobs.- Specified by:
getJobsOutin interfaceJobInfoList- Returns:
- Number of removed jobs.
-
getJobsOutPerClass
Description copied from interface:JobInfoListGets the number of removed jobs of the specified job class.- Specified by:
getJobsOutPerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Number of removed jobs of the specified job class.
-
getJobsInService
public int getJobsInService()Description copied from interface:JobInfoListGets the number of jobs in service.- Specified by:
getJobsInServicein interfaceJobInfoList- Returns:
- Number of jobs in service.
-
getJobsInServicePerClass
Description copied from interface:JobInfoListGets the number of jobs in service of the specified job class.- Specified by:
getJobsInServicePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Number of jobs in service of the specified job class.
-
getLastJobInTime
public double getLastJobInTime()Description copied from interface:JobInfoListGets the time of the last added job.- Specified by:
getLastJobInTimein interfaceJobInfoList- Returns:
- Time of the last added job.
-
getLastJobInTimePerClass
Description copied from interface:JobInfoListGets the time of the last added job of the specified job class.- Specified by:
getLastJobInTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last added job of the specified job class.
-
getLastJobOutTime
public double getLastJobOutTime()Description copied from interface:JobInfoListGets the time of the last removed job.- Specified by:
getLastJobOutTimein interfaceJobInfoList- Returns:
- Time of the last removed job.
-
getLastJobOutTimePerClass
Description copied from interface:JobInfoListGets the time of the last removed job of the specified job class.- Specified by:
getLastJobOutTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last removed job of the specified job class.
-
getLastJobStartTime
public double getLastJobStartTime()Description copied from interface:JobInfoListGets the time of the last started job.- Specified by:
getLastJobStartTimein interfaceJobInfoList- Returns:
- Time of the last started job.
-
getLastJobStartTimePerClass
Description copied from interface:JobInfoListGets the time of the last started job of the specified job class.- Specified by:
getLastJobStartTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last started job of the specified job class.
-
getLastJobEndTime
public double getLastJobEndTime()Description copied from interface:JobInfoListGets the time of the last ended job.- Specified by:
getLastJobEndTimein interfaceJobInfoList- Returns:
- Time of the last ended job.
-
getLastJobEndTimePerClass
Description copied from interface:JobInfoListGets the time of the last ended job of the specified job class.- Specified by:
getLastJobEndTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last ended job of the specified job class.
-
getLastJobDropTime
public double getLastJobDropTime()Description copied from interface:JobInfoListGets the time of the last dropped job.- Specified by:
getLastJobDropTimein interfaceJobInfoList- Returns:
- Time of the last dropped job.
-
getLastJobDropTimePerClass
Description copied from interface:JobInfoListGets the time of the last dropped job of the specified job class.- Specified by:
getLastJobDropTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last dropped job of the specified job class.
-
getLastJobSwitchTime
public double getLastJobSwitchTime()Description copied from interface:JobInfoListGets the time of the last switched job.- Specified by:
getLastJobSwitchTimein interfaceJobInfoList- Returns:
- Time of the last switched job.
-
getLastJobSwitchTimePerClass
Description copied from interface:JobInfoListGets the time of the last switched job of the specified job class.- Specified by:
getLastJobSwitchTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last switched job of the specified job class.
-
getLastJobBalkingTime
public double getLastJobBalkingTime()Description copied from interface:JobInfoListGets the time of the last balked job.- Specified by:
getLastJobBalkingTimein interfaceJobInfoList- Returns:
- Time of the last balked job.
-
getLastJobBalkingTimePerClass
Description copied from interface:JobInfoListGets the time of the last balked job of the specified job class.- Specified by:
getLastJobBalkingTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last balked job of the specified job class.
-
getLastJobRenegingTime
public double getLastJobRenegingTime()Description copied from interface:JobInfoListGets the time of the last reneged job.- Specified by:
getLastJobRenegingTimein interfaceJobInfoList- Returns:
- Time of the last reneged job.
-
getLastJobRenegingTimePerClass
Description copied from interface:JobInfoListGets the time of the last reneged job of the specified job class.- Specified by:
getLastJobRenegingTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last reneged job of the specified job class.
-
getLastJobRetrialAttemptTime
public double getLastJobRetrialAttemptTime()Description copied from interface:JobInfoListGets the time of the last retried job.- Specified by:
getLastJobRetrialAttemptTimein interfaceJobInfoList- Returns:
- Time of the last retried job.
-
getLastJobRetrialTimePerClass
Description copied from interface:JobInfoListGets the time of the last retried job of the specified job class.- Specified by:
getLastJobRetrialTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last retried job of the specified job class.
-
getLastModifyTime
public double getLastModifyTime()Description copied from interface:JobInfoListGets the time of the last modify.- Specified by:
getLastModifyTimein interfaceJobInfoList- Returns:
- Time of the last modify.
-
getLastModifyTimePerClass
Description copied from interface:JobInfoListGets the time of the last modify of the specified job class.- Specified by:
getLastModifyTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last modify of the specified job class.
-
getLastModifyTimePerServer
public double getLastModifyTimePerServer(int s) -
getLastModifyTimePerServerPerClass
public double getLastModifyTimePerServerPerClass(int s, int c) -
getLastServiceModifyTime
public double getLastServiceModifyTime()Description copied from interface:JobInfoListGets the time of the last service modify.- Specified by:
getLastServiceModifyTimein interfaceJobInfoList- Returns:
- Time of the last modify.
-
getLastServiceModifyTimePerClass
Description copied from interface:JobInfoListGets the time of the last service modify of the specified job class.- Specified by:
getLastServiceModifyTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last service modify of the specified job class.
-
getLastRetrialOrbitModifyTime
public double getLastRetrialOrbitModifyTime()Description copied from interface:JobInfoListGets the time of the last retrial orbit modify.- Specified by:
getLastRetrialOrbitModifyTimein interfaceJobInfoList- Returns:
- Time of the last retrial orbit modify.
-
getLastRetrialOrbitModifyTimePerClass
Description copied from interface:JobInfoListGets the time of the last retrial orbit modify of the specified job class.- Specified by:
getLastRetrialOrbitModifyTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Time of the last retrial orbit modify of the specified job class.
-
getTotalSojournTime
public double getTotalSojournTime()Description copied from interface:JobInfoListGets the total sojourn time.- Specified by:
getTotalSojournTimein interfaceJobInfoList- Returns:
- Total sojourn time.
-
getTotalSojournTimePerClass
Description copied from interface:JobInfoListGets the total sojourn time of the specified job class.- Specified by:
getTotalSojournTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Total sojourn time of the specified job class.
-
getLastJobSojournTime
public double getLastJobSojournTime()Description copied from interface:JobInfoListGets the sojourn time of the last removed job.- Specified by:
getLastJobSojournTimein interfaceJobInfoList- Returns:
- Sojourn time of the last removed job.
-
getLastJobSojournTimePerClass
Description copied from interface:JobInfoListGets the sojourn time of the last removed job of the specified job class.- Specified by:
getLastJobSojournTimePerClassin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Sojourn time of the last removed job of the specified job class.
-
getLastActiveServersTime
public double getLastActiveServersTime() -
lookFor
Description copied from interface:JobInfoListLooks for the job info that references the specified job.- Specified by:
lookForin interfaceJobInfoList- Parameters:
job- Specified job.- Returns:
- Job info that references the specified job.
-
getInternalJobInfoList
Description copied from interface:JobInfoListGets the internal job info list.- Specified by:
getInternalJobInfoListin interfaceJobInfoList- Returns:
- Internal job info list.
-
getInternalJobInfoList
Description copied from interface:JobInfoListGets the internal job info list of the specified job class.- Specified by:
getInternalJobInfoListin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Internal job info list of the specified job class.
-
getFirstJob
- Specified by:
getFirstJobin interfaceJobInfoList
-
getLastJob
- Specified by:
getLastJobin interfaceJobInfoList
-
getJob
Description copied from interface:JobInfoListReturns ith job in queue- Specified by:
getJobin interfaceJobInfoList- Parameters:
i- - indec- Returns:
- the resulting job info
-
add
--------------------------------------------------------------------- --------------------- "ADD" AND "REMOVE" METHODS --------------------- ---------------------------------------------------------------------- Specified by:
addin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be added.
-
addFirst
Description copied from interface:JobInfoListAdds a new job info at the start of the list.- Specified by:
addFirstin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be added.
-
addLast
Description copied from interface:JobInfoListAdds a new job info at the end of the list.- Specified by:
addLastin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be added.
-
add
Description copied from interface:JobInfoListAdds a new job info at the specified index.- Specified by:
addin interfaceJobInfoList- Parameters:
index- Specified index.jobInfo- Reference to the job info to be added.
-
add
Description copied from interface:JobInfoListAdds a new job info at the specified index.- Specified by:
addin interfaceJobInfoList- Parameters:
index- Specified index.jobInfo- Reference to the job info to be added.isPerClassHead- If true, the job info will be put at the start of the per-class list. Otherwise, it will be put at the end.
-
updateAdd
-
updateAfterRemoval
-
remove
Description copied from interface:JobInfoListRemoves a job info from the list.- Specified by:
removein interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be removed.
-
removeOnly
Description copied from interface:JobInfoListRemoves a job info from the list.- Specified by:
removeOnlyin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be removed.
-
removeWithoutUpdating
-
updateWithoutRemoving
-
removeFirst
Description copied from interface:JobInfoListRemoves a job info at the start of the list.- Specified by:
removeFirstin interfaceJobInfoList- Returns:
- Job info at the start of the list.
-
removeFirst
Description copied from interface:JobInfoListRemoves a job info of the specified job class at the start of the list.- Specified by:
removeFirstin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Job info of the specified job class at the start of the list.
-
removeLast
Description copied from interface:JobInfoListRemoves a job info at the end of the list.- Specified by:
removeLastin interfaceJobInfoList- Returns:
- Job info at the end of the list.
-
removeLast
Description copied from interface:JobInfoListRemoves a job info of the specified job class at the end of the list.- Specified by:
removeLastin interfaceJobInfoList- Parameters:
jobClass- Specified job class.- Returns:
- Job info of the specified job class at the end of the list.
-
doRemove
-
finalRemove
-
analyzeQueueLength
public void analyzeQueueLength(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) --------------------------------------------------------------------- ------------------- "ANALYZE" AND "UPDATE" METHODS ------------------- ---------------------------------------------------------------------- Specified by:
analyzeQueueLengthin interfaceJobInfoList- Parameters:
measurement- Reference to the associated measure.
-
analyzeResponseTime
public void analyzeResponseTime(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) Description copied from interface:JobInfoListAnalyzes the response time for the specified job class. jobClass Specified job class. If null, analysis will be job class independent.- Specified by:
analyzeResponseTimein interfaceJobInfoList- Parameters:
measurement- Reference to the associated measure.
-
analyzeResidenceTime
public void analyzeResidenceTime(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) Description copied from interface:JobInfoListAnalyzes the residence time for the specified job class. jobClass Specified job class. If null, analysis will be job class independent.- Specified by:
analyzeResidenceTimein interfaceJobInfoList- Parameters:
measurement- Reference to the associated measure.
-
analyzeArrivalRate
Description copied from interface:JobInfoListAnalyzes the arrival rate for the specified job class.- Specified by:
analyzeArrivalRatein interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated inverse measure.
-
analyzeThroughput
public void analyzeThroughput(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Description copied from interface:JobInfoListAnalyzes the throughput for the specified job class.- Specified by:
analyzeThroughputin interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated inverse measure.
-
analyzeUtilization
public void analyzeUtilization(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) Description copied from interface:JobInfoListAnalyzes the utilization for the specified job class. jobClass Specified job class. If null, analysis will be job class independent.- Specified by:
analyzeUtilizationin interfaceJobInfoList- Parameters:
measurement- Reference to the associated measure.
-
analyzeUtilizationJoin
Description copied from interface:JobInfoListAnalyzes the utilization of a join for the specified job class.- Specified by:
analyzeUtilizationJoinin interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated measure.
-
analyzeEffectiveUtilization
Description copied from interface:JobInfoListAnalyzes the effective utilization for the specified job class. jobClass Specified job class. If null, analysis will be job class independent.- Specified by:
analyzeEffectiveUtilizationin interfaceJobInfoList- Parameters:
measurement- Reference to the associated measure.
-
analyzeDropRate
public void analyzeDropRate(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Description copied from interface:JobInfoListAnalyzes the drop rate for the specified job class.- Specified by:
analyzeDropRatein interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated inverse measure.
-
analyzeBalkingRate
public void analyzeBalkingRate(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Description copied from interface:JobInfoListAnalyzes the balking rate for the specified job class.- Specified by:
analyzeBalkingRatein interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated inverse measure.
-
analyzeRenegingRate
public void analyzeRenegingRate(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Description copied from interface:JobInfoListAnalyzes the reneging rate for the specified job class.- Specified by:
analyzeRenegingRatein interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated inverse measure.
-
analyzeRetrialAttemptsRate
public void analyzeRetrialAttemptsRate(JobClass jobClass, InverseMeasure measurement, boolean isServerType, int serverTypeId) Description copied from interface:JobInfoListAnalyzes the retrial attempts rate for the specified job class.- Specified by:
analyzeRetrialAttemptsRatein interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated inverse measure.
-
analyzeRetrialOrbitSize
public void analyzeRetrialOrbitSize(JobClass jobClass, Measure measurement, boolean isServerType, int serverTypeId) Description copied from interface:JobInfoListAnalyzes the retrial orbit size for the specified job class.- Specified by:
analyzeRetrialOrbitSizein interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated measure.
-
analyzeRetrialOrbitTime
Description copied from interface:JobInfoListAnalyzes the retrial orbit time for the specified job class.- Specified by:
analyzeRetrialOrbitTimein interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated measure.
-
analyzeResponseTimePerSink
Description copied from interface:JobInfoListAnalyzes the response time of a sink for the specified job class.- Specified by:
analyzeResponseTimePerSinkin interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated inverse measure.
-
analyzeThroughputPerSink
Description copied from interface:JobInfoListAnalyzes the throughput of a sink for the specified job class.- Specified by:
analyzeThroughputPerSinkin interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated inverse measure.
-
analyzeNumberOfServers
Description copied from interface:JobInfoListAnalyzes the number of active servers in a Server section- Specified by:
analyzeNumberOfServersin interfaceJobInfoList- Parameters:
measurement- Reference to the associated measure
-
analyzeTardiness
Description copied from interface:JobInfoListAnalyzes the tardiness of the specified job class.- Specified by:
analyzeTardinessin interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated measure.
-
analyzeEarliness
Description copied from interface:JobInfoListAnalyzes the earliness of the specified job class.- Specified by:
analyzeEarlinessin interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated measure.
-
analyzeLateness
Description copied from interface:JobInfoListAnalyzes the lateness of the specified job class.- Specified by:
analyzeLatenessin interfaceJobInfoList- Parameters:
jobClass- Specified job class. If null, analysis will be job class independent.measurement- Reference to the associated measure.
-
updateTardiness
-
updateEarliness
-
updateLateness
-
updateQueueLength
-
updateResponseTime
-
updateResidenceTime
-
updateArrivalRate
-
updateThroughput
-
updateUtilization
-
updateUtilization
-
updateUtilizationJoin
-
updateEffectiveUtilization
-
updateEffectiveUtilization
-
updateDropRate
-
updateBalkingRate
-
updateRenegingRate
-
updateRetrialAttemptsRate
-
updateRetrialOrbitSize
-
updateRetrialOrbitTime
-
updateResponseTimePerSink
-
updateThroughputPerSink
-
updateNumberOfServers
protected void updateNumberOfServers() -
removeJob
--------------------------------------------------------------------- -------------------------- "OTHER" METHODS --------------------------- ---------------------------------------------------------------------- Specified by:
removeJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be removed.
-
redirectJob
Description copied from interface:JobInfoListRemoves a job info from the list when a job is redirected.- Specified by:
redirectJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be removed.
-
startJob
Description copied from interface:JobInfoListChanges a job info in the list when a job is started.- Specified by:
startJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be changed.
-
endJob
Description copied from interface:JobInfoListChanges a job info from the list when a job is ended.- Specified by:
endJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be changed.
-
dropJob
Description copied from interface:JobInfoListRemoves a job info from the list when a job is dropped.- Specified by:
dropJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be removed.
-
switchJob
Description copied from interface:JobInfoListChanges a job info in the list when a job is switched.- Specified by:
switchJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be changed.
-
balkJob
Description copied from interface:JobInfoListRemoves a job info from the list when a job is balked.- Specified by:
balkJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be removed.
-
renegeJob
Description copied from interface:JobInfoListRemoves a job info from the list when a job is reneged.- Specified by:
renegeJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be removed.
-
retryJob
Description copied from interface:JobInfoListAdds a job info to the list when a job is retried.- Specified by:
retryJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be added.
-
produceJob
Description copied from interface:JobInfoListAdds a job info to the list when a job is consumed.- Specified by:
produceJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be added.
-
consumeJob
Description copied from interface:JobInfoListRemoves a job info from the list when a job is consumed.- Specified by:
consumeJobin interfaceJobInfoList- Parameters:
jobInfo- Reference to the job info to be removed.
-
changeNumberOfActiveServers
public void changeNumberOfActiveServers(int numberOfServers) Description copied from interface:JobInfoListChanges the number of active servers when the enabling degree changes- Specified by:
changeNumberOfActiveServersin interfaceJobInfoList
-
setNumberOfServers
public void setNumberOfServers(int numberOfServers) Description copied from interface:JobInfoListSets the number of servers. This parameter is used to scale utilization.- Specified by:
setNumberOfServersin interfaceJobInfoList- Parameters:
numberOfServers- Number of servers.
-
setNetSystem
Description copied from interface:JobInfoListSets the network system. This parameter is used to get simulation time.- Specified by:
setNetSystemin interfaceJobInfoList- Parameters:
netSystem- Network system.
-
setRegionSoftDeadlinesByClass
public void setRegionSoftDeadlinesByClass(double[] regionSoftDeadlinesByClass) Description copied from interface:JobInfoListSets the region soft deadlines for each class to be used by tardiness measures. This method should only be called when the relevant station is a blocking region input station.- Specified by:
setRegionSoftDeadlinesByClassin interfaceJobInfoList- Parameters:
regionSoftDeadlinesByClass- Soft deadlines for each class.
-
getTime
protected double getTime() -
setServerNumRequired
public void setServerNumRequired(int[] serverNumRequired) Description copied from interface:JobInfoListSets the number of servers required by a class. This parameter is used to scale utilization.- Specified by:
setServerNumRequiredin interfaceJobInfoList- Parameters:
serverNumRequired- Number of servers required by a specific class, getting by id.
-
analyzeCacheHitRate
Method to calculate cache hit rate- Specified by:
analyzeCacheHitRatein interfaceJobInfoList
-
getJobsTotalCacheMissCount
public int getJobsTotalCacheMissCount()- Specified by:
getJobsTotalCacheMissCountin interfaceJobInfoList
-
getJobsTotalCacheHitCount
public int getJobsTotalCacheHitCount()- Specified by:
getJobsTotalCacheHitCountin interfaceJobInfoList
-
getJobsCacheCountPerClass
- Specified by:
getJobsCacheCountPerClassin interfaceJobInfoList
-
updateCacheHitRate
-
CacheJob
- Specified by:
CacheJobin interfaceJobInfoList
-
startsServerVacation
Description copied from interface:JobInfoListMethods related to server vacations- Specified by:
startsServerVacationin interfaceJobInfoList
-
endsServerVacation
- Specified by:
endsServerVacationin interfaceJobInfoList
-