Class HeftBag
- java.lang.Object
-
- edu.isi.pegasus.planner.selector.site.heft.HeftBag
-
- All Implemented Interfaces:
edu.isi.pegasus.planner.partitioner.graph.Bag
public class HeftBag extends java.lang.Object implements edu.isi.pegasus.planner.partitioner.graph.Bag
A data class that implements the Bag interface and stores the extra information that is required by the HEFT algorithm for each node.- Version:
- $Revision$
- Author:
- Karan Vahi
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.Integer
ACTUAL_FINISH_TIME
The constant to be passed to the accessor functions to get or set the actual end time for a job.static java.lang.Integer
ACTUAL_START_TIME
The constant to be passed to the accessor functions to get or set the actual start time for a job.static java.lang.Integer
AVG_COMPUTE_TIME
The constant to be passed to the accessor functions to get or set the average compute time for the node.static java.lang.Integer
DOWNWARD_RANK
The constant to be passed to the accessor functions to get or set the downward rank for a node.static java.lang.String[]
HEFTINFO
Array storing the names of the attributes that are stored with the site.private float
mAvgComputeTime
The average compute time for a node.private float
mDownwardRank
The downward rank for a node.private long
mEndTime
The estimated end time for a job.private java.lang.String
mScheduledSite
The site where a job is scheduled to run.private long
mStartTime
The estimated start time for a job.private float
mUpwardRank
The upward rank for a node.static java.lang.Integer
SCHEDULED_SITE
The site where the job is scheduled.static java.lang.Integer
UPWARD_RANK
The constant to be passed to the accessor functions to get or set the upward rank for a node.
-
Constructor Summary
Constructors Constructor Description HeftBag()
The default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(java.lang.Object key, java.lang.Object value)
Adds an object to the underlying bag corresponding to a particular key.boolean
containsKey(java.lang.Object key)
Returns true if the namespace contains a mapping for the specified key.java.lang.Object
get(java.lang.Object key)
Returns an objects corresponding to the key passed.private int
getIntValue(java.lang.Object key)
A convenience method to get the intValue for the object passed.
-
-
-
Field Detail
-
HEFTINFO
public static final java.lang.String[] HEFTINFO
Array storing the names of the attributes that are stored with the site.
-
AVG_COMPUTE_TIME
public static final java.lang.Integer AVG_COMPUTE_TIME
The constant to be passed to the accessor functions to get or set the average compute time for the node.
-
DOWNWARD_RANK
public static final java.lang.Integer DOWNWARD_RANK
The constant to be passed to the accessor functions to get or set the downward rank for a node.
-
UPWARD_RANK
public static final java.lang.Integer UPWARD_RANK
The constant to be passed to the accessor functions to get or set the upward rank for a node.
-
ACTUAL_START_TIME
public static final java.lang.Integer ACTUAL_START_TIME
The constant to be passed to the accessor functions to get or set the actual start time for a job.
-
ACTUAL_FINISH_TIME
public static final java.lang.Integer ACTUAL_FINISH_TIME
The constant to be passed to the accessor functions to get or set the actual end time for a job.
-
SCHEDULED_SITE
public static final java.lang.Integer SCHEDULED_SITE
The site where the job is scheduled.
-
mAvgComputeTime
private float mAvgComputeTime
The average compute time for a node.
-
mDownwardRank
private float mDownwardRank
The downward rank for a node.
-
mUpwardRank
private float mUpwardRank
The upward rank for a node.
-
mStartTime
private long mStartTime
The estimated start time for a job.
-
mEndTime
private long mEndTime
The estimated end time for a job.
-
mScheduledSite
private java.lang.String mScheduledSite
The site where a job is scheduled to run.
-
-
Method Detail
-
add
public boolean add(java.lang.Object key, java.lang.Object value)
Adds an object to the underlying bag corresponding to a particular key.- Specified by:
add
in interfaceedu.isi.pegasus.planner.partitioner.graph.Bag
- Parameters:
key
- the key with which the value has to be associated.value
- the value to be associated with the key.- Returns:
- boolean indicating if insertion was successful.
-
containsKey
public boolean containsKey(java.lang.Object key)
Returns true if the namespace contains a mapping for the specified key.- Specified by:
containsKey
in interfaceedu.isi.pegasus.planner.partitioner.graph.Bag
- Parameters:
key
- The key that you want to search for in the bag.- Returns:
- boolean
-
get
public java.lang.Object get(java.lang.Object key)
Returns an objects corresponding to the key passed.- Specified by:
get
in interfaceedu.isi.pegasus.planner.partitioner.graph.Bag
- Parameters:
key
- the key corresponding to which the objects need to be returned.- Returns:
- the object that is found corresponding to the key or null.
-
getIntValue
private int getIntValue(java.lang.Object key)
A convenience method to get the intValue for the object passed.- Parameters:
key
- the key to be converted- Returns:
- the int value if object an integer, else -1
-
-