StarPU Internal Handbook

helper_mct.h
Go to the documentation of this file.
1/* StarPU --- Runtime system for heterogeneous multicore architectures.
2 *
3 * Copyright (C) 2013-2021 Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
4 *
5 * StarPU is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU Lesser General Public License as published by
7 * the Free Software Foundation; either version 2.1 of the License, or (at
8 * your option) any later version.
9 *
10 * StarPU is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 *
14 * See the GNU Lesser General Public License in COPYING.LGPL for more details.
15 */
16
19 struct _starpu_mct_data
20{
21 double alpha;
22 double beta;
23 double _gamma;
24 double idle_power;
25 starpu_pthread_mutex_t scheduling_mutex;
26};
27
28 struct _starpu_mct_data *starpu_mct_init_parameters(struct starpu_sched_component_mct_data *params);
29
30 unsigned starpu_mct_compute_execution_times(struct starpu_sched_component *component,
31 struct starpu_task *task,
32 double *estimated_lengths,
33 double *estimated_transfer_length,
34 unsigned *suitable_components);
35
36
37 void starpu_mct_compute_expected_times(struct starpu_sched_component *component,
38 struct starpu_task *task,
39 double *estimated_lengths,
40 double *estimated_transfer_length,
41 double *estimated_ends_with_task,
42 double *min_exp_end_with_task,
43 double *max_exp_end_with_task,
44 unsigned *suitable_components,
45 unsigned nsuitable_components);
46
47 double starpu_mct_compute_fitness(struct _starpu_mct_data * d,
48 double exp_end,
49 double min_exp_end,
50 double max_exp_end,
51 double transfer_len,
52 double local_energy);
53
54 int starpu_mct_get_best_component(struct _starpu_mct_data *d,
55 struct starpu_task *task,
56 double *estimated_lengths,
57 double *estimated_transfer_length,
58 double *estimated_ends_with_task,
59 double min_exp_end_with_task,
60 double max_exp_end_with_task,
61 unsigned *suitable_components,
62 unsigned nsuitable_components);
_starpu_mct_data
Definition: helper_mct.h:20