wrench::HTCondorComputeService
-
class wrench::HTCondorComputeService : public wrench::ComputeService
A workload management framework compute service.
Public Functions
Constructor.
- Parameters
hostname – the name of the host on which to start the service
compute_services – a set of ‘child’ compute services that have been added to the simulation and that are available to and usable through the HTCondor pool.
BatchComputeService instances will be used for Condor jobs in the “grid” universe
BareMetalComputeService instances will be used for Condor jobs not in the “grid” universe
other types of compute services are disallowed
property_list – a property list ({} means “use all defaults”)
messagepayload_list – a message payload list ({} means “use all defaults”)
- Throws
std::runtime_error –
Add a new ‘child’ compute service.
- Parameters
compute_service – the compute service to add
-
std::shared_ptr<StorageService> getLocalStorageService() const
Get the service’s local storage service.
- Returns
the local storage service object
Set the service’s local storage service.
- Parameters
local_storage_service – a storage service
Submit a compound job to the HTCondor service.
- Parameters
job – a compound job
service_specific_args – service specific arguments
- Throws
std::runtime_error –
-
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
-
void validateJobsUseOfScratch(std::map<std::string, std::string> &service_specific_args) override
Determine whether compute service has scratch.
- Parameters
service_specific_args – the service-specific arguments (useful for some services)
Method the validates service-specific arguments (throws std::invalid_argument if invalid)
- Parameters
job – the job that’s being submitted
service_specific_args – the service-specific arguments