Class CloudUtils

  • Direct Known Subclasses:
    AWSUtils

    public abstract class CloudUtils
    extends Object
    • Field Detail

      • MINIMAL_EXECUTION_TIME

        public static final double MINIMAL_EXECUTION_TIME
        See Also:
        Constant Field Values
      • DEFAULT_CLUSTER_LAUNCH_TIME

        public static final double DEFAULT_CLUSTER_LAUNCH_TIME
        See Also:
        Constant Field Values
    • Constructor Detail

      • CloudUtils

        public CloudUtils()
    • Method Detail

      • GBtoBytes

        public static long GBtoBytes​(double gb)
      • validateInstanceName

        public abstract boolean validateInstanceName​(String instanceName)
      • calculateClusterPrice

        public abstract double calculateClusterPrice​(EnumerationUtils.ConfigurationPoint config,
                                                     double time)
        This method calculates the cluster price based on the estimated execution time and the cluster configuration.
        Parameters:
        config - the cluster configuration for the calculation
        time - estimated execution time in seconds
        Returns:
        price for the given time
      • loadInstanceInfoTable

        public HashMap<String,​CloudInstance> loadInstanceInfoTable​(String instanceTablePath)
                                                                  throws IOException
        Performs read of csv file filled with VM instance characteristics. Each record in the csv should carry the following information (including header):
        • API_Name - naming for VM instance used by the provider
        • Memory - floating number for the instance memory in GBs
        • vCPUs - number of physical threads
        • gFlops - FLOPS capability of the CPU in GFLOPS (Giga)
        • ramSpeed - memory bandwidth in MB/s
        • diskSpeed - memory bandwidth in MB/s
        • networkSpeed - memory bandwidth in MB/s
        • Price - price for instance per hour
        Parameters:
        instanceTablePath - csv file
        Returns:
        map with filtered instances
        Throws:
        IOException - in case problem at reading the csv file