A batch-scheduled compute service that manages a set of compute hosts and controls access to their resource via a batch queue. More...
#include <BatchComputeService.h>
Public Member Functions | |
BatchComputeService (const std::string &hostname, std::vector< std::string > compute_hosts, std::string scratch_space_mount_point, std::map< std::string, std::string > property_list={}, std::map< std::string, double > messagepayload_list={}) | |
Constructor. More... | |
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 batch-scheduled compute service that manages a set of compute hosts and controls access to their resource via a batch queue.
In the current implementation of this service, like for many of its real-world counterparts, memory_manager_service partitioning among jobs onq the same host is not handled. When multiple jobs share hosts, which can happen when jobs require only a few cores per host and can thus be co-located on the same hosts in a non-exclusive fashion, each job simply runs as if it had access to the full RAM of each compute host it is scheduled on. The simulation of these memory_manager_service contended scenarios is thus, for now, not realistic as there is no simulation of the effects of memory_manager_service sharing (e.g., swapping).
Constructor & Destructor Documentation
◆ BatchComputeService()
wrench::BatchComputeService::BatchComputeService | ( | const std::string & | hostname, |
std::vector< std::string > | compute_hosts, | ||
std::string | scratch_space_mount_point, | ||
std::map< std::string, std::string > | property_list = {} , |
||
std::map< std::string, double > | messagepayload_list = {} |
||
) |
Constructor.
- Parameters
-
hostname the hostname on which to start the service compute_hosts the list of names of the available compute hosts - the hosts must be homogeneous (speed, number of cores, and RAM size)
- all cores are usable by the batch service on each host
- all RAM is usable by the batch service on each host
scratch_space_mount_point the mount point of the scratch storage space for the service ("" means "no scratch space") property_list a property list that specifies BatchComputeServiceProperty values ({} means "use all defaults") messagepayload_list a message payload list that specifies BatchComputeServiceMessagePayload values ({} means "use all defaults")
The documentation for this class was generated from the following files:
- BatchComputeService.h
- BatchComputeService.cpp