java.lang.Object
edu.isi.pegasus.planner.selector.site.Abstract
edu.isi.pegasus.planner.selector.site.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:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private Algorithm
    An instance of the class that implements the HEFT algorithm.

    Fields inherited from class edu.isi.pegasus.planner.selector.site.Abstract

    mBag, mLogger, mProps, mSiteStore, mTCMapper

    Fields inherited from interface edu.isi.pegasus.planner.selector.SiteSelector

    SITE_NOT_FOUND, VERSION
  • Constructor Summary

    Constructors
    Constructor
    Description
    The default constructor.
  • Method Summary

    Modifier and Type
    Method
    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, List sites)
    Maps the jobs in the workflow to the various grid sites.
    void
    mapWorkflow(edu.isi.pegasus.planner.classes.ADag workflow, List sites, 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 Details

    • mHeftImpl

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

    • Heft

      public Heft()
      The default constructor.
  • Method Details

    • 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, 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, List sites, 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 String description()
      This method returns a String describing the site selection technique that is being implemented by the implementing class.
      Returns:
      String