Class FragmentScheduler
Defined in File fragment_scheduler.hpp
-
class FragmentScheduler
The fragment scheduler class.
This class is responsible for scheduling the the set of fragments based on the available app workers.
Public Functions
-
explicit FragmentScheduler(std::unique_ptr<FragmentAllocationStrategy> &&allocation_strategy = {})
-
virtual ~FragmentScheduler()
-
void add_resource_requirement(const SystemResourceRequirement &resource_requirement)
Add resource requirement for a fragment.
- Parameters
resource_requirement – The resource requirement for a fragment.
-
void add_resource_requirement(SystemResourceRequirement &&resource_requirement)
Add resource requirement for a fragment.
- Parameters
resource_requirement – The resource requirement for a fragment.
-
void add_available_resource(const AvailableSystemResource &available_resource)
Add app worker resource.
- Parameters
available_resource – The available resource for an app worker.
-
void add_available_resource(AvailableSystemResource &&available_resource)
Add app worker resource.
- Parameters
available_resource – The available resource for an app worker.
-
holoscan::expected<std::unordered_map<std::string, std::string>, std::string> schedule()
Schedule the fragments.
- Returns
holoscan::expected<std::unordered_map<std::string, std::string>, std::string> The mapping from fragment name to app worker id.
-
explicit FragmentScheduler(std::unique_ptr<FragmentAllocationStrategy> &&allocation_strategy = {})