Class FragmentScheduler

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.

© Copyright 2022-2023, NVIDIA. Last updated on Sep 13, 2023.