- create a process group with the real node name on CrayXT platforms
- updated version number of integrated VT to 5.4.11 This commit was SVN r22238.
Этот коммит содержится в:
родитель
b57b8c5b3f
Коммит
f1c55df65c
@ -1,3 +1,6 @@
|
|||||||
|
5.4.11
|
||||||
|
- create a process group with the real node name on CrayXT platforms
|
||||||
|
|
||||||
5.4.10
|
5.4.10
|
||||||
- reduced list of supported MPI implementations to Open MPI
|
- reduced list of supported MPI implementations to Open MPI
|
||||||
(support for other MPI implementations are available in the latest
|
(support for other MPI implementations are available in the latest
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
major=5
|
major=5
|
||||||
minor=4
|
minor=4
|
||||||
release=10
|
release=11
|
||||||
|
|
||||||
# greek is used for alpha or beta release tags. If it is non-empty,
|
# greek is used for alpha or beta release tags. If it is non-empty,
|
||||||
# it will be appended to the version number. It does not have to be
|
# it will be appended to the version number. It does not have to be
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
# Process this file with autoconf to produce a configure script.
|
# Process this file with autoconf to produce a configure script.
|
||||||
|
|
||||||
AC_PREREQ(2.60)
|
AC_PREREQ(2.60)
|
||||||
AC_INIT(VampirTrace, 5.4.10, vampirsupport@zih.tu-dresden.de)
|
AC_INIT(VampirTrace, 5.4.11, vampirsupport@zih.tu-dresden.de)
|
||||||
AM_INIT_AUTOMAKE(VampirTrace, 5.4.10)
|
AM_INIT_AUTOMAKE(VampirTrace, 5.4.11)
|
||||||
AM_CONFIG_HEADER(config.h)
|
AM_CONFIG_HEADER(config.h)
|
||||||
|
|
||||||
# Open MPI: If Automake supports silent rules, enable them.
|
# Open MPI: If Automake supports silent rules, enable them.
|
||||||
|
@ -47,15 +47,14 @@ TD.eqno { } /* equation-number cells */
|
|||||||
|
|
||||||
|
|
||||||
/* document-specific styles come next */
|
/* document-specific styles come next */
|
||||||
DIV.navigation { }
|
|
||||||
PRE.preform { }
|
PRE.preform { }
|
||||||
SPAN.textit { font-style: italic }
|
DIV.navigation { }
|
||||||
SPAN.arabic { }
|
|
||||||
SPAN.textbf { font-weight: bold }
|
SPAN.textbf { font-weight: bold }
|
||||||
|
SPAN.arabic { }
|
||||||
|
SPAN.textit { font-style: italic }
|
||||||
|
|
||||||
BODY { font-family: sans-serif }
|
BODY {font-family: sans-serif;}
|
||||||
</STYLE>
|
</STYLE>
|
||||||
|
|
||||||
</HEAD>
|
</HEAD>
|
||||||
|
|
||||||
<BODY >
|
<BODY >
|
||||||
@ -63,7 +62,7 @@ BODY { font-family: sans-serif }
|
|||||||
<P>
|
<P>
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
<B><BIG CLASS="XHUGE">VampirTrace 5.4.10 User Manual</BIG></B>
|
<B><BIG CLASS="XHUGE">VampirTrace 5.4.11 User Manual</BIG></B>
|
||||||
<BR>
|
<BR>
|
||||||
<BR>
|
<BR>
|
||||||
<BR>
|
<BR>
|
||||||
@ -253,7 +252,7 @@ trace files of several hundred megabytes. To protect users from
|
|||||||
creating trace files of several gigabytes, the default behavior of
|
creating trace files of several gigabytes, the default behavior of
|
||||||
VampirTrace limits the internal buffer to 32 MB. This produces trace
|
VampirTrace limits the internal buffer to 32 MB. This produces trace
|
||||||
files that are not larger than 32 MB per process, typically a lot smaller.
|
files that are not larger than 32 MB per process, typically a lot smaller.
|
||||||
Please read Section <A HREF="#trace_file_size">3.2</A> on how to remove or change the limit.
|
Please read Section <A HREF="#trace_file_size">[*]</A> on how to remove or change the limit.
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
VampirTrace supports various Unix and Linux platforms common in
|
VampirTrace supports various Unix and Linux platforms common in
|
||||||
@ -276,9 +275,9 @@ of function calls, as well as sending and receiving of MPI messages.
|
|||||||
By default, VampirTrace handles this automatically. In order to enable
|
By default, VampirTrace handles this automatically. In order to enable
|
||||||
instrumentation of function calls, the user only needs to replace the compiler
|
instrumentation of function calls, the user only needs to replace the compiler
|
||||||
and linker commands with VampirTrace's wrappers,
|
and linker commands with VampirTrace's wrappers,
|
||||||
see Section <A HREF="#compiler_wrappers">2.1</A> below.
|
see Section <A HREF="#compiler_wrappers">[*]</A> below.
|
||||||
VampirTrace supports different ways of instrumentation as described in
|
VampirTrace supports different ways of instrumentation as described in
|
||||||
Section <A HREF="#instrumentation_types">2.2</A>.
|
Section <A HREF="#instrumentation_types">[*]</A>.
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
|
|
||||||
@ -371,7 +370,7 @@ by VampirTrace's compiler wrapper:
|
|||||||
<P>
|
<P>
|
||||||
If you want to instrument MPI events only (creates smaller trace files and less overhead)
|
If you want to instrument MPI events only (creates smaller trace files and less overhead)
|
||||||
use the option <TT>-vt:inst manual</TT> to disable automatic instrumentation
|
use the option <TT>-vt:inst manual</TT> to disable automatic instrumentation
|
||||||
of user functions (see also Section <A HREF="#A1">2.4</A>).
|
of user functions (see also Section <A HREF="#A1">[*]</A>).
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
</LI>
|
</LI>
|
||||||
@ -432,7 +431,7 @@ your program uses by the switches
|
|||||||
hybrid programs, respectively.
|
hybrid programs, respectively.
|
||||||
Note that these switches do not change the underlying compiler or compiler flags.
|
Note that these switches do not change the underlying compiler or compiler flags.
|
||||||
Use the option <TT>-vt:verbose</TT> to see the command line the compiler wrapper executes.
|
Use the option <TT>-vt:verbose</TT> to see the command line the compiler wrapper executes.
|
||||||
Refer to Appendix <A HREF="#comm_wrappers">A.1</A> for a list of all compiler wrapper options.
|
Refer to Appendix <A HREF="#comm_wrappers">[*]</A> for a list of all compiler wrapper options.
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
The default settings of the compiler wrappers can be modified in the files
|
The default settings of the compiler wrappers can be modified in the files
|
||||||
@ -459,7 +458,7 @@ instrumentation type to use. Following values for <TT><insttype></TT> are
|
|||||||
<P>
|
<P>
|
||||||
|
|
||||||
<UL>
|
<UL>
|
||||||
<LI>fully-automatic instrumentation by the compiler (see Section <A HREF="#compiler_instrumentation">2.3</A>):
|
<LI>fully-automatic instrumentation by the compiler (see Section <A HREF="#compiler_instrumentation">[*]</A>):
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
<TABLE CELLPADDING=3>
|
<TABLE CELLPADDING=3>
|
||||||
@ -496,10 +495,10 @@ instrumentation type to use. Following values for <TT><insttype></TT> are
|
|||||||
<TH ALIGN="LEFT"><SPAN CLASS="textbf"> </SPAN></TH>
|
<TH ALIGN="LEFT"><SPAN CLASS="textbf"> </SPAN></TH>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT">manual</TD>
|
<TR><TD ALIGN="LEFT">manual</TD>
|
||||||
<TD ALIGN="LEFT">VampirTrace's API (see Section <A HREF="#A1">2.4</A>)</TD>
|
<TD ALIGN="LEFT">VampirTrace's API (see Section <A HREF="#A1">[*]</A>)</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT">pomp</TD>
|
<TR><TD ALIGN="LEFT">pomp</TD>
|
||||||
<TD ALIGN="LEFT">POMP INST directives (see Section <A HREF="#A2">2.5</A>)</TD>
|
<TD ALIGN="LEFT">POMP INST directives (see Section <A HREF="#A2">[*]</A>)</TD>
|
||||||
</TR>
|
</TR>
|
||||||
</TABLE>
|
</TABLE>
|
||||||
|
|
||||||
@ -513,7 +512,7 @@ instrumentation type to use. Following values for <TT><insttype></TT> are
|
|||||||
<TH ALIGN="LEFT"><SPAN CLASS="textbf"> </SPAN></TH>
|
<TH ALIGN="LEFT"><SPAN CLASS="textbf"> </SPAN></TH>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT">dyninst</TD>
|
<TR><TD ALIGN="LEFT">dyninst</TD>
|
||||||
<TD ALIGN="LEFT">binary-instrumentation with Dyninst (Section <A HREF="#A3">2.6</A>)</TD>
|
<TD ALIGN="LEFT">binary-instrumentation with Dyninst (Section <A HREF="#A3">[*]</A>)</TD>
|
||||||
</TR>
|
</TR>
|
||||||
</TABLE>
|
</TABLE>
|
||||||
|
|
||||||
@ -528,7 +527,7 @@ wrapper's configuration file (e.g. <TT>share/vampirtrace/vtcc-wrapper-data.txt</
|
|||||||
installation directory of VampirTrace for the C compiler wrapper).
|
installation directory of VampirTrace for the C compiler wrapper).
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
See Appendix <A HREF="#comm_wrappers">A.1</A> or type <TT>vtcc -vt:help</TT> for other
|
See Appendix <A HREF="#comm_wrappers">[*]</A> or type <TT>vtcc -vt:help</TT> for other
|
||||||
options that can be passed through VampirTrace's compiler wrapper.
|
options that can be passed through VampirTrace's compiler wrapper.
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
@ -592,7 +591,7 @@ Please consider that BFD is deliviered under the GNU General Public License
|
|||||||
(GPL). So if you want to build binary packages including VampirTrace make sure
|
(GPL). So if you want to build binary packages including VampirTrace make sure
|
||||||
to use the option <TT>-without-bfd</TT> to get a version without BFD. In this
|
to use the option <TT>-without-bfd</TT> to get a version without BFD. In this
|
||||||
case you have to use <TT>nm</TT> to get symbol information from the running
|
case you have to use <TT>nm</TT> to get symbol information from the running
|
||||||
application executable (see Section <A HREF="#bfdnotes">2.3.1</A>).
|
application executable (see Section <A HREF="#bfdnotes">[*]</A>).
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
|
|
||||||
@ -791,7 +790,7 @@ The compiler wrapper dynamically links the library <TT>libvt.dynatt.so</TT>
|
|||||||
Note that the application should have been compiled with the <TT>-g</TT>
|
Note that the application should have been compiled with the <TT>-g</TT>
|
||||||
switch in order to have symbol names visible.
|
switch in order to have symbol names visible.
|
||||||
After a trace-run by using this way of instrumenting, the <TT>vtunify</TT>
|
After a trace-run by using this way of instrumenting, the <TT>vtunify</TT>
|
||||||
utility needs to be invoked manually (see Sections <A HREF="#unification">3.3</A> and <A HREF="#VTUNIFY">A.2</A>).
|
utility needs to be invoked manually (see Sections <A HREF="#unification">[*]</A> and <A HREF="#VTUNIFY">[*]</A>).
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
To prevent certain functions from being instrumented you can set
|
To prevent certain functions from being instrumented you can set
|
||||||
@ -830,7 +829,7 @@ VampirTrace run-time system which might help tracking down the problem.
|
|||||||
<P>
|
<P>
|
||||||
The internal buffer of VampirTrace is limited to 32 MB. Use the environment
|
The internal buffer of VampirTrace is limited to 32 MB. Use the environment
|
||||||
variable <TT>VT_BUFFER_SIZE</TT> and <TT>VT_MAX_FLUSHES</TT> to increase
|
variable <TT>VT_BUFFER_SIZE</TT> and <TT>VT_MAX_FLUSHES</TT> to increase
|
||||||
this limit. Section <A HREF="#trace_file_size">3.2</A> contains further information on
|
this limit. Section <A HREF="#trace_file_size">[*]</A> contains further information on
|
||||||
influencing trace file size.
|
influencing trace file size.
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
@ -882,15 +881,15 @@ of a VampirTrace instrumented executable:
|
|||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>VT_METRICS</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>VT_METRICS</TT></TD>
|
||||||
<TD ALIGN="LEFT">Specify counter metrics to be recorded with trace events as a
|
<TD ALIGN="LEFT">Specify counter metrics to be recorded with trace events as a
|
||||||
colon-separated list of names. (for details see Appendix <A HREF="#papi">B</A>)</TD>
|
colon-separated list of names. (for details see Appendix <A HREF="#papi">[*]</A>)</TD>
|
||||||
<TD ALIGN="LEFT">-</TD>
|
<TD ALIGN="LEFT">-</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>VT_MEMTRACE</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>VT_MEMTRACE</TT></TD>
|
||||||
<TD ALIGN="LEFT">Enable memory allocation counters? (see Sec. <A HREF="#mem_alloc_counters">4.2</A>)</TD>
|
<TD ALIGN="LEFT">Enable memory allocation counters? (see Sec. <A HREF="#mem_alloc_counters">[*]</A>)</TD>
|
||||||
<TD ALIGN="LEFT">no</TD>
|
<TD ALIGN="LEFT">no</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>VT_IOTRACE</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>VT_IOTRACE</TT></TD>
|
||||||
<TD ALIGN="LEFT">Enable tracing of application I/O calls? (see Sec. <A HREF="#app_io_calls">4.3</A>)</TD>
|
<TD ALIGN="LEFT">Enable tracing of application I/O calls? (see Sec. <A HREF="#app_io_calls">[*]</A>)</TD>
|
||||||
<TD ALIGN="LEFT">no</TD>
|
<TD ALIGN="LEFT">no</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>VT_MPITRACE</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>VT_MPITRACE</TT></TD>
|
||||||
@ -898,20 +897,20 @@ of a VampirTrace instrumented executable:
|
|||||||
<TD ALIGN="LEFT">yes</TD>
|
<TD ALIGN="LEFT">yes</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>VT_DYN_BLACKLIST</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>VT_DYN_BLACKLIST</TT></TD>
|
||||||
<TD ALIGN="LEFT">Name of blacklist file for Dyninst instrumentation (see Section <A HREF="#A3">2.6</A>)</TD>
|
<TD ALIGN="LEFT">Name of blacklist file for Dyninst instrumentation (see Section <A HREF="#A3">[*]</A>)</TD>
|
||||||
<TD ALIGN="LEFT">-</TD>
|
<TD ALIGN="LEFT">-</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>VT_DYN_SHLIBS</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>VT_DYN_SHLIBS</TT></TD>
|
||||||
<TD ALIGN="LEFT">Colon-separated list of shared libraries for Dyninst instrumentation (see Section <A HREF="#A3">2.6</A>)</TD>
|
<TD ALIGN="LEFT">Colon-separated list of shared libraries for Dyninst instrumentation (see Section <A HREF="#A3">[*]</A>)</TD>
|
||||||
<TD ALIGN="LEFT">-</TD>
|
<TD ALIGN="LEFT">-</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>VT_FILTER_SPEC</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>VT_FILTER_SPEC</TT></TD>
|
||||||
<TD ALIGN="LEFT">Name of function/region filter file (see Section <A HREF="#function_filter">5.1</A>)</TD>
|
<TD ALIGN="LEFT">Name of function/region filter file (see Section <A HREF="#function_filter">[*]</A>)</TD>
|
||||||
<TD ALIGN="LEFT">-</TD>
|
<TD ALIGN="LEFT">-</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>VT_GROUPS_SPEC</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>VT_GROUPS_SPEC</TT></TD>
|
||||||
<TD ALIGN="LEFT">Name of function grouping file
|
<TD ALIGN="LEFT">Name of function grouping file
|
||||||
(See Section <A HREF="#function_groups">5.2</A>)</TD>
|
(See Section <A HREF="#function_groups">[*]</A>)</TD>
|
||||||
<TD ALIGN="LEFT">-</TD>
|
<TD ALIGN="LEFT">-</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>VT_UNIFY</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>VT_UNIFY</TT></TD>
|
||||||
@ -1007,7 +1006,7 @@ PAPI Hardware Performance Counters</A>
|
|||||||
|
|
||||||
<P>
|
<P>
|
||||||
If VampirTrace has been built with hardware-counter support enabled (see
|
If VampirTrace has been built with hardware-counter support enabled (see
|
||||||
Section <A HREF="#install">C</A>), VampirTrace is capable of recording hardware counter
|
Section <A HREF="#install">[*]</A>), VampirTrace is capable of recording hardware counter
|
||||||
information as part of the event records. To request the measurement of
|
information as part of the event records. To request the measurement of
|
||||||
certain counters, the user must set the environment variable <TT>VT_METRICS</TT>.
|
certain counters, the user must set the environment variable <TT>VT_METRICS</TT>.
|
||||||
The variable should contain a colon-separated list of counter names,
|
The variable should contain a colon-separated list of counter names,
|
||||||
@ -1023,7 +1022,7 @@ If VampirTrace has been built with hardware-counter support enabled (see
|
|||||||
<BR>
|
<BR>
|
||||||
<BR>
|
<BR>
|
||||||
to record the number of floating point instructions and level 2 cache misses.
|
to record the number of floating point instructions and level 2 cache misses.
|
||||||
See Appendix <A HREF="#papi">B</A> for a full list of PAPI preset counters.
|
See Appendix <A HREF="#papi">[*]</A> for a full list of PAPI preset counters.
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
The user can leave the environment variable unset to indicate that no
|
The user can leave the environment variable unset to indicate that no
|
||||||
@ -1048,7 +1047,7 @@ The GNU glibc implementation provides a special hook mechanism that allows
|
|||||||
|
|
||||||
<P>
|
<P>
|
||||||
If VampirTrace has been built with memory-tracing support enabled (see
|
If VampirTrace has been built with memory-tracing support enabled (see
|
||||||
Section <A HREF="#install">C</A>), VampirTrace is capable of recording memory allocation
|
Section <A HREF="#install">[*]</A>), VampirTrace is capable of recording memory allocation
|
||||||
information as part of the event records. To request the measurement of
|
information as part of the event records. To request the measurement of
|
||||||
the application's allocated memory, the user must set the environment variable
|
the application's allocated memory, the user must set the environment variable
|
||||||
<TT>VT_MEMTRACE</TT> to <TT>yes</TT>.
|
<TT>VT_MEMTRACE</TT> to <TT>yes</TT>.
|
||||||
@ -1149,7 +1148,7 @@ User Defined Counters</A>
|
|||||||
</H1>
|
</H1>
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
In addition to the manual instrumentation (see Section <A HREF="#A1">2.4</A>) the VampirTrace API
|
In addition to the manual instrumentation (see Section <A HREF="#A1">[*]</A>) the VampirTrace API
|
||||||
provides instrumentation calls which allow recording of
|
provides instrumentation calls which allow recording of
|
||||||
program variable values (e.g. iteration counts, calculation results, ...) or any other
|
program variable values (e.g. iteration counts, calculation results, ...) or any other
|
||||||
numerical quantity.
|
numerical quantity.
|
||||||
@ -1295,7 +1294,7 @@ C/C++:
|
|||||||
For all three languages the instrumented sources have to be compiled
|
For all three languages the instrumented sources have to be compiled
|
||||||
with <TT>-DVTRACE</TT>. Otherwise the <TT>VT_*</TT> calls are ignored.
|
with <TT>-DVTRACE</TT>. Otherwise the <TT>VT_*</TT> calls are ignored.
|
||||||
If additionally any functions or regions are manually instrumented by VT's API
|
If additionally any functions or regions are manually instrumented by VT's API
|
||||||
(see Section <A HREF="#A1">2.4</A>) and only the instrumentation calls for user defined
|
(see Section <A HREF="#A1">[*]</A>) and only the instrumentation calls for user defined
|
||||||
counter should be disabled, then the sources have to be compiled with
|
counter should be disabled, then the sources have to be compiled with
|
||||||
<TT>-DVTRACE_NO_COUNT</TT>, too.
|
<TT>-DVTRACE_NO_COUNT</TT>, too.
|
||||||
|
|
||||||
@ -1353,7 +1352,7 @@ The remaining functions <TT>*</TT> will be recorded at most 3000000 times.
|
|||||||
Besides creating filter files by hand, you can also use the <TT>vtfilter</TT>
|
Besides creating filter files by hand, you can also use the <TT>vtfilter</TT>
|
||||||
tool to generate them automatically. This tool reads the provided trace
|
tool to generate them automatically. This tool reads the provided trace
|
||||||
and decides whether a function should be filtered or not, based on the evaluation of
|
and decides whether a function should be filtered or not, based on the evaluation of
|
||||||
certain parameters. For more information see Section <A HREF="#VTFILTER">A.4</A>.
|
certain parameters. For more information see Section <A HREF="#VTFILTER">[*]</A>.
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
|
|
||||||
@ -1380,10 +1379,10 @@ VampirTrace allows assigning functions/regions to a group.
|
|||||||
<TD ALIGN="LEFT">OpenMP constructs and functions</TD>
|
<TD ALIGN="LEFT">OpenMP constructs and functions</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>MEM</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>MEM</TT></TD>
|
||||||
<TD ALIGN="LEFT">Memory allocation functions (see <A HREF="#mem_alloc_counters">4.2</A>)</TD>
|
<TD ALIGN="LEFT">Memory allocation functions (see <A HREF="#mem_alloc_counters">[*]</A>)</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>I/O</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>I/O</TT></TD>
|
||||||
<TD ALIGN="LEFT">I/O functions (see <A HREF="#app_io_calls">4.3</A>)</TD>
|
<TD ALIGN="LEFT">I/O functions (see <A HREF="#app_io_calls">[*]</A>)</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR><TD ALIGN="LEFT"><TT>Application</TT></TD>
|
<TR><TD ALIGN="LEFT"><TT>Application</TT></TD>
|
||||||
<TD ALIGN="LEFT">remaining instrumented functions and source code regions</TD>
|
<TD ALIGN="LEFT">remaining instrumented functions and source code regions</TD>
|
||||||
|
Двоичные данные
ompi/contrib/vt/vt/doc/UserManual.pdf
Двоичные данные
ompi/contrib/vt/vt/doc/UserManual.pdf
Двоичный файл не отображается.
@ -65,6 +65,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
static long vt_node_id = 0;
|
static long vt_node_id = 0;
|
||||||
|
static char* vt_node_name = NULL;
|
||||||
static char* vt_exec = NULL;
|
static char* vt_exec = NULL;
|
||||||
|
|
||||||
/* platform specific initialization */
|
/* platform specific initialization */
|
||||||
@ -110,20 +111,36 @@ void vt_pform_init() {
|
|||||||
vt_time_base = vt_metric_real_usec();
|
vt_time_base = vt_metric_real_usec();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* get unique numeric/string SMP-node identifier */
|
||||||
#ifdef __LIBCATAMOUNT__
|
#ifdef __LIBCATAMOUNT__
|
||||||
vt_node_id = _my_pnid;
|
vt_node_id = (long)_my_pnid;
|
||||||
|
if (asprintf(&vt_node_name, "node%ld", vt_node_id) == -1)
|
||||||
|
vt_error();
|
||||||
#else
|
#else
|
||||||
{
|
{
|
||||||
char buf[16];
|
char buf[256];
|
||||||
ssize_t bytes;
|
ssize_t bytes;
|
||||||
int fd = open(VT_PROCDIR"cray_xt/nid", O_RDONLY);
|
int fd;
|
||||||
|
|
||||||
|
/* get numeric identifier */
|
||||||
|
fd = open(VT_PROCDIR"cray_xt/nid", O_RDONLY);
|
||||||
if (fd < 0) vt_error_msg("Cannot open file "VT_PROCDIR"cray_xt/nid: %s",
|
if (fd < 0) vt_error_msg("Cannot open file "VT_PROCDIR"cray_xt/nid: %s",
|
||||||
strerror(errno));
|
strerror(errno));
|
||||||
bytes = read(fd, buf, 16);
|
bytes = read(fd, buf, 256);
|
||||||
if (bytes <= 0) vt_error_msg("Cannot read file "VT_PROCDIR"cray_xt/nid: %s",
|
if (bytes <= 0) vt_error_msg("Cannot read file "VT_PROCDIR"cray_xt/nid: %s",
|
||||||
strerror(errno));
|
strerror(errno));
|
||||||
close(fd);
|
close(fd);
|
||||||
vt_node_id = atoi(buf);
|
vt_node_id = atol(buf);
|
||||||
|
|
||||||
|
/* get string identifier */
|
||||||
|
fd = open(VT_PROCDIR"cray_xt/cname", O_RDONLY);
|
||||||
|
if (fd < 0) vt_error_msg("Cannot open file "VT_PROCDIR"cray_xt/cname: %s",
|
||||||
|
strerror(errno));
|
||||||
|
bytes = read(fd, buf, 256);
|
||||||
|
if (bytes <= 0) vt_error_msg("Cannot read file "VT_PROCDIR"cray_xt/cname: %s",
|
||||||
|
strerror(errno));
|
||||||
|
close(fd);
|
||||||
|
vt_node_name = strdup(buf);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -207,9 +224,7 @@ long vt_pform_node_id() {
|
|||||||
|
|
||||||
/* unique string SMP-node identifier */
|
/* unique string SMP-node identifier */
|
||||||
char* vt_pform_node_name() {
|
char* vt_pform_node_name() {
|
||||||
static char node[16];
|
return vt_node_name;
|
||||||
sprintf(node, "node%d", vt_node_id);
|
|
||||||
return node;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* number of CPUs */
|
/* number of CPUs */
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user