Changes to OTF:
- otfprofile[-mpi]: - fixed compile error with the PGI compiler Changes to VT: - added support for LIBC [I/O] tracing on Cray XT platforms - vtrun: - do preload Dyninst runtime library (DYNINSTAPI_RT_LIB) when instrumenting user functions by Dyninst This commit was SVN r25505.
Этот коммит содержится в:
родитель
2bb447c804
Коммит
6b879bcf6e
@ -11,6 +11,7 @@
|
||||
- merge groups which have the same members to one group
|
||||
- name groups to "MPI Group X"
|
||||
- added writing of process begin/end records
|
||||
- added support for LIBC [I/O] tracing on Cray XT platforms
|
||||
- added environment variable VT_ONOFF_CHECK_STACK_BALANCE to
|
||||
enable/disable check for stack level balance when switching tracing
|
||||
on/off by using the user API
|
||||
@ -18,15 +19,22 @@
|
||||
building of Fortran support
|
||||
- install a symbolic link 'vtfiltergen[-mpi]' which is a synonym for
|
||||
'vtfilter[-mpi] --gen'
|
||||
- if possible, get resource usage counters for the calling thread
|
||||
instead of the process
|
||||
- disabled unnecessary time synchronization on NEC SX platforms
|
||||
- removed MPI_Address and MPI_Get_address from MPI wrappers
|
||||
- removed limitation of maximum defined MPI handles (groups, comms.,
|
||||
and windows) in a MPI program
|
||||
- fixed incorrect handling of MPI_IN_PLACE
|
||||
- fixed erroneous handling of MPI_Aint within the Fortran MPI wrappers
|
||||
- fixed incomplete tracking of MPI inter-communicators
|
||||
- fixed error handling on flushing the trace buffer
|
||||
- fixed potential memory corruption when flushing the trace buffer
|
||||
multiple times (VT_MAX_FLUSHES != 1)
|
||||
- fixed numbering in thread names
|
||||
- vtunify:
|
||||
- fixed parsing of negative time offsets within unify
|
||||
control data
|
||||
- vtdyn:
|
||||
- detach from application process before continuing its
|
||||
execution (allows signal trapping (e.g. Ctrl+C) within the
|
||||
@ -37,17 +45,14 @@
|
||||
- compiler wrappers:
|
||||
- added options '-vt:preprocess', '-vt:cpp', and '-vt:cppflags'
|
||||
to preprocess source files before parsing by OPARI and/or TAU
|
||||
- added options '-vt:opari-rcfile' and '-vt:opari-table' to set
|
||||
pathnames of the OPARI resource and runtime table file
|
||||
- added option '-vt:nocleanup' to keep intermediate files
|
||||
- vtrun:
|
||||
- do preload Dyninst runtime library (DYNINSTAPI_RT_LIB) when
|
||||
instrumenting user functions by Dyninst
|
||||
- vtsetup: (see tools/vtsetup/ChangeLog:1.0.1)
|
||||
|
||||
5.11.3
|
||||
- if possible, get resource usage counters for the calling thread
|
||||
instead of the process
|
||||
- removed MPI_Address and MPI_Get_address from MPI wrappers
|
||||
- fixed incomplete tracking of MPI inter-communicators
|
||||
- vtunify: fixed parsing of negative time offsets within unify
|
||||
control data
|
||||
|
||||
5.11.2
|
||||
- updated version of internal OTF to 1.9.2sawfish
|
||||
(see extlib/otf/ChangeLog)
|
||||
|
@ -8,3 +8,4 @@ FFLAGS="-target=$XTPE_COMPILE_TARGET"
|
||||
FCFLAGS="-target=$XTPE_COMPILE_TARGET"
|
||||
enable_shared="no"
|
||||
with_mpich2="yes"
|
||||
with_libc=/lib64/libc-2.4.so
|
||||
|
@ -33,7 +33,7 @@ AC_DEFUN([ACVT_DL],
|
||||
AC_HELP_STRING([--with-dl-lib=DLLIB], [use given libdl lib, default: -ldl]),
|
||||
[DLLIB="$withval"])
|
||||
|
||||
AS_IF([test "$PLATFORM" = "bgl" -o "$PLATFORM" = "crayxt"],
|
||||
AS_IF([test "$PLATFORM" = "bgl"],
|
||||
[
|
||||
AC_MSG_NOTICE([error: dynamic linking library (libdl) isn't suitable on this platform])
|
||||
dl_error="yes"
|
||||
|
@ -4032,6 +4032,14 @@ options:
|
||||
-vt:opari <!args> Set options for OPARI command. (see
|
||||
share/vampirtrace/doc/opari/Readme.html)
|
||||
|
||||
-vt:opari-rcfile <file>
|
||||
Set pathname of the OPARI resource file.
|
||||
(default: opari.rc)
|
||||
|
||||
-vt:opari-table <file>
|
||||
Set pathname of the OPARI runtime table file.
|
||||
(default: opari.tab.c)
|
||||
|
||||
-vt:noopari Disable instrumentation of OpenMP contructs
|
||||
by OPARI.
|
||||
|
||||
|
Двоичные данные
ompi/contrib/vt/vt/doc/UserManual.pdf
Двоичные данные
ompi/contrib/vt/vt/doc/UserManual.pdf
Двоичный файл не отображается.
Двоичные данные
ompi/contrib/vt/vt/extlib/otf/docu/api/specification.pdf
Двоичные данные
ompi/contrib/vt/vt/extlib/otf/docu/api/specification.pdf
Двоичный файл не отображается.
@ -3,8 +3,6 @@
|
||||
Authors: Andreas Knuepfer, Robert Dietrich, Matthias Jurenz, Andre Groetzsch
|
||||
*/
|
||||
|
||||
using namespace std;
|
||||
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include <map>
|
||||
@ -14,6 +12,9 @@ using namespace std;
|
||||
#include "comparison.h"
|
||||
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
||||
/* type for pairs in the distance map of CLINKAGE
|
||||
* ('Pair' struct in datastructs.h doesnt contain a less operator that's needed for the map) */
|
||||
typedef pair <uint64_t, uint64_t> StdPairOfRanks;
|
||||
|
@ -306,26 +306,26 @@ fi
|
||||
#
|
||||
|
||||
if test $mpi -eq 1 -a $HAVE_MPI -eq 0; then
|
||||
echo "$EXENAME: Error: This installation of VampirTrace was not compiled \
|
||||
with MPI support. Aborting."
|
||||
echo "$EXENAME: Error: This installation of VampirTrace was not compiled" \
|
||||
"with MPI support. Aborting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test $mpi -eq 1 -a $fortran -eq 1 -a $HAVE_FMPI -eq 0; then
|
||||
echo "$EXENAME: Error: This installation of VampirTrace was not compiled \
|
||||
with MPI Fortran support. Aborting."
|
||||
echo "$EXENAME: Error: This installation of VampirTrace was not compiled" \
|
||||
"with MPI Fortran support. Aborting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test $mt -eq 1 -a $HAVE_THREADS -eq 0; then
|
||||
echo "$EXENAME: Error: This installation of VampirTrace was not compiled \
|
||||
with Multithreading support. Aborting."
|
||||
echo "$EXENAME: Error: This installation of VampirTrace was not compiled" \
|
||||
"with Multithreading support. Aborting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test $dyninst -eq 1 -a $HAVE_DYNINST -eq 0; then
|
||||
echo "$EXENAME: Error: This installation of VampirTrace was not compiled \
|
||||
with Dyninst support. Aborting."
|
||||
echo "$EXENAME: Error: This installation of VampirTrace was not compiled" \
|
||||
"with Dyninst support. Aborting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@ -339,7 +339,13 @@ if test $mpi -eq 1 -a $fortran -eq 1 -a x"$FMPILIB" != x; then
|
||||
fi
|
||||
|
||||
if test $dyninst -eq 1; then
|
||||
ld_preload="$libdir/$DYNATTLIB:$ld_preload"
|
||||
if test x"$DYNINSTAPI_RT_LIB" = x; then
|
||||
echo "$EXENAME: Error: Environment variable DYNINSTAPI_RT_LIB is not" \
|
||||
"defined. Aborting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ld_preload="$DYNINSTAPI_RT_LIB:$libdir/$DYNATTLIB:$ld_preload"
|
||||
fi
|
||||
|
||||
if test x"$extra_libs" != x; then
|
||||
|
@ -860,6 +860,32 @@ parseCommandLine( int argc, char** argv )
|
||||
|
||||
delete [] opari_args;
|
||||
}
|
||||
// -vt:opari-rcfile
|
||||
//
|
||||
else if( arg.compare( "-vt:opari-rcfile" ) == 0 )
|
||||
{
|
||||
if( i == args.size() - 1 )
|
||||
{
|
||||
std::cerr << ExeName << ": <file> expected -- -vt:opari-rcfile"
|
||||
<< std::endl;
|
||||
return false;
|
||||
}
|
||||
|
||||
Config.setOpariRcFile( args[++i] );
|
||||
}
|
||||
// -vt:opari-table
|
||||
//
|
||||
else if( arg.compare( "-vt:opari-table" ) == 0 )
|
||||
{
|
||||
if( i == args.size() - 1 )
|
||||
{
|
||||
std::cerr << ExeName << ": <file> expected -- -vt:opari-table"
|
||||
<< std::endl;
|
||||
return false;
|
||||
}
|
||||
|
||||
Config.setOpariTabFile( args[++i] );
|
||||
}
|
||||
// -vt:noopari
|
||||
//
|
||||
else if( arg.compare( "-vt:noopari" ) == 0 )
|
||||
@ -1030,11 +1056,7 @@ parseCommandLine( int argc, char** argv )
|
||||
found = arg.find_first_of( special_char, found + 2 );
|
||||
}
|
||||
|
||||
// -vt:help, -vt:version, -vt:show, -vt:showme, vt:showme-compile,
|
||||
// -vt:showme-link, -vt:seq, -vt:mpi, -vt:mt, -vt:hyb,
|
||||
// -vt:inst, -vt:opari, -vt:tau, -vt:pdt, -vt:preprocess, -vt:cpp,
|
||||
// -vt:cppflags
|
||||
// (processed above; ignore here)
|
||||
// ignore arguments already processed above
|
||||
//
|
||||
if( arg.compare( "-vt:help" ) == 0 ||
|
||||
arg.compare( "-vt:version" ) == 0 ||
|
||||
@ -1048,27 +1070,22 @@ parseCommandLine( int argc, char** argv )
|
||||
arg.compare( "-vt:mpi" ) == 0 ||
|
||||
arg.compare( "-vt:mt" ) == 0 ||
|
||||
arg.compare( "-vt:hyb" ) == 0 ||
|
||||
arg.compare( "-vt:inst" ) == 0 ||
|
||||
arg.compare( "-vt:opari" ) == 0 ||
|
||||
arg.compare( "-vt:noopari" ) == 0 ||
|
||||
arg.compare( "-vt:tau" ) == 0 ||
|
||||
arg.compare( "-vt:pdt" ) == 0 ||
|
||||
arg.compare( "-vt:preprocess" ) == 0 ||
|
||||
arg.compare( "-vt:cpp" ) == 0 ||
|
||||
arg.compare( "-vt:cppflags" ) == 0 )
|
||||
arg.compare( "-vt:preprocess" ) == 0 )
|
||||
{
|
||||
// do nothing
|
||||
|
||||
}
|
||||
else if( arg.compare("-vt:inst") == 0 ||
|
||||
arg.compare("-vt:opari") == 0 ||
|
||||
arg.compare("-vt:opari-rcfile") == 0 ||
|
||||
arg.compare("-vt:opari-table") == 0 ||
|
||||
arg.compare("-vt:tau") == 0 ||
|
||||
arg.compare("-vt:pdt") == 0 ||
|
||||
arg.compare("-vt:cpp") == 0 ||
|
||||
arg.compare("-vt:cppflags") == 0 )
|
||||
{
|
||||
// skip next argument, if necessary
|
||||
if( arg.compare("-vt:inst") == 0 ||
|
||||
arg.compare("-vt:opari") == 0 ||
|
||||
arg.compare("-vt:tau") == 0 ||
|
||||
arg.compare("-vt:pdt") == 0 ||
|
||||
arg.compare("-vt:cpp") == 0 ||
|
||||
arg.compare("-vt:cppflags") == 0 )
|
||||
{
|
||||
i++;
|
||||
}
|
||||
i++;
|
||||
}
|
||||
// -vt:<cc|CC|c++|cxx|f77|f90> <cmd>
|
||||
//
|
||||
@ -1747,6 +1764,14 @@ showUsage()
|
||||
<< " -vt:opari <[!]args> Set/add options for the OPARI command." << std::endl
|
||||
<< " (see " << vt_installdirs_get(VT_INSTALLDIR_DATADIR) << "/doc/opari/Readme.html for more information, default: " << Config.opari_args << ")" << std::endl
|
||||
<< std::endl
|
||||
<< " -vt:opari-rcfile <file>" << std::endl
|
||||
<< " Set pathname of the OPARI resource file." << std::endl
|
||||
<< " (default: " << ConfigS::DEFAULT_OPARI_RCFILE() << ")" << std::endl
|
||||
<< std::endl
|
||||
<< " -vt:opari-table <file>" << std::endl
|
||||
<< " Set pathname of the OPARI runtime table file." << std::endl
|
||||
<< " (default: " << ConfigS::DEFAULT_OPARI_TABFILE().first << ")" << std::endl
|
||||
<< std::endl
|
||||
<< " -vt:noopari Disable instrumentation of OpenMP contructs by OPARI." << std::endl
|
||||
<< std::endl
|
||||
<< " -vt:tau <[!]args> Set/add options for the TAU instrumentor command." << std::endl
|
||||
|
@ -358,8 +358,11 @@ void vt_iowrap_finalize()
|
||||
{
|
||||
if( fd_to_vampirid!=NULL )
|
||||
free(fd_to_vampirid);
|
||||
/* don't close the LIBC library handle at this point; it's still needed
|
||||
if the application is statically linked
|
||||
if( iolib_handle!=NULL )
|
||||
dlclose(iolib_handle);
|
||||
*/
|
||||
}
|
||||
|
||||
/*********************************************/
|
||||
|
@ -196,8 +196,11 @@ void vt_libcwrap_init(void)
|
||||
|
||||
void vt_libcwrap_finalize(void)
|
||||
{
|
||||
/* don't close the LIBC library handle at this point; it's still needed
|
||||
if the application is statically linked
|
||||
if( libc_handle )
|
||||
dlclose( libc_handle );
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user