<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.8.1.1">
  <compounddef id="benchmark_8c" kind="file">
    <compoundname>benchmark.c</compoundname>
    <includes refid="armutils_8h" local="yes">armutils.h</includes>
    <incdepgraph>
      <node id="104">
        <label>sys/stat.h</label>
      </node>
      <node id="109">
        <label>armutils/armutils_version.h</label>
        <link refid="armutils__version_8h"/>
      </node>
      <node id="92">
        <label>stdarg.h</label>
      </node>
      <node id="116">
        <label>armutils/regex_time.h</label>
        <link refid="regex__time_8h"/>
        <childnode refid="117" relation="include">
        </childnode>
      </node>
      <node id="111">
        <label>armutils/dir_utils.h</label>
        <link refid="dir__utils_8h"/>
        <childnode refid="112" relation="include">
        </childnode>
      </node>
      <node id="106">
        <label>sys/times.h</label>
      </node>
      <node id="114">
        <label>armutils/endian_swap.h</label>
        <link refid="endian__swap_8h"/>
      </node>
      <node id="103">
        <label>sys/mman.h</label>
      </node>
      <node id="90">
        <label>stdlib.h</label>
      </node>
      <node id="110">
        <label>armutils/benchmark.h</label>
        <link refid="benchmark_8h"/>
      </node>
      <node id="89">
        <label>armutils.h</label>
        <link refid="armutils_8h"/>
        <childnode refid="90" relation="include">
        </childnode>
        <childnode refid="91" relation="include">
        </childnode>
        <childnode refid="92" relation="include">
        </childnode>
        <childnode refid="93" relation="include">
        </childnode>
        <childnode refid="94" relation="include">
        </childnode>
        <childnode refid="95" relation="include">
        </childnode>
        <childnode refid="96" relation="include">
        </childnode>
        <childnode refid="97" relation="include">
        </childnode>
        <childnode refid="98" relation="include">
        </childnode>
        <childnode refid="99" relation="include">
        </childnode>
        <childnode refid="100" relation="include">
        </childnode>
        <childnode refid="101" relation="include">
        </childnode>
        <childnode refid="102" relation="include">
        </childnode>
        <childnode refid="103" relation="include">
        </childnode>
        <childnode refid="104" relation="include">
        </childnode>
        <childnode refid="105" relation="include">
        </childnode>
        <childnode refid="106" relation="include">
        </childnode>
        <childnode refid="107" relation="include">
        </childnode>
        <childnode refid="108" relation="include">
        </childnode>
        <childnode refid="109" relation="include">
        </childnode>
        <childnode refid="110" relation="include">
        </childnode>
        <childnode refid="111" relation="include">
        </childnode>
        <childnode refid="113" relation="include">
        </childnode>
        <childnode refid="114" relation="include">
        </childnode>
        <childnode refid="115" relation="include">
        </childnode>
        <childnode refid="116" relation="include">
        </childnode>
        <childnode refid="112" relation="include">
        </childnode>
        <childnode refid="118" relation="include">
        </childnode>
        <childnode refid="117" relation="include">
        </childnode>
      </node>
      <node id="95">
        <label>errno.h</label>
      </node>
      <node id="96">
        <label>fcntl.h</label>
      </node>
      <node id="115">
        <label>armutils/file_utils.h</label>
        <link refid="file__utils_8h"/>
      </node>
      <node id="112">
        <label>armutils/regex_utils.h</label>
        <link refid="regex__utils_8h"/>
      </node>
      <node id="97">
        <label>limits.h</label>
      </node>
      <node id="117">
        <label>armutils/time_utils.h</label>
        <link refid="time__utils_8h"/>
      </node>
      <node id="107">
        <label>sys/types.h</label>
      </node>
      <node id="99">
        <label>string.h</label>
      </node>
      <node id="102">
        <label>utime.h</label>
      </node>
      <node id="101">
        <label>unistd.h</label>
      </node>
      <node id="113">
        <label>armutils/dsenv.h</label>
        <link refid="dsenv_8h"/>
      </node>
      <node id="118">
        <label>armutils/string_utils.h</label>
        <link refid="string__utils_8h"/>
      </node>
      <node id="100">
        <label>time.h</label>
      </node>
      <node id="105">
        <label>sys/time.h</label>
      </node>
      <node id="93">
        <label>ctype.h</label>
      </node>
      <node id="108">
        <label>messenger.h</label>
      </node>
      <node id="88">
        <label>benchmark.c</label>
        <link refid="benchmark.c"/>
        <childnode refid="89" relation="include">
        </childnode>
      </node>
      <node id="98">
        <label>regex.h</label>
      </node>
      <node id="91">
        <label>stdio.h</label>
      </node>
      <node id="94">
        <label>dirent.h</label>
      </node>
    </incdepgraph>
      <sectiondef kind="var">
      <memberdef kind="variable" id="benchmark_8c_1a0ccf38c4f7c9dab7e4390b0bc3d3b9d7" prot="public" static="yes" mutable="no">
        <type>time_t</type>
        <definition>time_t gStart</definition>
        <argsstring></argsstring>
        <name>gStart</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" line="31" bodyfile="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" bodystart="31" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="benchmark_8c_1a33afe182ad0950079dd47c1d2c38b9b5" prot="public" static="yes" mutable="no">
        <type>double</type>
        <definition>double gUTime</definition>
        <argsstring></argsstring>
        <name>gUTime</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" line="32" bodyfile="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" bodystart="32" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="benchmark_8c_1a7b8d99c70a75cadab24ca5d87c640f2d" prot="public" static="yes" mutable="no">
        <type>double</type>
        <definition>double gSTime</definition>
        <argsstring></argsstring>
        <name>gSTime</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" line="33" bodyfile="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" bodystart="33" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="benchmark_8c_1a9c31ba3063a0f227828673821ae58285" prot="public" static="yes" mutable="no">
        <type>double</type>
        <definition>double gCUTime</definition>
        <argsstring></argsstring>
        <name>gCUTime</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" line="34" bodyfile="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" bodystart="34" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="benchmark_8c_1ad6b3fe7253e96cd3974312b600e2991f" prot="public" static="yes" mutable="no">
        <type>double</type>
        <definition>double gCSTime</definition>
        <argsstring></argsstring>
        <name>gCSTime</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" line="35" bodyfile="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" bodystart="35" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="benchmark_8c_1ae2554d8d858a7eba3d39ab2501d5bbea" prot="public" static="yes" mutable="no">
        <type>double</type>
        <definition>double gReal</definition>
        <argsstring></argsstring>
        <name>gReal</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" line="36" bodyfile="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" bodystart="36" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="func">
      <memberdef kind="function" id="group__ARMUTILS__BENCHMARK__UTILS_1gab20e3a4af69dafe8d46535daae441bb7" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void benchmark_init</definition>
        <argsstring>(void)</argsstring>
        <name>benchmark_init</name>
        <param>
          <type>void</type>
        </param>
        <briefdescription>
