source: DCWoRMS/trunk/src/schedframe/scheduling/plugin/estimation/ExecutionTimeEstimationPlugin.java @ 477

Revision 477, 1.3 KB checked in by wojtekp, 13 years ago (diff)
  • Property svn:mime-type set to text/plain
Line 
1package schedframe.scheduling.plugin.estimation;
2
3import gssim.schedframe.scheduling.ExecTask;
4
5import java.util.Map;
6
7import schedframe.Plugin;
8import schedframe.events.scheduling.SchedulingEvent;
9import schedframe.resources.units.ResourceUnit;
10import schedframe.resources.units.ResourceUnitName;
11
12/**
13 * This interface is responsible for estimation of task execution time. It
14 * provides all necessary information to compute execution time. In general, the
15 * major method allow to develop different approaches and strategies of
16 * execution time computation. Ratings of processors, available memory, length
17 * of task (number of CPU instructions) and task requirements are used to
18 * specify duration of the task. The interface method returns an estimated
19 * execution time of the task, which is then applied to simulation.
20 *
21 * @author Marcin Krystek
22 *
23 */
24public interface ExecutionTimeEstimationPlugin extends Plugin {
25
26        /**
27         *
28         * @param allocatedResources resource units allocated for task execution
29         * @param task which will be executed
30         * @param remainingLength
31         * @return estimated execution time of a task of specified length
32         */
33        public double execTimeEstimation(SchedulingEvent event, ExecTask task, Map<ResourceUnitName, ResourceUnit> allocatedResources,
34                                                                        double completionPercentage);
35       
36
37}
Note: See TracBrowser for help on using the repository browser.