GreenCloud Simulator
|
#include <corescheduler.h>
Private Attributes | |
Capacity * | nominal_mips_ |
Capacity * | available_mips_ |
double | current_mips_ |
ResourceProvider * | provider |
std::vector< CoreScheduler * > | hosted_vcores_schedulers |
std::vector< TaskAlloc * > | tasks_alloc_list_ |
std::vector< TaskAlloc * > | tasks_alloc_assigned_ |
CoreScheduler * | host_scheduler_ |
int | eDVFS_enabled_ |
int | tskAllocFailed_ |
Definition at line 26 of file corescheduler.h.
Definition at line 12 of file corescheduler.cc.
|
virtual |
Definition at line 23 of file corescheduler.cc.
void CoreScheduler::addVcoreScheduler | ( | CoreScheduler * | cs | ) |
Definition at line 308 of file corescheduler.cc.
void CoreScheduler::assignTask | ( | TaskAlloc * | tskobj | ) |
Definition at line 71 of file corescheduler.cc.
void CoreScheduler::executeTask | ( | TaskAlloc * | tskobj | ) |
Definition at line 76 of file corescheduler.cc.
int CoreScheduler::getAllTasksNumber | ( | ) |
Definition at line 67 of file corescheduler.cc.
double CoreScheduler::getAvailableMIPS | ( | ) |
Definition at line 59 of file corescheduler.cc.
double CoreScheduler::getCurrentMIPS | ( | ) |
Definition at line 43 of file corescheduler.cc.
double CoreScheduler::getCurrentMIPSRecursive | ( | ) |
Definition at line 46 of file corescheduler.cc.
CoreScheduler * CoreScheduler::getHostScheduler | ( | ) |
Definition at line 319 of file corescheduler.cc.
double CoreScheduler::getMostUrgentTaskRate | ( | ) |
Definition at line 201 of file corescheduler.cc.
double CoreScheduler::getNominalMIPS | ( | ) |
Definition at line 56 of file corescheduler.cc.
ResourceProvider * CoreScheduler::getProvider | ( | ) |
Definition at line 63 of file corescheduler.cc.
bool CoreScheduler::removeAllocationsFromAssginedList | ( | CloudTask * | tskobj | ) |
Definition at line 94 of file corescheduler.cc.
void CoreScheduler::removeCompleted | ( | ) |
Definition at line 173 of file corescheduler.cc.
void CoreScheduler::removeFailedTaskAlloc | ( | std::vector< TaskAlloc * >::iterator & | iter, |
bool | executed | ||
) |
Definition at line 158 of file corescheduler.cc.
bool CoreScheduler::removeFromAssginedList | ( | TaskAlloc * | tskobj | ) |
Definition at line 81 of file corescheduler.cc.
CloudTask* CoreScheduler::removeTaskAlloc | ( | std::vector< TaskAlloc * >::iterator & | iter, |
bool | executed | ||
) |
void CoreScheduler::removeTaskAlloc | ( | TaskAlloc * | ta | ) |
Definition at line 148 of file corescheduler.cc.
void CoreScheduler::removeVcoreScheduler | ( | CoreScheduler * | cs | ) |
Definition at line 313 of file corescheduler.cc.
void CoreScheduler::setComputingRate | ( | ) |
Definition at line 294 of file corescheduler.cc.
void CoreScheduler::setDVFS | ( | int | eDVFS_enabled_ | ) |
Definition at line 39 of file corescheduler.cc.
void CoreScheduler::setProvider | ( | ResourceProvider * | provider | ) |
Definition at line 35 of file corescheduler.cc.
void CoreScheduler::startTaskExecution | ( | CloudTask * | tskobj | ) |
Definition at line 110 of file corescheduler.cc.
void CoreScheduler::updateTskComputingRates | ( | double | c_mips | ) |
Definition at line 251 of file corescheduler.cc.
void CoreScheduler::updateTskList | ( | double | c_mips | ) |
Definition at line 263 of file corescheduler.cc.
void CoreScheduler::updateTskList | ( | ) |
Definition at line 290 of file corescheduler.cc.
|
private |
MIPS unavailable for this scheduler (reserved for hosted vms)
Definition at line 64 of file corescheduler.h.
|
private |
MIPS currently used by this scheduler
Definition at line 65 of file corescheduler.h.
|
private |
DVFS flag, influences the scheduling policy
Definition at line 72 of file corescheduler.h.
|
private |
The scheduler that hosts this (next level) scheduler
Definition at line 71 of file corescheduler.h.
|
private |
List of schedulers of hosted vcores
Definition at line 68 of file corescheduler.h.
|
private |
Maximal available MIPS from ResourceSpec
Definition at line 63 of file corescheduler.h.
|
private |
The resorce provider that uses the scheduler
Definition at line 67 of file corescheduler.h.
|
private |
in-fly list
Definition at line 70 of file corescheduler.h.
|
private |
execution list
Definition at line 69 of file corescheduler.h.
|
private |
Number of TaskAllocations that failed on this scheduler (not used yet)
Definition at line 73 of file corescheduler.h.