![]() |
1.5.1 (revision 4026)
|
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, 00245 OTF2_REGION_ROLE_ARTIFICIAL = 31, 00250 OTF2_REGION_ROLE_THREAD_CREATE = 32, 00255 OTF2_REGION_ROLE_THREAD_WAIT = 33, 00260 OTF2_REGION_ROLE_TASK_UNTIED = 34 00261 }; 00262 00263 00265 typedef uint32_t OTF2_RegionFlag; 00266 00272 enum OTF2_RegionFlag_enum 00273 { 00276 OTF2_REGION_FLAG_NONE = 0, 00280 OTF2_REGION_FLAG_DYNAMIC = ( 1 << 0 ), 00284 OTF2_REGION_FLAG_PHASE = ( 1 << 1 ) 00285 }; 00286 00287 00289 typedef uint8_t OTF2_GroupType; 00290 00296 enum OTF2_GroupType_enum 00297 { 00300 OTF2_GROUP_TYPE_UNKNOWN = 0, 00303 OTF2_GROUP_TYPE_LOCATIONS = 1, 00306 OTF2_GROUP_TYPE_REGIONS = 2, 00309 OTF2_GROUP_TYPE_METRIC = 3, 00328 OTF2_GROUP_TYPE_COMM_LOCATIONS = 4, 00334 OTF2_GROUP_TYPE_COMM_GROUP = 5, 00339 OTF2_GROUP_TYPE_COMM_SELF = 6 00340 }; 00341 00342 00344 typedef uint32_t OTF2_GroupFlag; 00345 00351 enum OTF2_GroupFlag_enum 00352 { 00355 OTF2_GROUP_FLAG_NONE = 0, 00361 OTF2_GROUP_FLAG_GLOBAL_MEMBERS = ( 1 << 0 ) 00362 }; 00363 00364 00366 typedef uint8_t OTF2_MetricOccurrence; 00367 00373 enum OTF2_MetricOccurrence_enum 00374 { 00377 OTF2_METRIC_SYNCHRONOUS_STRICT = 0, 00381 OTF2_METRIC_SYNCHRONOUS = 1, 00385 OTF2_METRIC_ASYNCHRONOUS = 2 00386 }; 00387 00388 00390 typedef uint8_t OTF2_MetricType; 00391 00397 enum OTF2_MetricType_enum 00398 { 00401 OTF2_METRIC_TYPE_OTHER = 0, 00404 OTF2_METRIC_TYPE_PAPI = 1, 00407 OTF2_METRIC_TYPE_RUSAGE = 2, 00410 OTF2_METRIC_TYPE_USER = 3 00411 }; 00412 00413 00415 typedef uint8_t OTF2_MetricValueProperty; 00416 00423 enum OTF2_MetricValueProperty_enum 00424 { 00428 OTF2_METRIC_VALUE_ACCUMULATED = 0, 00431 OTF2_METRIC_VALUE_ABSOLUTE = 1, 00434 OTF2_METRIC_VALUE_RELATIVE = 2, 00435 00439 OTF2_METRIC_VALUE_MASK = 15 /* xxxx1111 */ 00440 }; 00441 00442 00444 typedef uint8_t OTF2_MetricTiming; 00445 00453 enum OTF2_MetricTiming_enum 00454 { 00458 OTF2_METRIC_TIMING_START = 0, 00462 OTF2_METRIC_TIMING_POINT = 1 << 4, 00466 OTF2_METRIC_TIMING_LAST = 2 << 4, 00470 OTF2_METRIC_TIMING_NEXT = 3 << 4, 00471 00475 OTF2_METRIC_TIMING_MASK = 240 /* 1111xxxx */ 00476 }; 00477 00478 00480 typedef uint8_t OTF2_MetricMode; 00481 00487 enum OTF2_MetricMode_enum 00488 { 00491 OTF2_METRIC_ACCUMULATED_START = OTF2_METRIC_VALUE_ACCUMULATED | OTF2_METRIC_TIMING_START, 00494 OTF2_METRIC_ACCUMULATED_POINT = OTF2_METRIC_VALUE_ACCUMULATED | OTF2_METRIC_TIMING_POINT, 00497 OTF2_METRIC_ACCUMULATED_LAST = OTF2_METRIC_VALUE_ACCUMULATED | OTF2_METRIC_TIMING_LAST, 00500 OTF2_METRIC_ACCUMULATED_NEXT = OTF2_METRIC_VALUE_ACCUMULATED | OTF2_METRIC_TIMING_NEXT, 00503 OTF2_METRIC_ABSOLUTE_POINT = OTF2_METRIC_VALUE_ABSOLUTE | OTF2_METRIC_TIMING_POINT, 00506 OTF2_METRIC_ABSOLUTE_LAST = OTF2_METRIC_VALUE_ABSOLUTE | OTF2_METRIC_TIMING_LAST, 00509 OTF2_METRIC_ABSOLUTE_NEXT = OTF2_METRIC_VALUE_ABSOLUTE | OTF2_METRIC_TIMING_NEXT, 00512 OTF2_METRIC_RELATIVE_POINT = OTF2_METRIC_VALUE_RELATIVE | OTF2_METRIC_TIMING_POINT, 00515 OTF2_METRIC_RELATIVE_LAST = OTF2_METRIC_VALUE_RELATIVE | OTF2_METRIC_TIMING_LAST, 00518 OTF2_METRIC_RELATIVE_NEXT = OTF2_METRIC_VALUE_RELATIVE | OTF2_METRIC_TIMING_NEXT 00519 }; 00520 00521 00523 typedef uint8_t OTF2_MetricBase; 00524 00530 enum OTF2_MetricBase_enum 00531 { 00534 OTF2_BASE_BINARY = 0, 00537 OTF2_BASE_DECIMAL = 1 00538 }; 00539 00540 00542 typedef uint8_t OTF2_MetricScope; 00543 00549 enum OTF2_MetricScope_enum 00550 { 00553 OTF2_SCOPE_LOCATION = 0, 00556 OTF2_SCOPE_LOCATION_GROUP = 1, 00559 OTF2_SCOPE_SYSTEM_TREE_NODE = 2, 00562 OTF2_SCOPE_GROUP = 3 00563 }; 00564 00565 00567 typedef uint8_t OTF2_RecorderKind; 00568 00574 enum OTF2_RecorderKind_enum 00575 { 00578 OTF2_RECORDER_KIND_UNKNOWN = 0, 00582 OTF2_RECORDER_KIND_ABSTRACT = 1, 00586 OTF2_RECORDER_KIND_CPU = 2, 00590 OTF2_RECORDER_KIND_GPU = 3 00591 }; 00592 00593 00595 typedef uint8_t OTF2_ParameterType; 00596 00602 enum OTF2_ParameterType_enum 00603 { 00606 OTF2_PARAMETER_TYPE_STRING = 0, 00609 OTF2_PARAMETER_TYPE_INT64 = 1, 00612 OTF2_PARAMETER_TYPE_UINT64 = 2 00613 }; 00614 00615 00617 typedef uint8_t OTF2_CartPeriodicity; 00618 00624 enum OTF2_CartPeriodicity_enum 00625 { 00628 OTF2_CART_PERIODIC_FALSE = 0, 00631 OTF2_CART_PERIODIC_TRUE = 1 00632 }; 00633 00634 00635 #ifdef __cplusplus 00636 } 00637 #endif /* __cplusplus */ 00638 00639 00640 #endif /* OTF2_DEFINITIONS_H */