CloudInstance (Apache SystemDS 3.4.0-SNAPSHOT API)
- java.lang.Object
-
- org.apache.sysds.resource.CloudInstance
-
public class CloudInstance extends Object
This class describes the configurations of a single VM instance. The idea is to use this class to represent instances of different cloud hypervisors - currently supporting only EC2 instances by AWS.
-
-
Constructor Summary
Constructors Constructor Description CloudInstance​(String instanceName, double pricePerHour, double extraFee, double storagePrice, long memory, int vCPUCores, double GFlops, double memoryBandwidth, double diskReadBandwidth, double diskWriteBandwidth, double networkBandwidth, boolean NVMeStorage, int numberStorageVolumes, double sizeStorageVolumes)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doublegetDiskReadBandwidth()doublegetDiskWriteBandwidth()doublegetExtraFee()doublegetExtraStoragePrice()longgetFLOPS()StringgetInstanceName()longgetMemory()doublegetMemoryBandwidth()doublegetNetworkBandwidth()intgetNumStorageVolumes()doublegetPrice()doublegetSizeStoragePerVolume()intgetVCPUs()booleanisNVMeStorage()
-
-
-
Constructor Detail
-
CloudInstance
public CloudInstance​(String instanceName, double pricePerHour, double extraFee, double storagePrice, long memory, int vCPUCores, double GFlops, double memoryBandwidth, double diskReadBandwidth, double diskWriteBandwidth, double networkBandwidth, boolean NVMeStorage, int numberStorageVolumes, double sizeStorageVolumes)
-
-
Method Detail
-
getInstanceName
public String getInstanceName()
-
getMemory
public long getMemory()
- Returns:
- memory of the instance in B
-
getVCPUs
public int getVCPUs()
- Returns:
- number of virtual CPU cores of the instance
-
getPrice
public double getPrice()
- Returns:
- price per second of the instance
-
getExtraStoragePrice
public double getExtraStoragePrice()
- Returns:
- price per second of whole extra storage (to be) attached
-
getExtraFee
public double getExtraFee()
- Returns:
- price per second for extra fee per instance (cluster management)
-
getFLOPS
public long getFLOPS()
- Returns:
- number of FLOPS of the instance
-
getMemoryBandwidth
public double getMemoryBandwidth()
- Returns:
- memory bandwidth of the instance in MB/s
-
getDiskReadBandwidth
public double getDiskReadBandwidth()
- Returns:
- disk read bandwidth of the instance in MB/s
-
getDiskWriteBandwidth
public double getDiskWriteBandwidth()
- Returns:
- disk write bandwidth of the instance in MB/s
-
getNetworkBandwidth
public double getNetworkBandwidth()
- Returns:
- network bandwidth of the instance in MB/s
-
isNVMeStorage
public boolean isNVMeStorage()
- Returns:
- flag if the instance has attached NVMe-based storage volume(s)
-
getNumStorageVolumes
public int getNumStorageVolumes()
- Returns:
- number of storage volumes (attached or to be configured)
-
getSizeStoragePerVolume
public double getSizeStoragePerVolume()
- Returns:
- size of each storage volume (all equally sized) in GB
-
-