wrench::HTCondorComputeService
-
class 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