![]() |
1.4 (revision 3771)
|
00001 /* 00002 * This file is part of the Score-P software (http://www.score-p.org) 00003 * 00004 * Copyright (c) 2009-2012, 00005 * RWTH Aachen University, Germany 00006 * 00007 * Copyright (c) 2009-2012, 00008 * Gesellschaft fuer numerische Simulation mbH Braunschweig, Germany 00009 * 00010 * Copyright (c) 2009-2012, 00011 * Technische Universitaet Dresden, Germany 00012 * 00013 * Copyright (c) 2009-2012, 00014 * University of Oregon, Eugene, USA 00015 * 00016 * Copyright (c) 2009-2012, 00017 * Forschungszentrum Juelich GmbH, Germany 00018 * 00019 * Copyright (c) 2009-2012, 00020 * German Research School for Simulation Sciences GmbH, Juelich/Aachen, Germany 00021 * 00022 * Copyright (c) 2009-2012, 00023 * Technische Universitaet Muenchen, Germany 00024 * 00025 * This software may be modified and distributed under the terms of 00026 * a BSD-style license. See the COPYING file in the package base 00027 * directory for details. 00028 * 00029 */ 00030 00031 00032 #ifndef OTF2_DEFINITIONS_H 00033 #define OTF2_DEFINITIONS_H 00034 00035 00044 #include <otf2/OTF2_ErrorCodes.h> 00045 00046 00047 #include <otf2/OTF2_GeneralDefinitions.h> 00048 00049 00050 #ifdef __cplusplus 00051 extern "C" { 00052 #endif /* __cplusplus */ 00053 00054 00056 typedef uint8_t OTF2_SystemTreeDomain; 00057 00063 enum OTF2_SystemTreeDomain_enum 00064 { 00068 OTF2_SYSTEM_TREE_DOMAIN_MACHINE = 0, 00072 OTF2_SYSTEM_TREE_DOMAIN_SHARED_MEMORY = 1, 00076 OTF2_SYSTEM_TREE_DOMAIN_NUMA = 2, 00080 OTF2_SYSTEM_TREE_DOMAIN_SOCKET = 3, 00083 OTF2_SYSTEM_TREE_DOMAIN_CACHE = 4, 00087 OTF2_SYSTEM_TREE_DOMAIN_CORE = 5, 00090 OTF2_SYSTEM_TREE_DOMAIN_PU = 6 00091 }; 00092 00093 00095 typedef uint8_t OTF2_LocationGroupType; 00096 00102 enum OTF2_LocationGroupType_enum 00103 { 00106 OTF2_LOCATION_GROUP_TYPE_UNKNOWN = 0, 00109 OTF2_LOCATION_GROUP_TYPE_PROCESS = 1 00110 }; 00111 00112 00114 typedef uint8_t OTF2_LocationType; 00115 00121 enum OTF2_LocationType_enum 00122 { 00125 OTF2_LOCATION_TYPE_UNKNOWN = 0, 00128 OTF2_LOCATION_TYPE_CPU_THREAD = 1, 00131 OTF2_LOCATION_TYPE_GPU = 2, 00134 OTF2_LOCATION_TYPE_METRIC = 3 00135 }; 00136 00137 00139 typedef uint8_t OTF2_RegionRole; 00140 00146 enum OTF2_RegionRole_enum 00147 { 00150 OTF2_REGION_ROLE_UNKNOWN = 0, 00153 OTF2_REGION_ROLE_FUNCTION = 1, 00156 OTF2_REGION_ROLE_WRAPPER = 2, 00159 OTF2_REGION_ROLE_LOOP = 3, 00162 OTF2_REGION_ROLE_CODE = 4, 00165 OTF2_REGION_ROLE_PARALLEL = 5, 00168 OTF2_REGION_ROLE_SECTIONS = 6, 00171 OTF2_REGION_ROLE_SECTION = 7, 00174 OTF2_REGION_ROLE_WORKSHARE = 8, 00177 OTF2_REGION_ROLE_SINGLE = 9, 00180 OTF2_REGION_ROLE_SINGLE_SBLOCK = 10, 00183 OTF2_REGION_ROLE_MASTER = 11, 00186 OTF2_REGION_ROLE_CRITICAL = 12, 00189 OTF2_REGION_ROLE_CRITICAL_SBLOCK = 13, 00192 OTF2_REGION_ROLE_ATOMIC = 14, 00195 OTF2_REGION_ROLE_BARRIER = 15, 00198 OTF2_REGION_ROLE_IMPLICIT_BARRIER = 16, 00201 OTF2_REGION_ROLE_FLUSH = 17, 00204 OTF2_REGION_ROLE_ORDERED = 18, 00207 OTF2_REGION_ROLE_ORDERED_SBLOCK = 19, 00210 OTF2_REGION_ROLE_TASK = 20, 00213 OTF2_REGION_ROLE_TASK_CREATE = 21, 00216 OTF2_REGION_ROLE_TASK_WAIT = 22, 00219 OTF2_REGION_ROLE_COLL_ONE2ALL = 23, 00222 OTF2_REGION_ROLE_COLL_ALL2ONE = 24, 00225 OTF2_REGION_ROLE_COLL_ALL2ALL = 25, 00228 OTF2_REGION_ROLE_COLL_OTHER = 26, 00231 OTF2_REGION_ROLE_FILE_IO = 27, 00234 OTF2_REGION_ROLE_POINT2POINT = 28, 00237 OTF2_REGION_ROLE_RMA = 29, 00240 OTF2_REGION_ROLE_DATA_TRANSFER = 30, 00244 OTF2_REGION_ROLE_ARTIFICIAL = 31, 00247 OTF2_REGION_ROLE_THREAD_CREATE = 32, 00251 OTF2_REGION_ROLE_THREAD_WAIT = 33 00252 }; 00253 00254 00256 typedef uint32_t OTF2_RegionFlag; 00257 00263 enum OTF2_RegionFlag_enum 00264 { 00267 OTF2_REGION_FLAG_NONE = 0, 00271 OTF2_REGION_FLAG_DYNAMIC = ( 1 << 0 ), 00275 OTF2_REGION_FLAG_PHASE = ( 1 << 1 ) 00276 }; 00277 00278 00280 typedef uint8_t OTF2_GroupType; 00281 00287 enum OTF2_GroupType_enum 00288 { 00291 OTF2_GROUP_TYPE_UNKNOWN = 0, 00294 OTF2_GROUP_TYPE_LOCATIONS = 1, 00297 OTF2_GROUP_TYPE_REGIONS = 2, 00300 OTF2_GROUP_TYPE_METRIC = 3, 00319 OTF2_GROUP_TYPE_COMM_LOCATIONS = 4, 00325 OTF2_GROUP_TYPE_COMM_GROUP = 5, 00330 OTF2_GROUP_TYPE_COMM_SELF = 6 00331 }; 00332 00333 00335 typedef uint32_t OTF2_GroupFlag; 00336 00342 enum OTF2_GroupFlag_enum 00343 { 00346 OTF2_GROUP_FLAG_NONE = 0, 00352 OTF2_GROUP_FLAG_GLOBAL_MEMBERS = ( 1 << 0 ) 00353 }; 00354 00355 00357 typedef uint8_t OTF2_MetricOccurrence; 00358 00364 enum OTF2_MetricOccurrence_enum 00365 { 00368 OTF2_METRIC_SYNCHRONOUS_STRICT = 0, 00372 OTF2_METRIC_SYNCHRONOUS = 1, 00376 OTF2_METRIC_ASYNCHRONOUS = 2 00377 }; 00378 00379 00381 typedef uint8_t OTF2_MetricType; 00382 00388 enum OTF2_MetricType_enum 00389 { 00392 OTF2_METRIC_TYPE_OTHER = 0, 00395 OTF2_METRIC_TYPE_PAPI = 1, 00398 OTF2_METRIC_TYPE_RUSAGE = 2, 00401 OTF2_METRIC_TYPE_USER = 3 00402 }; 00403 00404 00406 typedef uint8_t OTF2_MetricValueProperty; 00407 00414 enum OTF2_MetricValueProperty_enum 00415 { 00419 OTF2_METRIC_VALUE_ACCUMULATED = 0, 00422 OTF2_METRIC_VALUE_ABSOLUTE = 1, 00425 OTF2_METRIC_VALUE_RELATIVE = 2, 00426 00430 OTF2_METRIC_VALUE_MASK = 15 /* xxxx1111 */ 00431 }; 00432 00433 00435 typedef uint8_t OTF2_MetricTiming; 00436 00444 enum OTF2_MetricTiming_enum 00445 { 00449 OTF2_METRIC_TIMING_START = 0, 00453 OTF2_METRIC_TIMING_POINT = 1 << 4, 00457 OTF2_METRIC_TIMING_LAST = 2 << 4, 00461 OTF2_METRIC_TIMING_NEXT = 3 << 4, 00462 00466 OTF2_METRIC_TIMING_MASK = 240 /* 1111xxxx */ 00467 }; 00468 00469 00471 typedef uint8_t OTF2_MetricMode; 00472 00478 enum OTF2_MetricMode_enum 00479 { 00482 OTF2_METRIC_ACCUMULATED_START = OTF2_METRIC_VALUE_ACCUMULATED | OTF2_METRIC_TIMING_START, 00485 OTF2_METRIC_ACCUMULATED_POINT = OTF2_METRIC_VALUE_ACCUMULATED | OTF2_METRIC_TIMING_POINT, 00488 OTF2_METRIC_ACCUMULATED_LAST = OTF2_METRIC_VALUE_ACCUMULATED | OTF2_METRIC_TIMING_LAST, 00491 OTF2_METRIC_ACCUMULATED_NEXT = OTF2_METRIC_VALUE_ACCUMULATED | OTF2_METRIC_TIMING_NEXT, 00494 OTF2_METRIC_ABSOLUTE_POINT = OTF2_METRIC_VALUE_ABSOLUTE | OTF2_METRIC_TIMING_POINT, 00497 OTF2_METRIC_ABSOLUTE_LAST = OTF2_METRIC_VALUE_ABSOLUTE | OTF2_METRIC_TIMING_LAST, 00500 OTF2_METRIC_ABSOLUTE_NEXT = OTF2_METRIC_VALUE_ABSOLUTE | OTF2_METRIC_TIMING_NEXT, 00503 OTF2_METRIC_RELATIVE_POINT = OTF2_METRIC_VALUE_RELATIVE | OTF2_METRIC_TIMING_POINT, 00506 OTF2_METRIC_RELATIVE_LAST = OTF2_METRIC_VALUE_RELATIVE | OTF2_METRIC_TIMING_LAST, 00509 OTF2_METRIC_RELATIVE_NEXT = OTF2_METRIC_VALUE_RELATIVE | OTF2_METRIC_TIMING_NEXT 00510 }; 00511 00512 00514 typedef uint8_t OTF2_MetricBase; 00515 00521 enum OTF2_MetricBase_enum 00522 { 00525 OTF2_BASE_BINARY = 0, 00528 OTF2_BASE_DECIMAL = 1 00529 }; 00530 00531 00533 typedef uint8_t OTF2_MetricScope; 00534 00540 enum OTF2_MetricScope_enum 00541 { 00544 OTF2_SCOPE_LOCATION = 0, 00547 OTF2_SCOPE_LOCATION_GROUP = 1, 00550 OTF2_SCOPE_SYSTEM_TREE_NODE = 2, 00553 OTF2_SCOPE_GROUP = 3 00554 }; 00555 00556 00558 typedef uint8_t OTF2_RecorderKind; 00559 00565 enum OTF2_RecorderKind_enum 00566 { 00569 OTF2_RECORDER_KIND_UNKNOWN = 0, 00573 OTF2_RECORDER_KIND_ABSTRACT = 1, 00577 OTF2_RECORDER_KIND_CPU = 2, 00581 OTF2_RECORDER_KIND_GPU = 3 00582 }; 00583 00584 00586 typedef uint8_t OTF2_ParameterType; 00587 00593 enum OTF2_ParameterType_enum 00594 { 00597 OTF2_PARAMETER_TYPE_STRING = 0, 00600 OTF2_PARAMETER_TYPE_INT64 = 1, 00603 OTF2_PARAMETER_TYPE_UINT64 = 2 00604 }; 00605 00606 00608 typedef uint8_t OTF2_CartPeriodicity; 00609 00615 enum OTF2_CartPeriodicity_enum 00616 { 00619 OTF2_CART_PERIODIC_FALSE = 0, 00622 OTF2_CART_PERIODIC_TRUE = 1 00623 }; 00624 00625 00626 #ifdef __cplusplus 00627 } 00628 #endif /* __cplusplus */ 00629 00630 00631 #endif /* OTF2_DEFINITIONS_H */