Multi-ApplicationOnlineProfiling  2.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Stream_Descriptor.h
Go to the documentation of this file.
1 /* ############################ MALP License ############################## */
2 /* # Fri Jan 18 14:00:00 CET 2013 # */
3 /* # Copyright or (C) or Copr. Commissariat a l'Energie Atomique # */
4 /* # # */
5 /* # This software is governed by the CeCILL-C license under French law # */
6 /* # and abiding by the rules of distribution of free software. You can # */
7 /* # use, modify and/ or redistribute the software under the terms of # */
8 /* # the CeCILL-C license as circulated by CEA, CNRS and INRIA at the # */
9 /* # following URL http://www.cecill.info. # */
10 /* # # */
11 /* # The fact that you are presently reading this means that you have # */
12 /* # had knowledge of the CeCILL-C license and that you accept its # */
13 /* # terms. # */
14 /* # # */
15 /* # Authors: # */
16 /* # - BESNARD Jean-Baptiste jean-baptiste.besnard@cea.fr # */
17 /* # # */
18 /* ######################################################################## */
19 
26 #ifndef STREAM_DESCRIPTOR_H
27 #define STREAM_DESCRIPTOR_H
28 
29 #ifdef __cplusplus
30 extern "C"
31 {
32 #endif
33 
38 typedef enum
39 {
48 
49 static const char * const Stream_type_names[MALP_TYPES_COUNT] =
50 {
51  "unknown",
52  "node",
53  "process",
54  "VCPU",
55  "task",
56  "thread"
57 };
58 
62 typedef enum
63 {
67 
68 
73 {
74  /* Global informations */
75  uint64_t tid;
76  uint64_t parent_tid;
77  uint64_t partition_id;
80  uint64_t pid;
81  uint64_t thread_id;
82 
83  /* Temporal informations */
84  uint64_t start_time;
85  uint64_t end_time;
87  /* Contextual informations */
88  uint64_t mpi_rank;
89  uint64_t omp_thread;
90  char hostname[32];
91 };
92 
93 
94 
95 
96 #ifdef __cplusplus
97 }
98 #endif
99 
100 #endif /* STREAM_DESCRIPTOR_H */
101 
uint64_t tid
id of the stream (see Stream_MGR_gen_id())
Source is a task.
uint64_t omp_thread
OpenMP thread id of the source of the stream.
static const char *const Stream_type_names[MALP_TYPES_COUNT]
Stream_type
enum defining the type of the source of the stream
Stream_Descriptor_type
enum defining a stream event type
Structure containing data related to a stream and intended to be sent as an event (see MALP_Trace_Eve...
uint64_t partition_id
id of the partition (mpi program that the stream belongs to)
event is stream release
uint64_t mpi_rank
mpi rank of the source of the stream
Stream_type type
the type of the source of the steram
uint64_t start_time
time at stream creation
Source is a virtual CPU.
event is stream creation
Source is a process.
char hostname[32]
name of the host running the source of the stream
Source is a node.
Stream_Descriptor_type desc_type
identifies whether this is a stream creation or release event
Source is a thread.
uint64_t end_time
time at stream release
uint64_t parent_tid
id of parent stream