A workload management framework compute service. More...
#include <HTCondorComputeService.h>
Public Member Functions | |
HTCondorComputeService (const std::string &hostname, const std::string &pool_name, std::set< ComputeService * > compute_resources, std::map< std::string, std::string > property_list={}, std::map< std::string, double > messagepayload_list={}, ComputeService *grid_universe_batch_service=nullptr) | |
Constructor. More... | |
std::shared_ptr< StorageService > | getLocalStorageService () const |
Get the service's local storage service. More... | |
void | setLocalStorageService (std::shared_ptr< StorageService > local_storage_service) |
Set the service's local storage service. More... | |
void | submitPilotJob (std::shared_ptr< PilotJob > job, const std::map< std::string, std::string > &service_specific_arguments) override |
Asynchronously submit a pilot job to the cloud service. More... | |
void | submitStandardJob (std::shared_ptr< StandardJob > job, const std::map< std::string, std::string > &service_specific_arguments) override |
Submit a standard job to the HTCondor service. More... | |
bool | supportsGridUniverse () |
Get whether Condor supports Grid Universe for jobs. More... | |
Public Member Functions inherited from wrench::ComputeService | |
std::map< std::string, double > | getCoreFlopRate () |
Get the per-core flop rate of the compute service's hosts. More... | |
double | getFreeScratchSpaceSize () |
Get the free space on the compute service's scratch storage space. More... | |
std::map< std::string, double > | getMemoryCapacity () |
Get the RAM capacities for each of the compute service's hosts. More... | |
unsigned long | getNumHosts () |
Get the number of hosts that the compute service manages. More... | |
std::map< std::string, double > | getPerHostAvailableMemoryCapacity () |
Get ram availability for each of the compute service's host. More... | |
std::map< std::string, unsigned long > | getPerHostNumCores () |
Get core counts for each of the compute service's host. More... | |
std::map< std::string, unsigned long > | getPerHostNumIdleCores () |
Get idle core counts for each of the compute service's host. More... | |
std::shared_ptr< StorageService > | getScratchSharedPtr () |
Get a shared pointer to the compute service's scratch storage space. More... | |
unsigned long | getTotalNumCores () |
Get the total core counts for all hosts of the compute service. More... | |
virtual unsigned long | getTotalNumIdleCores () |
Get the total idle core count for all hosts of the compute service. More... | |
double | getTotalScratchSpaceSize () |
Get the total capacity of the compute service's scratch storage space. More... | |
double | getTTL () |
Get the time-to-live of the compute service. More... | |
bool | hasScratch () |
Checks if the compute service has a scratch space. More... | |
void | stop () override |
Stop the compute service - must be called by the stop() method of derived classes. | |
bool | supportsPilotJobs () |
Get whether the compute service supports pilot jobs or not. More... | |
bool | supportsStandardJobs () |
Get whether the compute service supports standard jobs or not. More... | |
void | terminateJob (std::shared_ptr< WorkflowJob > job) |
Terminate a previously-submitted job (which may or may not be running yet) More... | |
Public Member Functions inherited from wrench::Service | |
void | assertServiceIsUp () |
Throws an exception if the service is not up. More... | |
std::string | getHostname () |
Get the name of the host on which the service is / will be running. More... | |
double | getNetworkTimeoutValue () |
Returns the service's network timeout value. More... | |
bool | getPropertyValueAsBoolean (std::string) |
Get a property of the Service as a boolean. More... | |
double | getPropertyValueAsDouble (std::string) |
Get a property of the Service as a double. More... | |
std::string | getPropertyValueAsString (std::string) |
Get a property of the Service as a string. More... | |
unsigned long | getPropertyValueAsUnsignedLong (std::string) |
Get a property of the Service as an unsigned long. More... | |
bool | isUp () |
Returns true if the service is UP, false otherwise. More... | |
void | resume () |
Resume the service. More... | |
void | setNetworkTimeoutValue (double value) |
Sets the service's network timeout value. More... | |
void | start (std::shared_ptr< Service > this_service, bool daemonize, bool auto_restart) |
Start the service. More... | |
void | suspend () |
Suspend the service. | |
Additional Inherited Members | |
Static Public Attributes inherited from wrench::ComputeService | |
static constexpr unsigned long | ALL_CORES = ULONG_MAX |
A convenient constant to mean "use all cores of a physical host" whenever a number of cores is needed when instantiating compute services. | |
static constexpr double | ALL_RAM = DBL_MAX |
A convenient constant to mean "use all ram of a physical host" whenever a ram capacity is needed when instantiating compute services. | |
Detailed Description
A workload management framework compute service.
Constructor & Destructor Documentation
◆ HTCondorComputeService()
wrench::HTCondorComputeService::HTCondorComputeService | ( | const std::string & | hostname, |
const std::string & | pool_name, | ||
std::set< ComputeService * > | compute_resources, | ||
std::map< std::string, std::string > | property_list = {} , |
||
std::map< std::string, double > | messagepayload_list = {} , |
||
ComputeService * | grid_universe_batch_service = nullptr |
||
) |
Constructor.
- Parameters
-
hostname the hostname on which to start the service pool_name HTCondor pool name compute_resources a set of compute resources available via the HTCondor pool property_list a property list ({} means "use all defaults") messagepayload_list a message payload list ({} means "use all defaults") grid_universe_batch_service batch service for grid universe jobs to be sent. Not used for vanilla or unspecified universe jobs
- Exceptions
-
std::runtime_error
Member Function Documentation
◆ getLocalStorageService()
std::shared_ptr< StorageService > wrench::HTCondorComputeService::getLocalStorageService | ( | ) | const |
Get the service's local storage service.
- Returns
- the local storage service object
◆ setLocalStorageService()
void wrench::HTCondorComputeService::setLocalStorageService | ( | std::shared_ptr< StorageService > | local_storage_service | ) |
Set the service's local storage service.
- Parameters
-
local_storage_service a storage service
◆ submitPilotJob()
|
override |
Asynchronously submit a pilot job to the cloud service.
- Parameters
-
job a pilot job service_specific_args service specific arguments
- Exceptions
-
WorkflowExecutionException std::runtime_error
◆ submitStandardJob()
|
override |
Submit a standard job to the HTCondor service.
- Parameters
-
job a standard job service_specific_args service specific arguments
- Exceptions
-
WorkflowExecutionException std::runtime_error
◆ supportsGridUniverse()
bool wrench::HTCondorComputeService::supportsGridUniverse | ( | ) |
Get whether Condor supports Grid Universe for jobs.
- Returns
- true or false
The documentation for this class was generated from the following files:
- HTCondorComputeService.h
- HTCondorComputeService.cpp