<para>Initialize the benchmark function. </para>        </briefdescription>
        <detaileddescription>
<para>This function should be called when the calling process starts. It sets the start time used to determine the real time in the <ref refid="group__ARMUTILS__BENCHMARK__UTILS_1gae908b3cec0bb083bcc2ef4cfe4e27f56" kindref="member">benchmark()</ref> output. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" line="46" bodyfile="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" bodystart="45" bodyend="48"/>
      </memberdef>
      <memberdef kind="function" id="group__ARMUTILS__BENCHMARK__UTILS_1gae908b3cec0bb083bcc2ef4cfe4e27f56" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void benchmark</definition>
        <argsstring>(FILE *fp, char *message)</argsstring>
        <name>benchmark</name>
        <param>
          <type>FILE *</type>
          <declname>fp</declname>
        </param>
        <param>
          <type>char *</type>
          <declname>message</declname>
        </param>
        <briefdescription>
<para>Print benchmark. </para>        </briefdescription>
        <detaileddescription>
<para>Before using this function the <ref refid="group__ARMUTILS__BENCHMARK__UTILS_1gab20e3a4af69dafe8d46535daae441bb7" kindref="member">benchmark_init()</ref> function should be called.</para><para>The first call to this function will print the elapsed times used by the CPU since the program started. All subsequent calls to this function will print the elapsed times since the previous call, and the total times since the program started.</para><para>The user time is the CPU time (in seconds) used while executing instructions in the user space of the calling process.</para><para>The system time is the CPU time (in seconds) used by the system on behalf of the calling process.</para><para>The cuser time is the sum of the user times (in seconds) for the calling process and the child processes.</para><para>The csystem time is the sum of the system times (in seconds) for the calling process and the child processes.</para><para>The real time is the wall clock time (in seconds).</para><para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>fp</parametername>
</parameternamelist>
<parameterdescription>
<para>- pointer to output file stream </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>message</parametername>
</parameternamelist>
<parameterdescription>
<para>- message to print at the top of the output </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" line="78" bodyfile="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c" bodystart="77" bodyend="125"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Benchmark Utilities. </para>    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <programlisting>
<codeline lineno="1"><highlight class="comment">/*******************************************************************************</highlight></codeline>
<codeline lineno="2"><highlight class="comment">*</highlight></codeline>
<codeline lineno="3"><highlight class="comment">*<sp/><sp/>COPYRIGHT<sp/>(C)<sp/>2010<sp/>Battelle<sp/>Memorial<sp/>Institute.<sp/><sp/>All<sp/>Rights<sp/>Reserved.</highlight></codeline>
<codeline lineno="4"><highlight class="comment">*</highlight></codeline>
<codeline lineno="5"><highlight class="comment">********************************************************************************</highlight></codeline>
<codeline lineno="6"><highlight class="comment">*</highlight></codeline>
<codeline lineno="7"><highlight class="comment">*<sp/><sp/>Author:</highlight></codeline>
<codeline lineno="8"><highlight class="comment">*<sp/><sp/><sp/><sp/><sp/>name:<sp/><sp/>Brian<sp/>Ermold</highlight></codeline>
<codeline lineno="9"><highlight class="comment">*<sp/><sp/><sp/><sp/><sp/>phone:<sp/>(509)<sp/>375-2277</highlight></codeline>
<codeline lineno="10"><highlight class="comment">*<sp/><sp/><sp/><sp/><sp/>email:<sp/>brian.ermold@pnl.gov</highlight></codeline>
<codeline lineno="11"><highlight class="comment">*</highlight></codeline>
<codeline lineno="12"><highlight class="comment">********************************************************************************</highlight></codeline>
<codeline lineno="13"><highlight class="comment">*</highlight></codeline>
<codeline lineno="14"><highlight class="comment">*<sp/><sp/>REPOSITORY<sp/>INFORMATION:</highlight></codeline>
<codeline lineno="15"><highlight class="comment">*<sp/><sp/><sp/><sp/>$Revision:<sp/>6689<sp/>$</highlight></codeline>
<codeline lineno="16"><highlight class="comment">*<sp/><sp/><sp/><sp/>$Author:<sp/>ermold<sp/>$</highlight></codeline>
<codeline lineno="17"><highlight class="comment">*<sp/><sp/><sp/><sp/>$Date:<sp/>2011-05-16<sp/>19:14:17<sp/>+0000<sp/>(Mon,<sp/>16<sp/>May<sp/>2011)<sp/>$</highlight></codeline>
<codeline lineno="18"><highlight class="comment">*</highlight></codeline>
<codeline lineno="19"><highlight class="comment">********************************************************************************</highlight></codeline>
<codeline lineno="20"><highlight class="comment">*</highlight></codeline>
<codeline lineno="21"><highlight class="comment">*<sp/><sp/>NOTE:<sp/>DOXYGEN<sp/>is<sp/>used<sp/>to<sp/>generate<sp/>documentation<sp/>for<sp/>this<sp/>file.</highlight></codeline>
<codeline lineno="22"><highlight class="comment">*</highlight></codeline>
<codeline lineno="23"><highlight class="comment">*******************************************************************************/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="24"><highlight class="normal"></highlight><highlight class="comment"></highlight></codeline>
<codeline lineno="25"><highlight class="comment">/**<sp/>@file<sp/>benchmark.c</highlight></codeline>
<codeline lineno="26"><highlight class="comment"><sp/>*<sp/><sp/>Benchmark<sp/>Utilities</highlight></codeline>
<codeline lineno="27"><highlight class="comment"><sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="28"><highlight class="normal"></highlight></codeline>
<codeline lineno="29"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;<ref refid="armutils_8h" kindref="compound" tooltip="ARM Utilities Library Header.">armutils.h</ref>&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="30"><highlight class="normal"></highlight></codeline>
<codeline lineno="31"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/>time_t<sp/>gStart;</highlight></codeline>
<codeline lineno="32"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>gUTime;</highlight></codeline>
<codeline lineno="33"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>gSTime;</highlight></codeline>
<codeline lineno="34"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>gCUTime;</highlight></codeline>
<codeline lineno="35"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>gCSTime;</highlight></codeline>
<codeline lineno="36"><highlight class="normal"></highlight><highlight class="keyword">static</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>gReal;</highlight></codeline>
<codeline lineno="37"><highlight class="normal"></highlight><highlight class="comment"></highlight></codeline>
<codeline lineno="38"><highlight class="comment">/**</highlight></codeline>
<codeline lineno="39"><highlight class="comment"><sp/>*<sp/><sp/>Initialize<sp/>the<sp/>benchmark<sp/>function.</highlight></codeline>
<codeline lineno="40"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="41"><highlight class="comment"><sp/>*<sp/><sp/>This<sp/>function<sp/>should<sp/>be<sp/>called<sp/>when<sp/>the<sp/>calling<sp/>process<sp/>starts.</highlight></codeline>
<codeline lineno="42"><highlight class="comment"><sp/>*<sp/><sp/>It<sp/>sets<sp/>the<sp/>start<sp/>time<sp/>used<sp/>to<sp/>determine<sp/>the<sp/>real<sp/>time<sp/>in<sp/>the</highlight></codeline>
<codeline lineno="43"><highlight class="comment"><sp/>*<sp/><sp/>benchmark()<sp/>output.</highlight></codeline>
<codeline lineno="44"><highlight class="comment"><sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="45" refid="group__ARMUTILS__BENCHMARK__UTILS_1gab20e3a4af69dafe8d46535daae441bb7" refkind="member"><highlight class="normal"></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="group__ARMUTILS__BENCHMARK__UTILS_1gab20e3a4af69dafe8d46535daae441bb7" kindref="member" tooltip="Initialize the benchmark function.">benchmark_init</ref>(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">)</highlight></codeline>
<codeline lineno="46"><highlight class="normal">{</highlight></codeline>
<codeline lineno="47"><highlight class="normal"><sp/><sp/><sp/><sp/>gStart<sp/>=<sp/>time(NULL);</highlight></codeline>
<codeline lineno="48"><highlight class="normal">}</highlight></codeline>
<codeline lineno="49"><highlight class="normal"></highlight><highlight class="comment"></highlight></codeline>
<codeline lineno="50"><highlight class="comment">/**</highlight></codeline>
<codeline lineno="51"><highlight class="comment"><sp/>*<sp/><sp/>Print<sp/>benchmark.</highlight></codeline>
<codeline lineno="52"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="53"><highlight class="comment"><sp/>*<sp/><sp/>Before<sp/>using<sp/>this<sp/>function<sp/>the<sp/>benchmark_init()<sp/>function<sp/>should<sp/>be<sp/>called.</highlight></codeline>
<codeline lineno="54"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="55"><highlight class="comment"><sp/>*<sp/><sp/>The<sp/>first<sp/>call<sp/>to<sp/>this<sp/>function<sp/>will<sp/>print<sp/>the<sp/>elapsed<sp/>times<sp/>used<sp/>by<sp/>the</highlight></codeline>
<codeline lineno="56"><highlight class="comment"><sp/>*<sp/><sp/>CPU<sp/>since<sp/>the<sp/>program<sp/>started.<sp/>All<sp/>subsequent<sp/>calls<sp/>to<sp/>this<sp/>function<sp/>will</highlight></codeline>
<codeline lineno="57"><highlight class="comment"><sp/>*<sp/><sp/>print<sp/>the<sp/>elapsed<sp/>times<sp/>since<sp/>the<sp/>previous<sp/>call,<sp/>and<sp/>the<sp/>total<sp/>times<sp/>since</highlight></codeline>
<codeline lineno="58"><highlight class="comment"><sp/>*<sp/><sp/>the<sp/>program<sp/>started.</highlight></codeline>
<codeline lineno="59"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="60"><highlight class="comment"><sp/>*<sp/><sp/>The<sp/>user<sp/>time<sp/>is<sp/>the<sp/>CPU<sp/>time<sp/>(in<sp/>seconds)<sp/>used<sp/>while<sp/>executing</highlight></codeline>
<codeline lineno="61"><highlight class="comment"><sp/>*<sp/><sp/>instructions<sp/>in<sp/>the<sp/>user<sp/>space<sp/>of<sp/>the<sp/>calling<sp/>process.</highlight></codeline>
<codeline lineno="62"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="63"><highlight class="comment"><sp/>*<sp/><sp/>The<sp/>system<sp/>time<sp/>is<sp/>the<sp/>CPU<sp/>time<sp/>(in<sp/>seconds)<sp/>used<sp/>by<sp/>the<sp/>system</highlight></codeline>
<codeline lineno="64"><highlight class="comment"><sp/>*<sp/><sp/>on<sp/>behalf<sp/>of<sp/>the<sp/>calling<sp/>process.</highlight></codeline>
<codeline lineno="65"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="66"><highlight class="comment"><sp/>*<sp/><sp/>The<sp/>cuser<sp/>time<sp/>is<sp/>the<sp/>sum<sp/>of<sp/>the<sp/>user<sp/>times<sp/>(in<sp/>seconds)<sp/>for<sp/>the</highlight></codeline>
<codeline lineno="67"><highlight class="comment"><sp/>*<sp/><sp/>calling<sp/>process<sp/>and<sp/>the<sp/>child<sp/>processes.</highlight></codeline>
<codeline lineno="68"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="69"><highlight class="comment"><sp/>*<sp/><sp/>The<sp/>csystem<sp/>time<sp/>is<sp/>the<sp/>sum<sp/>of<sp/>the<sp/>system<sp/>times<sp/>(in<sp/>seconds)<sp/>for</highlight></codeline>
<codeline lineno="70"><highlight class="comment"><sp/>*<sp/><sp/>the<sp/>calling<sp/>process<sp/>and<sp/>the<sp/>child<sp/>processes.</highlight></codeline>
<codeline lineno="71"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="72"><highlight class="comment"><sp/>*<sp/><sp/>The<sp/>real<sp/>time<sp/>is<sp/>the<sp/>wall<sp/>clock<sp/>time<sp/>(in<sp/>seconds).</highlight></codeline>
<codeline lineno="73"><highlight class="comment"><sp/>*</highlight></codeline>
<codeline lineno="74"><highlight class="comment"><sp/>*<sp/><sp/>@param<sp/>fp<sp/><sp/><sp/><sp/><sp/><sp/>-<sp/>pointer<sp/>to<sp/>output<sp/>file<sp/>stream</highlight></codeline>
<codeline lineno="75"><highlight class="comment"><sp/>*<sp/><sp/>@param<sp/>message<sp/>-<sp/>message<sp/>to<sp/>print<sp/>at<sp/>the<sp/>top<sp/>of<sp/>the<sp/>output</highlight></codeline>
<codeline lineno="76"><highlight class="comment"><sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="77" refid="group__ARMUTILS__BENCHMARK__UTILS_1gae908b3cec0bb083bcc2ef4cfe4e27f56" refkind="member"><highlight class="normal"></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="group__ARMUTILS__BENCHMARK__UTILS_1gae908b3cec0bb083bcc2ef4cfe4e27f56" kindref="member" tooltip="Print benchmark.">benchmark</ref>(FILE<sp/>*fp,<sp/></highlight><highlight class="keywordtype">char</highlight><highlight class="normal"><sp/>*message)</highlight></codeline>
<codeline lineno="78"><highlight class="normal">{</highlight></codeline>
<codeline lineno="79"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>ticks_per_sec<sp/>=<sp/>(double)sysconf(_SC_CLK_TCK);</highlight></codeline>
<codeline lineno="80"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">struct<sp/></highlight><highlight class="normal">tms<sp/><sp/><sp/><sp/><sp/>tms_buf;</highlight></codeline>
<codeline lineno="81"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>utime,<sp/><sp/>utime_diff;</highlight></codeline>
<codeline lineno="82"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>stime,<sp/><sp/>stime_diff;</highlight></codeline>
<codeline lineno="83"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>cutime,<sp/>cutime_diff;</highlight></codeline>
<codeline lineno="84"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>cstime,<sp/>cstime_diff;</highlight></codeline>
<codeline lineno="85"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordtype">double</highlight><highlight class="normal"><sp/>real,<sp/><sp/><sp/>real_diff;</highlight></codeline>
<codeline lineno="86"><highlight class="normal"></highlight></codeline>
<codeline lineno="87"><highlight class="normal"><sp/><sp/><sp/><sp/>times(&amp;tms_buf);</highlight></codeline>
<codeline lineno="88"><highlight class="normal"></highlight></codeline>
<codeline lineno="89"><highlight class="normal"><sp/><sp/><sp/><sp/>utime<sp/><sp/>=<sp/>(double)tms_buf.tms_utime<sp/><sp/>/<sp/>ticks_per_sec;</highlight></codeline>
<codeline lineno="90"><highlight class="normal"><sp/><sp/><sp/><sp/>stime<sp/><sp/>=<sp/>(</highlight><highlight class="keywordtype">double</highlight><highlight class="normal">)tms_buf.tms_stime<sp/><sp/>/<sp/>ticks_per_sec;</highlight></codeline>
<codeline lineno="91"><highlight class="normal"><sp/><sp/><sp/><sp/>cutime<sp/>=<sp/>(double)tms_buf.tms_cutime<sp/>/<sp/>ticks_per_sec;</highlight></codeline>
<codeline lineno="92"><highlight class="normal"><sp/><sp/><sp/><sp/>cstime<sp/>=<sp/>(</highlight><highlight class="keywordtype">double</highlight><highlight class="normal">)tms_buf.tms_cstime<sp/>/<sp/>ticks_per_sec;</highlight></codeline>
<codeline lineno="93"><highlight class="normal"><sp/><sp/><sp/><sp/>real<sp/><sp/><sp/>=<sp/>time(NULL)<sp/>-<sp/>gStart;</highlight></codeline>
<codeline lineno="94"><highlight class="normal"></highlight></codeline>
<codeline lineno="95"><highlight class="normal"><sp/><sp/><sp/><sp/>utime_diff<sp/><sp/>=<sp/>utime<sp/><sp/>-<sp/>gUTime;</highlight></codeline>
<codeline lineno="96"><highlight class="normal"><sp/><sp/><sp/><sp/>stime_diff<sp/><sp/>=<sp/>stime<sp/><sp/>-<sp/>gSTime;</highlight></codeline>
<codeline lineno="97"><highlight class="normal"><sp/><sp/><sp/><sp/>cutime_diff<sp/>=<sp/>cutime<sp/>-<sp/>gCUTime;</highlight></codeline>
<codeline lineno="98"><highlight class="normal"><sp/><sp/><sp/><sp/>cstime_diff<sp/>=<sp/>cstime<sp/>-<sp/>gCSTime;</highlight></codeline>
<codeline lineno="99"><highlight class="normal"><sp/><sp/><sp/><sp/>real_diff<sp/><sp/><sp/>=<sp/>real<sp/><sp/><sp/>-<sp/>gReal;</highlight></codeline>
<codeline lineno="100"><highlight class="normal"></highlight></codeline>
<codeline lineno="101"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>(!message)<sp/>{</highlight></codeline>
<codeline lineno="102"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>message<sp/>=<sp/></highlight><highlight class="stringliteral">&quot;-----<sp/>Benchmark<sp/>-----&quot;</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="103"><highlight class="normal"><sp/><sp/><sp/><sp/>}</highlight></codeline>
<codeline lineno="104"><highlight class="normal"></highlight></codeline>
<codeline lineno="105"><highlight class="normal"><sp/><sp/><sp/><sp/>fprintf(fp,</highlight></codeline>
<codeline lineno="106"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="stringliteral">&quot;\n%s\n\n&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="107"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="stringliteral">&quot;<sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>elapsed<sp/><sp/>total\n&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="108"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="stringliteral">&quot;<sp/><sp/><sp/><sp/>user:<sp/><sp/><sp/><sp/><sp/>%-8.2f<sp/>%-8.2f\n&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="109"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="stringliteral">&quot;<sp/><sp/><sp/><sp/>system:<sp/><sp/><sp/>%-8.2f<sp/>%-8.2f\n&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="110"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="stringliteral">&quot;<sp/><sp/><sp/><sp/>cuser:<sp/><sp/><sp/><sp/>%-8.2f<sp/>%-8.2f\n&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="111"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="stringliteral">&quot;<sp/><sp/><sp/><sp/>csystem:<sp/><sp/>%-8.2f<sp/>%-8.2f\n&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="112"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="stringliteral">&quot;<sp/><sp/><sp/><sp/>real:<sp/><sp/><sp/><sp/><sp/>%-8.2f<sp/>%-8.2f\n&quot;</highlight><highlight class="normal">,</highlight></codeline>
<codeline lineno="113"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>message,</highlight></codeline>
<codeline lineno="114"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>utime_diff,<sp/><sp/>utime,</highlight></codeline>
<codeline lineno="115"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>stime_diff,<sp/><sp/>stime,</highlight></codeline>
<codeline lineno="116"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>cutime_diff,<sp/>cutime,</highlight></codeline>
<codeline lineno="117"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>cstime_diff,<sp/>cstime,</highlight></codeline>
<codeline lineno="118"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>real_diff,<sp/><sp/><sp/>real);</highlight></codeline>
<codeline lineno="119"><highlight class="normal"></highlight></codeline>
<codeline lineno="120"><highlight class="normal"><sp/><sp/><sp/><sp/>gUTime<sp/><sp/>=<sp/>utime;</highlight></codeline>
<codeline lineno="121"><highlight class="normal"><sp/><sp/><sp/><sp/>gSTime<sp/><sp/>=<sp/>stime;</highlight></codeline>
<codeline lineno="122"><highlight class="normal"><sp/><sp/><sp/><sp/>gCUTime<sp/>=<sp/>cutime;</highlight></codeline>
<codeline lineno="123"><highlight class="normal"><sp/><sp/><sp/><sp/>gCSTime<sp/>=<sp/>cstime;</highlight></codeline>
<codeline lineno="124"><highlight class="normal"><sp/><sp/><sp/><sp/>gReal<sp/><sp/><sp/>=<sp/>real;</highlight></codeline>
<codeline lineno="125"><highlight class="normal">}</highlight></codeline>
    </programlisting>
    <location file="/home/ermold/dev/Linux-x86_64-el6/afl/src/libarmutils/benchmark.c"/>
  </compounddef>
</doxygen>
