/usr/share/doc/opari2/html/LINKING.html is in libpomp2-doc 2.0.2-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 | <!-- HTML header for doxygen 1.8.10-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.10"/>
<title>OPARI2: Linking to a Measurement System</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="15%">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="project_logo.svg"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname"><!--empty as logo contains name -->
 <span id="projectnumber">2.0.2 (revision 1782)</span>
</div>
<div id="projectbrief">OpenMP Pragma And Region Instrumentor</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.10 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="annotated.html"><span>Data Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="index.html">OPARI2 - Introduction and Contents</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Linking to a Measurement System </div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>For startup initialization all initialization functions that can be found in the object files and libraries of the application are called. This is done by creating an additional compilation unit that contains calls to a number of function. For OpenMP these are the following POMP2 functions:</p>
<ul>
<li><a class="el" href="pomp2__lib_8h.html#a1ee3934a87de5fb3e14bbef827fc0f4c">POMP2_Init_regions()</a>, </li>
<li><a class="el" href="pomp2__lib_8h.html#a5677283f76b1775959efa672bd0595af">POMP2_Get_num_regions()</a>, and </li>
<li><a class="el" href="pomp2__lib_8h.html#a64540be40e1ccb2a6084608e6b517ca4">POMP2_Get_opari2_version()</a>.</li>
</ul>
<p>The resulting object file is linked to the application. During startup of the measurement system the only thing to be done is to call <a class="el" href="pomp2__lib_8h.html#a1ee3934a87de5fb3e14bbef827fc0f4c">POMP2_Init_regions()</a> which then calls all POMP2_Init_reg_XXX_YY functions.</p>
<p>In order to create the additional compilation unit (for example <code>pomp2_init_file.c</code>) the following command sequence can be used:</p>
<pre class="fragment">% `opari2-config --nm` <objs_and_libs> | \
`opari2-config --region-initialization` > pomp2_init_file.c
</pre><p>Here, <objs_and_libs> denotes the entire set of object files and libraries that were instrumented by OPARI2.</p>
<p>Due to portability reasons <code>nm</code>, and the <code>awk</code> script to create the additional file are not called directly but via the provided <code>opari2-config</code> tool.</p>
<p>A call to the <code>opari2-config</code> tool has the following syntax: </p><pre class="fragment">Usage: opari2-config [OPTION] ... <command>
with the following commands:
--nm Prints the nm command.
--region-initialization Prints the script used to create the
pomp2_init_regions.c file.
--create-pomp2-regions Prints the whole command necessary
<object files> for creating the initialization file.
--awk-cmd [Deprecated, use --region-initialization instead.]
Prints the awk command.
--awk-script [Deprecated, use --region-initialization instead.]
Prints the awk script.
--egrep [Deprecated, use --region-initialization instead.]
Prints the egrep command.
--cflags[=(gnu|intel|sun| Prints compiler options to include
pgi|ibm|cray|fujitsu)] installed headers and adds compiler
specific flags to prevent warnings
for unused variables which can occur
during the instrumentation.
--fortran Indicates that the target language is fortran.
Sometimes for fortran different compile flags
are provided, in most of the cases there is
no difference.
--version Prints the OPARI2 version number.
--interface-version Prints the pomp2 API version that
instrumented files conform too.
--opari2-revision Prints the revision number of the
OPARI2 package.
--common-revision Prints the revision number of the
common package.
--help Prints this help text.
and the following options:
[--build-check] Tells opari2-config to use build paths
instead of install paths. Used for build
testing.
[--config=<config file>] Reads in a configuration from the given
file.
Report bugs to <support@score-p.org>.
</pre> </div></div><!-- contents -->
<!-- HTML footer for doxygen 1.8.10-->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Report bugs to <a href="mailto:support@score-p.org">support@score-p.org</a>
</small></address>
</body>
</html>
|