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
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Hardware Locality (hwloc): Exporting Topologies to Synthetic</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="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="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Hardware Locality (hwloc)
 <span id="projectnumber">2.4.1</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#enum-members">Enumerations</a> |
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Exporting Topologies to Synthetic</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga7ac6f97cc40bd50c40285084f869ba63"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="a00213.html#ga7ac6f97cc40bd50c40285084f869ba63">hwloc_topology_export_synthetic_flags_e</a> { <a class="el" href="a00213.html#gga7ac6f97cc40bd50c40285084f869ba63a3b3bd4ba2ef9990810865e561034ccc9">HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_NO_EXTENDED_TYPES</a>
, <a class="el" href="a00213.html#gga7ac6f97cc40bd50c40285084f869ba63aaa2702ffba050bab079b3041aec737d4">HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_NO_ATTRS</a>
, <a class="el" href="a00213.html#gga7ac6f97cc40bd50c40285084f869ba63a7896bdf4ccfcdcd09a9f76c0f5e3a5b8">HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_V1</a>
, <a class="el" href="a00213.html#gga7ac6f97cc40bd50c40285084f869ba63a22c57cf18e1da4a6c584fb783b552f9f">HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_IGNORE_MEMORY</a>
}</td></tr>
<tr class="separator:ga7ac6f97cc40bd50c40285084f869ba63"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga24b7864a1c588309c4749f621f03b4c7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00213.html#ga24b7864a1c588309c4749f621f03b4c7">hwloc_topology_export_synthetic</a> (<a class="el" href="a00192.html#ga9d1e76ee15a7dee158b786c30b6a6e38">hwloc_topology_t</a> topology, char *buffer, size_t buflen, unsigned long flags)</td></tr>
<tr class="separator:ga24b7864a1c588309c4749f621f03b4c7"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="ga7ac6f97cc40bd50c40285084f869ba63"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7ac6f97cc40bd50c40285084f869ba63">◆ </a></span>hwloc_topology_export_synthetic_flags_e</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00213.html#ga7ac6f97cc40bd50c40285084f869ba63">hwloc_topology_export_synthetic_flags_e</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Flags for exporting synthetic topologies. </p>
<p>Flags to be given as a OR'ed set to <a class="el" href="a00213.html#ga24b7864a1c588309c4749f621f03b4c7" title="Export the topology as a synthetic string.">hwloc_topology_export_synthetic()</a>. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga7ac6f97cc40bd50c40285084f869ba63a3b3bd4ba2ef9990810865e561034ccc9"></a>HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_NO_EXTENDED_TYPES </td><td class="fielddoc"><p>Export extended types such as L2dcache as basic types such as Cache. </p>
<p>This is required if loading the synthetic description with hwloc < 1.9. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga7ac6f97cc40bd50c40285084f869ba63aaa2702ffba050bab079b3041aec737d4"></a>HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_NO_ATTRS </td><td class="fielddoc"><p>Do not export level attributes. </p>
<p>Ignore level attributes such as memory/cache sizes or PU indexes. This is required if loading the synthetic description with hwloc < 1.10. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga7ac6f97cc40bd50c40285084f869ba63a7896bdf4ccfcdcd09a9f76c0f5e3a5b8"></a>HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_V1 </td><td class="fielddoc"><p>Export the memory hierarchy as expected in hwloc 1.x. </p>
<p>Instead of attaching memory children to levels, export single NUMA node child as normal intermediate levels, when possible. This is required if loading the synthetic description with hwloc 1.x. However this may fail if some objects have multiple local NUMA nodes. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga7ac6f97cc40bd50c40285084f869ba63a22c57cf18e1da4a6c584fb783b552f9f"></a>HWLOC_TOPOLOGY_EXPORT_SYNTHETIC_FLAG_IGNORE_MEMORY </td><td class="fielddoc"><p>Do not export memory information. </p>
<p>Only export the actual hierarchy of normal CPU-side objects and ignore where memory is attached. This is useful for when the hierarchy of CPUs is what really matters, but it behaves as if there was a single machine-wide NUMA node. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga24b7864a1c588309c4749f621f03b4c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga24b7864a1c588309c4749f621f03b4c7">◆ </a></span>hwloc_topology_export_synthetic()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int hwloc_topology_export_synthetic </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00192.html#ga9d1e76ee15a7dee158b786c30b6a6e38">hwloc_topology_t</a> </td>
<td class="paramname"><em>topology</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char * </td>
<td class="paramname"><em>buffer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t </td>
<td class="paramname"><em>buflen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned long </td>
<td class="paramname"><em>flags</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Export the topology as a synthetic string. </p>
<p>At most <code>buflen</code> characters will be written in <code>buffer</code>, including the terminating \0.</p>
<p>This exported string may be given back to <a class="el" href="a00198.html#ga4fab186bb6181a00bcf585825fddd38d" title="Enable synthetic topology.">hwloc_topology_set_synthetic()</a>.</p>
<p><code>flags</code> is a OR'ed set of <a class="el" href="a00213.html#ga7ac6f97cc40bd50c40285084f869ba63" title="Flags for exporting synthetic topologies.">hwloc_topology_export_synthetic_flags_e</a>.</p>
<dl class="section return"><dt>Returns</dt><dd>The number of characters that were written, not including the terminating \0.</dd>
<dd>
-1 if the topology could not be exported, for instance if it is not symmetric.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>I/O and Misc children are ignored, the synthetic string only describes normal children.</dd>
<dd>
A 1024-byte buffer should be large enough for exporting topologies in the vast majority of cases. </dd></dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>
|