Class Heft

  • All Implemented Interfaces:
    SiteSelector

    public class Heft
    extends Abstract
    The HEFT based site selector. The runtime for the job in seconds is picked from the pegasus profile key runtime in the transformation catalog for a transformation.

    The data communication costs between jobs if scheduled on different sites is assumed to be fixed. Later on if required, the ability to specify this value will be exposed via properties.

    The number of processors in a site is picked by the attribute idle-nodes associated with the vanilla jobmanager for a site in the site catalog.

    Version:
    $Revision$
    Author:
    Karan Vahi
    See Also:
    Algorithm.AVERAGE_BANDWIDTH, Algorithm.RUNTIME_PROFILE_KEY, Algorithm.DEFAULT_NUMBER_OF_FREE_NODES, Algorithm.AVERAGE_DATA_SIZE_BETWEEN_JOBS, GridGateway.mIdleNodes
    • Constructor Summary

      Constructors 
      Constructor Description
      Heft()
      The default constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String description()
      This method returns a String describing the site selection technique that is being implemented by the implementing class.
      void initialize​(edu.isi.pegasus.planner.classes.PegasusBag bag)
      Initializes the site selector.
      void mapWorkflow​(edu.isi.pegasus.planner.classes.ADag workflow, java.util.List sites)
      Maps the jobs in the workflow to the various grid sites.
      void mapWorkflow​(edu.isi.pegasus.planner.classes.ADag workflow, java.util.List sites, java.lang.String label)
      Maps the jobs in the workflow to the various grid sites.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • mHeftImpl

        private Algorithm mHeftImpl
        An instance of the class that implements the HEFT algorithm.
    • Constructor Detail

      • Heft

        public Heft()
        The default constructor.
    • Method Detail

      • initialize

        public void initialize​(edu.isi.pegasus.planner.classes.PegasusBag bag)
        Initializes the site selector.
        Specified by:
        initialize in interface SiteSelector
        Overrides:
        initialize in class Abstract
        Parameters:
        bag - the bag of objects that is useful for initialization.
      • mapWorkflow

        public void mapWorkflow​(edu.isi.pegasus.planner.classes.ADag workflow,
                                java.util.List sites)
        Maps the jobs in the workflow to the various grid sites. The jobs are mapped by setting the site handle for the jobs.
        Parameters:
        workflow - the workflow.
        sites - the list of String objects representing the execution sites that can be used.
      • mapWorkflow

        public void mapWorkflow​(edu.isi.pegasus.planner.classes.ADag workflow,
                                java.util.List sites,
                                java.lang.String label)
        Maps the jobs in the workflow to the various grid sites. The jobs are mapped by setting the site handle for the jobs.
        Parameters:
        workflow - the workflow in a Graph form.
        sites - the list of String objects representing the execution sites that can be used.
        label - the label of the workflow
      • description

        public java.lang.String description()
        This method returns a String describing the site selection technique that is being implemented by the implementing class.
        Returns:
        String