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

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