wrench::HTCondorCentralManagerService

class HTCondorCentralManagerService : public wrench::ComputeService

A HTCondor central manager service implementation.

Public Functions

HTCondorCentralManagerService(const std::string &hostname, double negotiator_startup_overhead, double grid_pre_overhead, double grid_post_overhead, double non_grid_pre_overhead, double non_grid_post_overhead, std::set<std::shared_ptr<ComputeService>> compute_services, WRENCH_PROPERTY_COLLECTION_TYPE property_list = {}, WRENCH_MESSAGE_PAYLOADCOLLECTION_TYPE messagepayload_list = {})

Constructor.

Parameters
  • hostname – the hostname on which to start the service

  • negotiator_startup_overhead – negotiator startup overhead

  • grid_pre_overhead – grid job pre-overhead

  • grid_post_overhead – grid job post-overhead

  • non_grid_pre_overhead – non-grid job pre-overhead

  • non_grid_post_overhead – non-grid job post-overhead

  • compute_services – a set of ‘child’ compute resources available to and via the HTCondor pool

  • property_list – a property list ({} means “use all defaults”)

  • messagepayload_list – a message payload list ({} means “use all defaults”)

Throws

std::runtime_error

~HTCondorCentralManagerService() override

Destructor.

void addComputeService(std::shared_ptr<ComputeService> compute_service)

Add a new ‘child’ compute service.

Parameters

compute_service – the compute service to add

bool jobCanRunSomewhere(std::shared_ptr<CompoundJob> job, std::map<std::string, std::string> service_specific_arguments)

Helper function to check whether a job can run on at least one child compute service.

Parameters
  • job – the job

  • service_specific_arguments – the service-specific argument

Returns

true or false

bool jobKindIsSupported(const std::shared_ptr<Job> &job, std::map<std::string, std::string> service_specific_arguments)

Helper function to check whether a job kind is supported.

Parameters
  • job – the job

  • service_specific_arguments – the service-specific argument

Returns

true or false

virtual void submitCompoundJob(std::shared_ptr<CompoundJob> job, const std::map<std::string, std::string> &service_specific_arguments) override

Submit a compound job to the HTCondor service.

Parameters
  • job – a compound job

  • service_specific_args – service specific arguments

Throws
virtual bool supportsCompoundJobs() override

Returns true if the service supports compound jobs.

Returns

true or false

virtual bool supportsPilotJobs() override

Returns true if the service supports pilot jobs.

Returns

true or false

virtual bool supportsStandardJobs() override

Returns true if the service supports standard jobs.

Returns

true or false

inline virtual void terminateCompoundJob(std::shared_ptr<CompoundJob> job) override

Method to terminate a compound job.

Parameters

job – the standard job