StarPU Handbook
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
starpu_fxt.h
Go to the documentation of this file.
1 /* StarPU --- Runtime system for heterogeneous multicore architectures.
2  *
3  * Copyright (C) 2010-2011, 2013 Université de Bordeaux
4  * Copyright (C) 2010, 2011, 2013 Centre National de la Recherche Scientifique
5  *
6  * StarPU is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU Lesser General Public License as published by
8  * the Free Software Foundation; either version 2.1 of the License, or (at
9  * your option) any later version.
10  *
11  * StarPU is distributed in the hope that it will be useful, but
12  * WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14  *
15  * See the GNU Lesser General Public License in COPYING.LGPL for more details.
16  */
17 
18 #ifndef __STARPU_FXT_H__
19 #define __STARPU_FXT_H__
20 
21 #include <starpu_perfmodel.h>
22 
23 #ifdef __cplusplus
24 extern "C"
25 {
26 #endif
27 
28 #define STARPU_FXT_MAX_FILES 64
29 
31 {
32  char symbol[256];
33  int workerid;
34  enum starpu_perfmodel_archtype archtype;
35  uint32_t hash;
36  size_t size;
37  float time;
38 };
39 
41 {
42  unsigned per_task_colour;
43  unsigned no_counter;
44  unsigned no_bus;
45  unsigned ninputfiles;
46  char *filenames[STARPU_FXT_MAX_FILES];
47  char *out_paje_path;
48  char *distrib_time_path;
49  char *activity_path;
50  char *dag_path;
51 
52  char *file_prefix;
53  uint64_t file_offset;
54  int file_rank;
55 
58  int nworkers;
59 
62 };
63 
64 void starpu_fxt_options_init(struct starpu_fxt_options *options);
65 void starpu_fxt_generate_trace(struct starpu_fxt_options *options);
67 void starpu_fxt_stop_profiling(void);
68 
69 #ifdef __cplusplus
70 }
71 #endif
72 
73 #endif /* __STARPU_FXT_H__ */