From a579b74ebccb5d1b9be52ce3284952e72a294b1f Mon Sep 17 00:00:00 2001 From: Matthias Jurenz Date: Wed, 4 Jul 2012 12:46:53 +0000 Subject: [PATCH] Upgraded VT version to 5.13 This commit was SVN r26743. --- ompi/contrib/vt/vt/AUTHORS | 1 + ompi/contrib/vt/vt/ChangeLog | 60 +- ompi/contrib/vt/vt/INSTALL | 7 +- ompi/contrib/vt/vt/Makefile.am | 10 +- ompi/contrib/vt/vt/VERSION | 2 +- ompi/contrib/vt/vt/acinclude.m4 | 2 + ompi/contrib/vt/vt/config/defaults/bgl | 1 - ompi/contrib/vt/vt/config/defaults/bgp | 3 +- ompi/contrib/vt/vt/config/defaults/crayxe | 3 - ompi/contrib/vt/vt/config/defaults/crayxt | 3 - ompi/contrib/vt/vt/config/defaults/ibm | 4 +- ompi/contrib/vt/vt/config/defaults/ibm-64 | 4 +- ompi/contrib/vt/vt/config/defaults/necsx | 4 +- ompi/contrib/vt/vt/config/defaults/sicortex | 3 +- .../contrib/vt/vt/config/defaults/sicortex-32 | 4 +- ompi/contrib/vt/vt/config/defaults/sun | 2 - .../vt/vt/config/m4/acinclude.compinst.m4 | 95 +- .../vt/vt/config/m4/acinclude.compwrap.m4 | 104 +- .../contrib/vt/vt/config/m4/acinclude.conf.m4 | 43 +- .../vt/vt/config/m4/acinclude.cross.m4 | 2 +- .../contrib/vt/vt/config/m4/acinclude.cuda.m4 | 1 + .../vt/vt/config/m4/acinclude.cupti.m4 | 8 +- .../vt/vt/config/m4/acinclude.iofsl.m4 | 155 + .../vt/vt/config/m4/acinclude.liberty.m4 | 74 + .../vt/vt/config/m4/acinclude.libwrap.m4 | 3 +- ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 | 130 +- ompi/contrib/vt/vt/config/m4/acinclude.otf.m4 | 42 +- .../vt/vt/config/m4/acinclude.tauinst.m4 | 2 +- .../vt/vt/config/m4/acinclude.unimci.m4 | 53 +- .../vt/vt/config/m4/acinclude.vtsetup.m4 | 3 + .../vt/config/mpigen/mk_fortran_wrapper.sh.in | 15 +- ompi/contrib/vt/vt/config_bottom.h | 7 - ompi/contrib/vt/vt/configure.in | 72 +- ompi/contrib/vt/vt/doc/FILTER.SPEC | 61 +- ompi/contrib/vt/vt/doc/GROUPS.SPEC | 22 +- ompi/contrib/vt/vt/doc/UserManual.html | 1218 ++++++-- ompi/contrib/vt/vt/doc/UserManual.pdf | Bin 506796 -> 600842 bytes ompi/contrib/vt/vt/etc/Makefile.am | 6 - ompi/contrib/vt/vt/extlib/otf/AUTHORS | 3 + ompi/contrib/vt/vt/extlib/otf/ChangeLog | 54 +- ompi/contrib/vt/vt/extlib/otf/VERSION | 9 +- ompi/contrib/vt/vt/extlib/otf/acinclude.m4 | 1 + .../extlib/otf/config/m4/acinclude.zoidfs.m4 | 177 ++ ompi/contrib/vt/vt/extlib/otf/configure.in | 8 +- .../vt/extlib/otf/docu/tools/otfprofile.pdf | Bin 267378 -> 288558 bytes .../otf/docu/tools/otfprofile_clustering.pdf | Bin 703924 -> 712733 bytes .../vt/vt/extlib/otf/docu/tools/otftools.pdf | Bin 105049 -> 107128 bytes ompi/contrib/vt/vt/extlib/otf/otf_vc08.sln | 2 + .../vt/vt/extlib/otf/otfauxlib/Makefile.am | 12 +- .../extlib/otf/otfauxlib/OTFAUX_MsgMatching.c | 276 +- .../extlib/otf/otfauxlib/OTFAUX_MsgMatching.h | 4 +- .../vt/extlib/otf/otfauxlib/OTFAUX_Process.c | 1121 +++++++ .../vt/extlib/otf/otfauxlib/OTFAUX_Process.h | 199 ++ .../extlib/otf/otfauxlib/OTFAUX_SharedState.h | 36 + .../vt/vt/extlib/otf/otfauxlib/OTFAUX_Stack.h | 84 + .../vt/vt/extlib/otf/otfauxlib/OTFAUX_State.c | 758 +++++ .../vt/vt/extlib/otf/otfauxlib/OTFAUX_State.h | 371 +++ .../extlib/otf/otfauxlib/OTFAUX_Thumbnail.c | 638 ++-- .../extlib/otf/otfauxlib/OTFAUX_Thumbnail.h | 145 +- .../otf/otfauxlib/libotfaux_vs08.vcproj | 341 +++ .../vt/vt/extlib/otf/otfauxlib/otfaux.h | 1 + .../vt/vt/extlib/otf/otflib/Makefile.am | 6 +- .../vt/vt/extlib/otf/otflib/OTF_CopyHandler.c | 59 +- .../vt/vt/extlib/otf/otflib/OTF_CopyHandler.h | 23 + .../otf/otflib/OTF_CopyHandler_stream.c | 56 + .../otf/otflib/OTF_CopyHandler_stream.h | 25 + .../vt/vt/extlib/otf/otflib/OTF_Definitions.h | 32 +- .../vt/vt/extlib/otf/otflib/OTF_File.c | 241 +- .../vt/vt/extlib/otf/otflib/OTF_File.h | 80 + .../vt/vt/extlib/otf/otflib/OTF_FileManager.c | 93 +- .../vt/vt/extlib/otf/otflib/OTF_FileManager.h | 27 +- .../vt/vt/extlib/otf/otflib/OTF_File_iofsl.c | 1840 ++++++++++++ .../vt/vt/extlib/otf/otflib/OTF_File_iofsl.h | 108 + .../vt/vt/extlib/otf/otflib/OTF_Filenames.c | 69 +- .../vt/vt/extlib/otf/otflib/OTF_Filenames.h | 2 + .../vt/vt/extlib/otf/otflib/OTF_Handler.h | 108 + .../vt/extlib/otf/otflib/OTF_HandlerArray.c | 45 + .../vt/extlib/otf/otflib/OTF_HandlerArray.h | 242 +- .../vt/vt/extlib/otf/otflib/OTF_KeyValue.c | 11 + .../vt/vt/extlib/otf/otflib/OTF_KeyValue.h | 13 + .../vt/vt/extlib/otf/otflib/OTF_Keywords.h | 19 + .../vt/extlib/otf/otflib/OTF_MasterControl.c | 78 +- .../vt/extlib/otf/otflib/OTF_MasterControl.h | 14 + .../vt/vt/extlib/otf/otflib/OTF_Parse.c | 240 +- .../vt/vt/extlib/otf/otflib/OTF_Platform.c | 32 + .../vt/extlib/otf/otflib/OTF_Platform_win.h | 16 + .../vt/vt/extlib/otf/otflib/OTF_RBuffer.c | 37 +- .../vt/vt/extlib/otf/otflib/OTF_RStream.c | 4 +- .../vt/vt/extlib/otf/otflib/OTF_Reader.c | 2 +- .../vt/vt/extlib/otf/otflib/OTF_Version.h | 4 +- .../vt/vt/extlib/otf/otflib/OTF_WBuffer.c | 28 +- .../vt/vt/extlib/otf/otflib/OTF_WStream.c | 480 ++- .../vt/vt/extlib/otf/otflib/OTF_WStream.h | 48 +- .../vt/vt/extlib/otf/otflib/OTF_Writer.c | 355 ++- .../vt/vt/extlib/otf/otflib/OTF_Writer.h | 93 +- .../vt/extlib/otf/otflib/libotf_vs08.vcproj | 8 + ompi/contrib/vt/vt/extlib/otf/otflib_py/otf.i | 108 + .../vt/extlib/otf/otflib_py/pyOTF_Wrapper.h | 364 ++- .../vt/vt/extlib/otf/tests/Makefile.am | 3 +- .../vt/extlib/otf/tests/thumbnail/Makefile.am | 11 - .../vt/extlib/otf/tests/thumbnail/thumbnail.c | 62 - .../vt/vt/extlib/otf/tools/otf2vtf/otf2vtf.c | 27 +- .../vt/vt/extlib/otf/tools/otfaux/Control.cpp | 312 +- .../vt/vt/extlib/otf/tools/otfaux/Control.h | 101 +- .../vt/vt/extlib/otf/tools/otfaux/Handler.cpp | 463 ++- .../vt/vt/extlib/otf/tools/otfaux/Handler.h | 48 +- .../vt/vt/extlib/otf/tools/otfaux/Makefile.am | 15 +- .../vt/vt/extlib/otf/tools/otfaux/State.cpp | 1546 ---------- .../vt/vt/extlib/otf/tools/otfaux/State.h | 427 --- .../vt/vt/extlib/otf/tools/otfaux/Stats.cpp | 900 ++++++ .../vt/vt/extlib/otf/tools/otfaux/Stats.h | 296 ++ .../vt/vt/extlib/otf/tools/otfaux/otfaux.cpp | 648 +++- .../otf/tools/otfaux/otfaux_vs08.vcproj | 14 +- .../extlib/otf/tools/otfcompress/Makefile.am | 4 +- .../otf/tools/otfcompress/otfcompress.c | 33 +- .../vt/extlib/otf/tools/otfconfig/Makefile.am | 2 +- .../vt/extlib/otf/tools/otfconfig/otfconfig.c | 54 +- .../vt/extlib/otf/tools/otfdump/Handler.cpp | 137 +- .../vt/vt/extlib/otf/tools/otfdump/Handler.h | 23 + .../vt/extlib/otf/tools/otfdump/otfdump.cpp | 141 +- .../vt/vt/extlib/otf/tools/otfinfo/handler.c | 8 + .../vt/vt/extlib/otf/tools/otfinfo/handler.h | 3 + .../vt/vt/extlib/otf/tools/otfinfo/otfinfo.c | 18 +- .../extlib/otf/tools/otfmerge/Makefile.common | 8 +- .../vt/vt/extlib/otf/tools/otfmerge/handler.c | 102 +- .../vt/vt/extlib/otf/tools/otfmerge/handler.h | 11 + .../vt/extlib/otf/tools/otfmerge/otfmerge.c | 244 +- .../otf/tools/otfprofile/Makefile.common | 6 + .../tools/otfprofile/collect_dispersion.cpp | 655 +++++ .../otf/tools/otfprofile/collect_dispersion.h | 18 + .../otf/tools/otfprofile/create_latex.cpp | 265 +- .../otf/tools/otfprofile/create_marker.cpp | 298 ++ .../otf/tools/otfprofile/create_marker.h | 17 + .../extlib/otf/tools/otfprofile/datastructs.h | 143 +- .../otf/tools/otfprofile/otfprofile.cpp | 212 +- .../tools/otfprofile/process_dispersion.cpp | 293 ++ .../otf/tools/otfprofile/process_dispersion.h | 17 + .../otf/tools/otfprofile/reduce_data.cpp | 288 +- .../extlib/otf/tools/otfprofile/reduce_data.h | 2 + .../otf/tools/otfprofile/summarize_data.cpp | 50 +- .../otf/tools/otfprofile/summarize_data.h | 2 + .../vt/extlib/otf/tools/otfshrink/Handler.cpp | 65 +- .../vt/extlib/otf/tools/otfshrink/Makefile.am | 1 + .../extlib/otf/tools/otfshrink/otfshrink.cpp | 452 ++- .../vt/extlib/otf/tools/otfshrink/procList.h | 87 + .../vt/vt/extlib/otf/tools/vtf2otf/vtf2otf.c | 51 +- .../otf/vendor/jenkins_hash/Makefile.am | 2 + .../otf/vendor/jenkins_hash/jenkins_hash.c | 2 - .../otf/vendor/jenkins_hash/jenkins_hash.h | 34 +- ompi/contrib/vt/vt/rfg/rfg_filter.c | 191 +- ompi/contrib/vt/vt/rfg/rfg_filter.h | 14 +- ompi/contrib/vt/vt/rfg/rfg_groups.c | 11 +- ompi/contrib/vt/vt/rfg/rfg_regions.c | 266 +- ompi/contrib/vt/vt/rfg/rfg_regions.h | 30 +- ompi/contrib/vt/vt/tools/Makefile.am | 7 + ompi/contrib/vt/vt/tools/opari/ChangeLog | 3 + ompi/contrib/vt/vt/tools/opari/doc/ChangeLog | 3 + .../vt/vt/tools/opari/tool/process_c.cc | 4 + .../vt/vt/tools/opari/tool/process_f.cc | 4 + ompi/contrib/vt/vt/tools/vtdyn/vt_dyn.cc | 25 +- .../vt/tools/vtfilter/old/vt_tracefilter.cc | 40 +- ompi/contrib/vt/vt/tools/vtfilter/vt_filter.h | 41 +- .../vt/vt/tools/vtfilter/vt_filter_trc.cc | 6 +- ompi/contrib/vt/vt/tools/vtiofsl/Makefile.am | 31 + .../vt/vt/tools/vtiofsl/platform/crayxk6 | 249 ++ .../vtiofsl/platform/crayxk6-iofwd-msaa.cf | 243 ++ .../tools/vtiofsl/platform/crayxk6-iofwd.cf | 235 ++ .../vt/vt/tools/vtiofsl/vtiofsl-common.in | 94 + .../vt/vt/tools/vtiofsl/vtiofsl-start.in | 194 ++ .../vt/vt/tools/vtiofsl/vtiofsl-stop.in | 102 + ompi/contrib/vt/vt/tools/vtrun/vtrun.in | 13 +- .../vt/vt/tools/vtsetup/vtsetup-data.xml.in | 73 + .../vt/vt/tools/vtunify/Makefile.common | 39 +- .../vtunify/hooks/vt_unify_hooks_aevents.cc | 38 +- .../vtunify/hooks/vt_unify_hooks_aevents.h | 2 - .../vtunify/hooks/vt_unify_hooks_base.cc | 19 +- .../tools/vtunify/hooks/vt_unify_hooks_base.h | 13 +- .../vtunify/hooks/vt_unify_hooks_margins.cc | 10 +- .../vtunify/hooks/vt_unify_hooks_margins.h | 55 + .../vtunify/hooks/vt_unify_hooks_msgmatch.cc | 772 ----- .../vtunify/hooks/vt_unify_hooks_msgmatch.h | 164 -- .../hooks/vt_unify_hooks_msgmatch_snaps.cc | 2594 +++++++++++++++++ .../hooks/vt_unify_hooks_msgmatch_snaps.h | 349 +++ .../vtunify/hooks/vt_unify_hooks_prof.cc | 20 +- .../tools/vtunify/hooks/vt_unify_hooks_prof.h | 3 - .../tools/vtunify/hooks/vt_unify_hooks_raw.cc | 14 +- .../tools/vtunify/hooks/vt_unify_hooks_raw.h | 11 + .../tools/vtunify/hooks/vt_unify_hooks_tdb.cc | 1410 --------- .../tools/vtunify/hooks/vt_unify_hooks_tdb.h | 253 -- ompi/contrib/vt/vt/tools/vtunify/vt_unify.cc | 1168 ++++++-- ompi/contrib/vt/vt/tools/vtunify/vt_unify.h | 180 +- .../vt/vt/tools/vtunify/vt_unify_defs.cc | 248 +- .../vt/vt/tools/vtunify/vt_unify_defs.h | 9 +- .../vt/vt/tools/vtunify/vt_unify_defs_recs.h | 8 +- .../vt/vt/tools/vtunify/vt_unify_esync.cc | 2 - .../vt/vt/tools/vtunify/vt_unify_esync.h | 6 +- .../vt/tools/vtunify/vt_unify_events_stats.cc | 349 ++- .../vt/tools/vtunify/vt_unify_events_stats.h | 2 +- .../vt/vt/tools/vtunify/vt_unify_handlers.cc | 70 +- .../vt/vt/tools/vtunify/vt_unify_handlers.h | 3 +- .../vt/vt/tools/vtunify/vt_unify_hooks.cc | 44 +- .../vt/vt/tools/vtunify/vt_unify_hooks.h | 41 +- .../vt/vt/tools/vtunify/vt_unify_lvector.hh | 2 - .../vt/vt/tools/vtunify/vt_unify_markers.cc | 208 +- .../vt/vt/tools/vtunify/vt_unify_markers.h | 6 - .../vt/vt/tools/vtunify/vt_unify_sync.h | 19 +- .../vt/vt/tools/vtunify/vt_unify_tkfac.cc | 1 - .../vt/vt/tools/vtunify/vt_unify_tkfac.h | 3 +- .../vt/tools/vtunify/vt_unify_tkfac_scope.h | 4 - .../vt/vt/tools/vtunify/vt_unify_usrcom.cc | 1 - .../vt/vt/tools/vtunify/vt_unify_usrcom.h | 7 +- .../contrib/vt/vt/tools/vtwrapper/Makefile.am | 40 +- .../vt/vt/tools/vtwrapper/vt_wrapper.cc | 261 +- .../tools/vtwrapper/vtc++-wrapper-data.txt.in | 2 +- .../tools/vtwrapper/vtcc-wrapper-data.txt.in | 2 +- .../tools/vtwrapper/vtf77-wrapper-data.txt.in | 31 - ...data.txt.in => vtfort-wrapper-data.txt.in} | 4 +- .../vtwrapper/vtnvcc-wrapper-data.txt.in | 24 +- ompi/contrib/vt/vt/util/util.c | 6 - ompi/contrib/vt/vt/util/util.h | 3 - ompi/contrib/vt/vt/vtlib/Makefile.am | 46 +- .../vt-java-default-filter.spec | 0 ompi/contrib/vt/vt/vtlib/vt_comp_gnu.c | 5 + ompi/contrib/vt/vt/vtlib/vt_comp_xl.c | 89 +- ompi/contrib/vt/vt/vtlib/vt_cudart.c | 463 ++- ompi/contrib/vt/vt/vtlib/vt_cudartwrap.c | 309 ++ ompi/contrib/vt/vt/vtlib/vt_cupti.h | 12 - ompi/contrib/vt/vt/vtlib/vt_cupti_activity.c | 123 +- ompi/contrib/vt/vt/vtlib/vt_cupti_callback.c | 325 +-- ompi/contrib/vt/vt/vtlib/vt_defs.h | 22 +- ompi/contrib/vt/vt/vtlib/vt_demangle.h | 30 + ompi/contrib/vt/vt/vtlib/vt_dyninst.c | 6 +- ompi/contrib/vt/vt/vtlib/vt_env.c | 351 ++- ompi/contrib/vt/vt/vtlib/vt_env.h | 17 +- ompi/contrib/vt/vt/vtlib/vt_error.c | 12 +- ompi/contrib/vt/vt/vtlib/vt_gpu.c | 170 +- ompi/contrib/vt/vt/vtlib/vt_gpu.h | 69 +- ompi/contrib/vt/vt/vtlib/vt_iofsl.c | 237 ++ ompi/contrib/vt/vt/vtlib/vt_iofsl.h | 46 + ompi/contrib/vt/vt/vtlib/vt_iowrap.c | 66 +- ompi/contrib/vt/vt/vtlib/vt_iowrap.h | 54 + ompi/contrib/vt/vt/vtlib/vt_libwrap.c | 26 +- ompi/contrib/vt/vt/vtlib/vt_mpicom.c | 25 +- ompi/contrib/vt/vt/vtlib/vt_mpifile.c | 6 +- ompi/contrib/vt/vt/vtlib/vt_mpiwrap.c | 214 +- ompi/contrib/vt/vt/vtlib/vt_otf_gen.c | 457 ++- ompi/contrib/vt/vt/vtlib/vt_otf_gen.h | 5 +- ompi/contrib/vt/vt/vtlib/vt_otf_sum.c | 18 +- ompi/contrib/vt/vt/vtlib/vt_plugin_cntr.c | 7 +- ompi/contrib/vt/vt/vtlib/vt_plugin_cntr_int.h | 15 + ompi/contrib/vt/vt/vtlib/vt_pomp.c | 3 +- ompi/contrib/vt/vt/vtlib/vt_thrd.c | 30 +- ompi/contrib/vt/vt/vtlib/vt_thrd.h | 30 +- ompi/contrib/vt/vt/vtlib/vt_trc.c | 1004 ++++--- ompi/contrib/vt/vt/vtlib/vt_trc.h | 22 +- ompi/contrib/vt/vt/vtlib/vt_unimci.c | 2 +- ompi/contrib/vt/vt/vtlib/vt_user_region.c | 15 +- 257 files changed, 25066 insertions(+), 9764 deletions(-) create mode 100644 ompi/contrib/vt/vt/config/m4/acinclude.iofsl.m4 create mode 100644 ompi/contrib/vt/vt/config/m4/acinclude.liberty.m4 delete mode 100644 ompi/contrib/vt/vt/etc/Makefile.am create mode 100644 ompi/contrib/vt/vt/extlib/otf/config/m4/acinclude.zoidfs.m4 create mode 100644 ompi/contrib/vt/vt/extlib/otf/otfauxlib/OTFAUX_Process.c create mode 100644 ompi/contrib/vt/vt/extlib/otf/otfauxlib/OTFAUX_Process.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/otfauxlib/OTFAUX_SharedState.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/otfauxlib/OTFAUX_Stack.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/otfauxlib/OTFAUX_State.c create mode 100644 ompi/contrib/vt/vt/extlib/otf/otfauxlib/OTFAUX_State.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/otfauxlib/libotfaux_vs08.vcproj create mode 100644 ompi/contrib/vt/vt/extlib/otf/otflib/OTF_File_iofsl.c create mode 100644 ompi/contrib/vt/vt/extlib/otf/otflib/OTF_File_iofsl.h delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tests/thumbnail/Makefile.am delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tests/thumbnail/thumbnail.c delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfaux/State.cpp delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfaux/State.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfaux/Stats.cpp create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfaux/Stats.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/collect_dispersion.cpp create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/collect_dispersion.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/create_marker.cpp create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/create_marker.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/process_dispersion.cpp create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/process_dispersion.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfshrink/procList.h create mode 100644 ompi/contrib/vt/vt/tools/vtiofsl/Makefile.am create mode 100644 ompi/contrib/vt/vt/tools/vtiofsl/platform/crayxk6 create mode 100644 ompi/contrib/vt/vt/tools/vtiofsl/platform/crayxk6-iofwd-msaa.cf create mode 100644 ompi/contrib/vt/vt/tools/vtiofsl/platform/crayxk6-iofwd.cf create mode 100644 ompi/contrib/vt/vt/tools/vtiofsl/vtiofsl-common.in create mode 100644 ompi/contrib/vt/vt/tools/vtiofsl/vtiofsl-start.in create mode 100644 ompi/contrib/vt/vt/tools/vtiofsl/vtiofsl-stop.in delete mode 100644 ompi/contrib/vt/vt/tools/vtunify/hooks/vt_unify_hooks_msgmatch.cc delete mode 100644 ompi/contrib/vt/vt/tools/vtunify/hooks/vt_unify_hooks_msgmatch.h create mode 100644 ompi/contrib/vt/vt/tools/vtunify/hooks/vt_unify_hooks_msgmatch_snaps.cc create mode 100644 ompi/contrib/vt/vt/tools/vtunify/hooks/vt_unify_hooks_msgmatch_snaps.h delete mode 100644 ompi/contrib/vt/vt/tools/vtunify/hooks/vt_unify_hooks_tdb.cc delete mode 100644 ompi/contrib/vt/vt/tools/vtunify/hooks/vt_unify_hooks_tdb.h delete mode 100644 ompi/contrib/vt/vt/tools/vtwrapper/vtf77-wrapper-data.txt.in rename ompi/contrib/vt/vt/tools/vtwrapper/{vtf90-wrapper-data.txt.in => vtfort-wrapper-data.txt.in} (90%) rename ompi/contrib/vt/vt/{etc => vtlib}/vt-java-default-filter.spec (100%) create mode 100644 ompi/contrib/vt/vt/vtlib/vt_demangle.h create mode 100644 ompi/contrib/vt/vt/vtlib/vt_iofsl.c create mode 100644 ompi/contrib/vt/vt/vtlib/vt_iofsl.h diff --git a/ompi/contrib/vt/vt/AUTHORS b/ompi/contrib/vt/vt/AUTHORS index 2e7c80d597..270e4281ec 100644 --- a/ompi/contrib/vt/vt/AUTHORS +++ b/ompi/contrib/vt/vt/AUTHORS @@ -7,6 +7,7 @@ Andreas Knuepfer Ronny Brendel Matthias Lieber Jens Doleschal +Thomas Ilsche Joachim Protze Holger Mickler Michael Heyde diff --git a/ompi/contrib/vt/vt/ChangeLog b/ompi/contrib/vt/vt/ChangeLog index ed044174b7..ce2b23b970 100644 --- a/ompi/contrib/vt/vt/ChangeLog +++ b/ompi/contrib/vt/vt/ChangeLog @@ -1,5 +1,59 @@ -5.12.2openmpi - - updated version of internal OTF to 1.10.2openmpi +5.13openmpi + - updated version of internal OTF to 1.11.1openmpi + (see extlib/otf/ChangeLog) + - added support for highly parallel trace writing using the + I/O Forwarding Scalability Layer (IOFSL) with atomic append + aggregation + - added support for generating snapshots which allows Vampir to load + subsets of the resulting trace + - introduced new vtfort compiler wrapper for compiling *any* Fortran + code (Fortran 77, 90, 2003, etc.) + (vtf77 and vtf90 still exist, but they are symlinks to vtfort) + - added support for automatic instrumentation with Cray CCE compiler + - improved compiler instrumentation support for IBM XLC/XLF compilers + version 11/13 + - introduced environment variable VT_GPUTRACE, which replaces several + CUDA tracing environment variables + - expose flush of CUPTI activities as measurement overhead + - added CUDA runtime API functions to CUDA runtime API wrapper, which + are new in CUDA 4.2 and 5.0.7 (preview release) + - extended function filter capabilities by + - recursive filtering (disables recording callees of + filtered function) + - function group filtering + - stack level filtering + - vtunify[-mpi]: + - removed strict order of command line parameters + - added compatibility check for input trace file generated + by a different VampirTrace version + - drop/adapt records which have references to processes + disabled by the process filter + - count message matching irregularities + (i.e. number of unmatched and reversed messages) + - fixed a Heisenbug in conversion of local to global timestamps + (occurred when using the Intel compiler with O2 or higher + optimization) + - compiler wrappers: + - added option '-vt:reusefiles' to reuse kept intermediate + files generated by a previous run of OPARI and/or PDT/TAU + - added option '-vt:keepfiles' as synonym for '-vt:nocleanup' + - vtnvcc: fixed forwarding of compiler/linker options + - fixed handling of 'errno' in LIBC[-I/O] wrappers on AIX + - fixed handling of MPI_Aint in MPI-2 Fortran wrappers + (MPI_Aint=INTEGER(KIND=MPI_ADDRESS_KIND)) + - do not abort if the application requests the MPI thread support level + MPI_THREAD_SERIALIZED (no MPI communication events will be recorded) + - fixed GPU compute idle time measurement with CUPTI activity tracing + - fixed installation issue when prefix is set to the source directory + (e.g. ./configure --prefix=$PWD) + - fixed handling of unidirectional collective operations (e.g. broad- + cast, gather, scatter) using intercommunicators + - fixed hanging mutatee when using binary instrumentation from an + Intel-built VampirTrace installation + - OPARI: (see tools/opari/ChangeLog:23) + +5.12.2 + - updated version of internal OTF to 1.10.2coelacanth (see extlib/otf/ChangeLog) - added support for CUDA tracing via CUPTI callbacks and activities (runtime and driver API, kernels, memory copies and GPU memory usage) @@ -47,7 +101,7 @@ MPI/CUDA mixed programs - OPARI: (see tools/opari/ChangeLog:22) -5.12.1openmpi +5.12.1 - updated version of internal OTF to 1.10.1coelacanth (see extlib/otf/ChangeLog) - fixed detection of Open64 compilers for automatic instrumentation diff --git a/ompi/contrib/vt/vt/INSTALL b/ompi/contrib/vt/vt/INSTALL index c8be645738..5350e7405f 100644 --- a/ompi/contrib/vt/vt/INSTALL +++ b/ompi/contrib/vt/vt/INSTALL @@ -56,7 +56,8 @@ How to install and configure VampirTrace --enable-compinst=LIST enable support for compiler instrumentation, - (gnu,intel,pathscale,pgi,sun,xl,ftrace,openuh) + (gnu,intel,pathscale,pgi,pgi9,craycce,xl,necsx, + open64,openuh) A VampirTrace installation can handle different compilers. The first item in the list is the run-time default. @@ -65,7 +66,7 @@ How to install and configure VampirTrace --enable-dyninst enable support for Dyninst instrumentation, default: enable if found by configure - Note: Requires Dyninst version 5.1 or higher! + Note: Requires Dyninst version 6.1 or higher! --enable-dyninst-attlib build shared library which attaches Dyninst to @@ -331,7 +332,7 @@ How to install and configure VampirTrace vtfilter are built for the back-end (host system). Some configure options which are of interest for cross compilation are shown below: - * Set CC, CXX, F77, and FC to the cross compilers installed on the front-end. + * Set CC, CXX, and FC to the cross compilers installed on the front-end. * Set CC_FOR_BUILD and CXX_FOR_BUILD to the native compilers of the front-end. diff --git a/ompi/contrib/vt/vt/Makefile.am b/ompi/contrib/vt/vt/Makefile.am index 99d875a071..c04a713547 100644 --- a/ompi/contrib/vt/vt/Makefile.am +++ b/ompi/contrib/vt/vt/Makefile.am @@ -7,10 +7,14 @@ SUBDIRS = \ vtlib \ tools \ include \ - doc \ - etc + doc + +vtdata_DATA = \ + $(top_builddir)/config.log + +vtdata_SCRIPTS = \ + $(top_builddir)/libtool -vtdata_SCRIPTS = $(top_builddir)/libtool vtdatadir = $(datadir) EXTRA_DIST = \ diff --git a/ompi/contrib/vt/vt/VERSION b/ompi/contrib/vt/vt/VERSION index 965b4fabca..229d965f15 100644 --- a/ompi/contrib/vt/vt/VERSION +++ b/ompi/contrib/vt/vt/VERSION @@ -1 +1 @@ -5.12.2openmpi +5.13openmpi diff --git a/ompi/contrib/vt/vt/acinclude.m4 b/ompi/contrib/vt/vt/acinclude.m4 index 027c0d54f8..55b5a0859e 100644 --- a/ompi/contrib/vt/vt/acinclude.m4 +++ b/ompi/contrib/vt/vt/acinclude.m4 @@ -14,10 +14,12 @@ m4_include(config/m4/acinclude.dl.m4) m4_include(config/m4/acinclude.dyninst.m4) m4_include(config/m4/acinclude.etimesync.m4) m4_include(config/m4/acinclude.getcpu.m4) +m4_include(config/m4/acinclude.iofsl.m4) m4_include(config/m4/acinclude.iowrap.m4) m4_include(config/m4/acinclude.java.m4) m4_include(config/m4/acinclude.jvmti.m4) m4_include(config/m4/acinclude.libcwrap.m4) +m4_include(config/m4/acinclude.liberty.m4) m4_include(config/m4/acinclude.libwrap.m4) m4_include(config/m4/acinclude.ltmpdir.m4) m4_include(config/m4/acinclude.math.m4) diff --git a/ompi/contrib/vt/vt/config/defaults/bgl b/ompi/contrib/vt/vt/config/defaults/bgl index 48211778fe..a0ff13895b 100644 --- a/ompi/contrib/vt/vt/config/defaults/bgl +++ b/ompi/contrib/vt/vt/config/defaults/bgl @@ -1,6 +1,5 @@ CC="blrts_xlc" CXX="blrts_xlC" -F77="blrts_xlf90" FC="blrts_xlf90" MPICC="mpixlc" MPICXX="mpixlcxx" diff --git a/ompi/contrib/vt/vt/config/defaults/bgp b/ompi/contrib/vt/vt/config/defaults/bgp index 19c9cd225e..f98fa10147 100644 --- a/ompi/contrib/vt/vt/config/defaults/bgp +++ b/ompi/contrib/vt/vt/config/defaults/bgp @@ -1,6 +1,5 @@ CC="bgxlc_r" CXX="bgxlC_r" -F77="bgxlf_r" FC="bgxlf95_r" MPICC="mpixlc_r" MPICXX="mpixlcxx_r" @@ -14,5 +13,5 @@ enable_shared="no" enable_cpuidtrace="no" with_cross_prefix="bg" with_mpibgp="yes" -with_cxxrtlib="-L/opt/ibmcmp/lib/bg/bglib -L/opt/ibmcmp/lib/bg/9.0/bglib -libmc++ -lstdc++" +with_cxxrtlib="-L/opt/ibmcmp/lib/bg/bglib -L/opt/ibmcmp/vacpp/bg/9.0/bglib -libmc++ -lstdc++" with_shlibc=/lib/libc.so.6 diff --git a/ompi/contrib/vt/vt/config/defaults/crayxe b/ompi/contrib/vt/vt/config/defaults/crayxe index d6c01632cd..dabfdc0bed 100644 --- a/ompi/contrib/vt/vt/config/defaults/crayxe +++ b/ompi/contrib/vt/vt/config/defaults/crayxe @@ -1,15 +1,12 @@ CC="cc" CXX="CC" -F77="ftn" FC="ftn" CFLAGS="-O3" CXXFLAGS="-O3" -FFLAGS="-O3" FCFLAGS="-O3" if test x"$XTPE_COMPILE_TARGET" != x; then CFLAGS="$CFLAGS -target=$XTPE_COMPILE_TARGET" CXXFLAGS="$CXXFLAGS -target=$XTPE_COMPILE_TARGET" - FFLAGS="$FFLAGS -target=$XTPE_COMPILE_TARGET" FCFLAGS="$FCFLAGS -target=$XTPE_COMPILE_TARGET" fi CC_FOR_BUILD="gcc" diff --git a/ompi/contrib/vt/vt/config/defaults/crayxt b/ompi/contrib/vt/vt/config/defaults/crayxt index f715021c20..74252c8233 100644 --- a/ompi/contrib/vt/vt/config/defaults/crayxt +++ b/ompi/contrib/vt/vt/config/defaults/crayxt @@ -1,15 +1,12 @@ CC="cc" CXX="CC" -F77="ftn" FC="ftn" CFLAGS="-O3" CXXFLAGS="-O3" -FFLAGS="-O3" FCFLAGS="-O3" if test x"$XTPE_COMPILE_TARGET" != x; then CFLAGS="$CFLAGS -target=$XTPE_COMPILE_TARGET" CXXFLAGS="$CXXFLAGS -target=$XTPE_COMPILE_TARGET" - FFLAGS="$FFLAGS -target=$XTPE_COMPILE_TARGET" FCFLAGS="$FCFLAGS -target=$XTPE_COMPILE_TARGET" fi enable_shared="no" diff --git a/ompi/contrib/vt/vt/config/defaults/ibm b/ompi/contrib/vt/vt/config/defaults/ibm index c8f906c9d4..c826b39505 100644 --- a/ompi/contrib/vt/vt/config/defaults/ibm +++ b/ompi/contrib/vt/vt/config/defaults/ibm @@ -1,11 +1,9 @@ CC="xlc_r" CXX="xlC_r" -F77="xlf_r" FC="xlf90_r" CFLAGS="-O2 -qsuppress=1500-030" CXXFLAGS="-O2 -qstaticinline -qrtti -qsuppress=1500-029:1500-030" -FFLAGS="-O2 -qsuppress=cmpmsg" -FCFLAGS="-O2" +FCFLAGS="-O2 -qsuppress=cmpmsg" OPENMP_CFLAGS="-qsmp=omp" PTHREAD_CFLAGS="-D_THREAD_SAFE" PTHREAD_LIBS="-lpthreads" diff --git a/ompi/contrib/vt/vt/config/defaults/ibm-64 b/ompi/contrib/vt/vt/config/defaults/ibm-64 index 5cc577dfd3..8918cb08fb 100644 --- a/ompi/contrib/vt/vt/config/defaults/ibm-64 +++ b/ompi/contrib/vt/vt/config/defaults/ibm-64 @@ -2,12 +2,10 @@ AR="ar -X64" NM="nm -B -X64" CC="xlc_r" CXX="xlC_r" -F77="xlf_r" FC="xlf90_r" CFLAGS="-q64 -O2 -qsuppress=1500-030" CXXFLAGS="-q64 -O2 -qstaticinline -qrtti -qsuppress=1500-029:1500-030:1501-201" -FFLAGS="-q64 -O2 -qsuppress=cmpmsg" -FCFLAGS="-q64 -O2" +FCFLAGS="-q64 -O2 -qsuppress=cmpmsg" OPENMP_CFLAGS="-qsmp=omp" PTHREAD_CFLAGS="-D_THREAD_SAFE" PTHREAD_LIBS="-lpthreads" diff --git a/ompi/contrib/vt/vt/config/defaults/necsx b/ompi/contrib/vt/vt/config/defaults/necsx index 3bbfc6c06e..cf285b7bc4 100644 --- a/ompi/contrib/vt/vt/config/defaults/necsx +++ b/ompi/contrib/vt/vt/config/defaults/necsx @@ -1,18 +1,16 @@ AR="sxar" CC="sxcc" CXX="sxc++" -F77="sxf90" FC="sxf90" CCAS="sxas" MPICC="sxmpicc" MPICXX="sxmpic++" -MPIF77="sxmpif90" +MPIFC="sxmpif90" CC_FOR_BUILD="cc" CXX_FOR_BUILD="c++" RANLIB="echo" CFLAGS="-Csopt" CXXFLAGS="-Csopt" -FFLAGS="-Csopt" FCFLAGS="-Csopt" CFLAGS_FOR_BUILD="-O2" CXXFLAGS_FOR_BUILD="-O2" diff --git a/ompi/contrib/vt/vt/config/defaults/sicortex b/ompi/contrib/vt/vt/config/defaults/sicortex index 0473432fce..586912968d 100644 --- a/ompi/contrib/vt/vt/config/defaults/sicortex +++ b/ompi/contrib/vt/vt/config/defaults/sicortex @@ -1,9 +1,8 @@ CC="scpathcc" CXX="scpathCC" -F77="scpathf95" FC="scpathf95" MPICC="scmpicc" -MPIF77="scmpif77" +MPIFC="scmpif77" CC_FOR_BUILD="gcc" CXX_FOR_BUILD="g++" OPENMP_CFLAGS="-mp" diff --git a/ompi/contrib/vt/vt/config/defaults/sicortex-32 b/ompi/contrib/vt/vt/config/defaults/sicortex-32 index c28fa59908..18975e02c9 100644 --- a/ompi/contrib/vt/vt/config/defaults/sicortex-32 +++ b/ompi/contrib/vt/vt/config/defaults/sicortex-32 @@ -1,12 +1,10 @@ CC="scpathcc32" CXX="scpathCC32" -F77="scpathf9532" FC="scpathf9532" MPICC="scmpicc32" -MPIF77="scmpif7732" +MPIFC="scmpif7732" CFLAGS="-mabi=n32" CXXFLAGS="-mabi=n32" -FFLAGS="-mabi=n32" FCFLAGS="-mabi=n32" CC_FOR_BUILD="gcc" CXX_FOR_BUILD="g++" diff --git a/ompi/contrib/vt/vt/config/defaults/sun b/ompi/contrib/vt/vt/config/defaults/sun index 170f9913bc..ccb7dd90f2 100644 --- a/ompi/contrib/vt/vt/config/defaults/sun +++ b/ompi/contrib/vt/vt/config/defaults/sun @@ -1,10 +1,8 @@ CC="cc" CXX="CC" -F77="f77" FC="f95" CFLAGS="-xO3" CXXFLAGS="-xO3" -FFLAGS="-xO3" FCFLAGS="-xO3" OPENMP_CFLAGS="-xopenmp -xO3 -D_REENTRANT" PTHREAD_CFLAGS="-D_REENTRANT" diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.compinst.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.compinst.m4 index c1af4219e9..db2195ba1d 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.compinst.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.compinst.m4 @@ -8,49 +8,45 @@ AC_DEFUN([ACVT_COMPINST], compinst_type= compinst_cflags= compinst_cxxflags= - compinst_fflags= compinst_fcflags= compinst_gnu_cflags="-g -finstrument-functions" compinst_gnu_cxxflags="$compinst_gnu_cflags" - compinst_gnu_fflags="$compinst_gnu_cflags" compinst_gnu_fcflags="$compinst_gnu_cflags" compinst_pgi_cflags="-Mprof=func" compinst_pgi_cxxflags="$compinst_pgi_cflags" - compinst_pgi_fflags="$compinst_pgi_cflags" compinst_pgi_fcflags="$compinst_pgi_cflags" compinst_pgi9_cflags="-Minstrument=functions" compinst_pgi9_cxxflags="$compinst_pgi9_cflags" - compinst_pgi9_fflags="$compinst_pgi9_cflags" compinst_pgi9_fcflags="$compinst_pgi9_cflags" + compinst_craycce_cflags="-hfunc_trace" + compinst_craycce_cxxflags="$compinst_craycce_cflags" + compinst_craycce_fcflags="$compinst_craycce_cflags" + compinst_sun_cflags="" compinst_sun_cxxflags="" - compinst_sun_fflags="" compinst_sun_fcflags="-O -Qoption f90comp -phat" compinst_xl_cflags="-qdebug=function_trace" compinst_xl_cxxflags="$compinst_xl_cflags" - compinst_xl_fflags="$compinst_xl_cflags" compinst_xl_fcflags="$compinst_xl_cflags" compinst_necsx_cflags="-ftrace" compinst_necsx_cxxflags="$compinst_necsx_cflags" - compinst_necsx_fflags="$compinst_necsx_cflags" compinst_necsx_fcflags="$compinst_necsx_cflags" compinst_openuh_cflags="-fb_create inst -fb_type=1 -fb_phase=0 -epilog -OPT:instr_proc" compinst_openuh_cxxflags="$compinst_openuh_cflags" - compinst_openuh_fflags="$compinst_openuh_cflags" compinst_openuh_fcflags="$compinst_openuh_cflags" AC_REQUIRE([ACVT_PLATFORM]) AC_ARG_ENABLE(compinst, AC_HELP_STRING([--enable-compinst=TYPE], - [enable support for compiler instrumentation (gnu,intel,pathscale,pgi,pgi9,sun,xl,necsx,open64,openuh), default: automatically by configure]), + [enable support for compiler instrumentation (gnu,intel,pathscale,pgi,pgi9,craycce,xl,necsx,open64,openuh), default: automatically by configure]), [AS_IF([test x"$enableval" = "xno"], [check_compinst="no"], [enable_compinst="$enableval"])]) AS_IF([test x"$check_compinst" = "xyes"], @@ -74,6 +70,9 @@ AC_DEFUN([ACVT_COMPINST], pgi9) compinst_type="pgi9" ;; + craycce) + compinst_type="craycce" + ;; sun) compinst_type="sun" ;; @@ -104,26 +103,17 @@ AC_DEFUN([ACVT_COMPINST], [ compinst_type="gnu" AC_MSG_RESULT([gnu (intel)]) - ], - [ - AC_MSG_RESULT([unknown]) - AC_MSG_NOTICE([error: the version of the Intel compiler ($compver) doesn't support instrumentation]) - compinst_error="yes" ]) ;; pathcc*) compver=`$CC -dumpversion` compver_major=`echo $compver | cut -d '.' -f 1` compver_minor=`echo $compver | cut -d '.' -f 2` - AS_IF([test $compver_major -ge 3 -a $compver_minor -ge 1], + AS_IF([test $compver_major -gt 3], [compinst_type="gnu"]) + AS_IF([test x"$compinst_type" = x -a $compver_major -eq 3 -a $compver_minor -ge 1], [compinst_type="gnu"]) + AS_IF([test x"$compinst_type" != x], [ - compinst_type="gnu" AC_MSG_RESULT([gnu (pathscale)]) - ], - [ - AC_MSG_RESULT([unknown]) - AC_MSG_NOTICE([error: the version of the PathScale compiler ($compver) doesn't support instrumentation]) - compinst_error="yes" ]) ;; scpathcc*) @@ -144,6 +134,10 @@ AC_DEFUN([ACVT_COMPINST], ]) CFLAGS=$sav_CFLAGS ;; + craycc*) + compinst_type="craycce" + AC_MSG_RESULT([craycce]) + ;; xlc* | blrts_xlc* | bgxlc*) compinst_type="xl" AC_MSG_RESULT([xl]) @@ -165,6 +159,10 @@ AC_DEFUN([ACVT_COMPINST], compinst_type="pgi9" AC_MSG_RESULT([pgi9]) ;; + *Cray*) + compinst_type="craycce" + AC_MSG_RESULT([craycce]) + ;; *PathScale*) compinst_type="gnu" AC_MSG_RESULT([gnu (pathscale)]) @@ -190,26 +188,25 @@ AC_DEFUN([ACVT_COMPINST], ]) ]) ;; - opencc* | uhcc*) - case `$CC --version 2>&1` in - OpenUH*) - compver=`$CC -dumpversion 2>&1` - compver_major=`echo $compver | cut -d '.' -f 1` - AS_IF([test $compver_major -ge 4], - [ - compinst_type="openuh" - AC_MSG_RESULT([openuh]) - ], - [ - compinst_type="gnu" - AC_MSG_RESULT([gnu (open64)]) - ]) - ;; - *) - compinst_type="gnu" - AC_MSG_RESULT([gnu (open64)]) - ;; - esac + opencc*) + compver=`$CC -dumpversion | head -n1 2>&1` + compver_major=`echo $compver | cut -d '.' -f 1` + compver_minor=`echo $compver | cut -d '.' -f 2` + AS_IF([test $compver_major -gt 4], [compinst_type="gnu"]) + AS_IF([test x"$compinst_type" = x -a $compver_major -eq 4 -a $compver_minor -ge 2], [compinst_type="gnu"]) + AS_IF([test x"$compinst_type" != x], + [ + AC_MSG_RESULT([gnu (open64)]) + ]) + ;; + uhcc*) + compver=`$CC -dumpversion | head -n1 2>&1` + compver_major=`echo $compver | cut -d '.' -f 1` + AS_IF([test $compver_major -ge 4], + [ + compinst_type="openuh" + AC_MSG_RESULT([openuh]) + ]) ;; sxcc*) compinst_type="necsx" @@ -219,7 +216,7 @@ AC_DEFUN([ACVT_COMPINST], ;; esac - AS_IF([test x"$compinst_error" = "xno" -a x"$compinst_type" = x], + AS_IF([test x"$compinst_type" = x], [ AC_MSG_RESULT([unknown]) AC_MSG_NOTICE([error: the compiler '$base_CC' doesn't support instrumentation]) @@ -229,7 +226,7 @@ AC_DEFUN([ACVT_COMPINST], AS_IF([test x"$compinst_error" = "xno"], [ - AS_IF([test x"$compinst_type" = "xgnu" -o x"$compinst_type" = "xpgi9"], + AS_IF([test x"$compinst_type" = "xgnu" -o x"$compinst_type" = "xpgi9" -o x"$compinst_type" = "xcraycce"], [ ACVT_DL ]) @@ -243,43 +240,41 @@ AC_DEFUN([ACVT_COMPINST], gnu) compinst_cflags=$compinst_gnu_cflags compinst_cxxflags=$compinst_gnu_cxxflags - compinst_fflags=$compinst_gnu_fflags compinst_fcflags=$compinst_gnu_fcflags ;; pgi) compinst_cflags=$compinst_pgi_cflags compinst_cxxflags=$compinst_pgi_cxxflags - compinst_fflags=$compinst_pgi_fflags compinst_fcflags=$compinst_pgi_fcflags ;; pgi9) compinst_cflags=$compinst_pgi9_cflags compinst_cxxflags=$compinst_pgi9_cxxflags - compinst_fflags=$compinst_pgi9_fflags compinst_fcflags=$compinst_pgi9_fcflags ;; + craycce) + compinst_cflags=$compinst_craycce_cflags + compinst_cxxflags=$compinst_craycce_cxxflags + compinst_fcflags=$compinst_craycce_fcflags + ;; sun) compinst_cflags=$compinst_sun_cflags compinst_cxxflags=$compinst_sun_cxxflags - compinst_fflags=$compinst_sun_fflags compinst_fcflags=$compinst_sun_fcflags ;; xl) compinst_cflags=$compinst_xl_cflags compinst_cxxflags=$compinst_xl_cxxflags - compinst_fflags=$compinst_xl_fflags compinst_fcflags=$compinst_xl_fcflags ;; necsx) compinst_cflags=$compinst_necsx_cflags compinst_cxxflags=$compinst_necsx_cxxflags - compinst_fflags=$compinst_necsx_fflags compinst_fcflags=$compinst_necsx_fcflags ;; openuh) compinst_cflags=$compinst_openuh_cflags compinst_cxxflags=$compinst_openuh_cxxflags - compinst_fflags=$compinst_openuh_fflags compinst_fcflags=$compinst_openuh_fcflags ;; esac diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.compwrap.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.compwrap.m4 index 3d469bc7ac..21e0d44675 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.compwrap.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.compwrap.m4 @@ -26,19 +26,6 @@ AC_DEFUN([ACVT_COMPWRAP], VT_WRAPPER_CXX_COMPINST_COMPILER_FLAGS= VT_WRAPPER_CXX_DEFAULT_PARTYPE="seq" - VT_WRAPPER_F77_COMPILER=$F77 - VT_WRAPPER_F77_EXTRA_COMPILER_FLAGS= - VT_WRAPPER_F77_EXTRA_LINKER_FLAGS= - VT_WRAPPER_F77_EXTRA_LIBS= - VT_WRAPPER_F77_CPP=$CPP - VT_WRAPPER_F77_EXTRA_CPPFLAGS= - VT_WRAPPER_F77_DYNINST_COMPILER_FLAGS= - VT_WRAPPER_F77_TAUINST_OPTS= - VT_WRAPPER_F77_TAUINST_PARSE_BIN= - VT_WRAPPER_F77_TAUINST_PARSE_OPTS= - VT_WRAPPER_F77_COMPINST_COMPILER_FLAGS= - VT_WRAPPER_F77_DEFAULT_PARTYPE="seq" - VT_WRAPPER_FC_COMPILER=$FC VT_WRAPPER_FC_EXTRA_COMPILER_FLAGS= VT_WRAPPER_FC_EXTRA_LINKER_FLAGS= @@ -172,83 +159,39 @@ AC_DEFUN([ACVT_COMPWRAP], esac ]) - AC_ARG_WITH(wrapper-f77-compiler, - AC_HELP_STRING([--with-wrapper-f77-compiler=WRAPPERF77], - [underlying Fortran 77 compiler command for vtf77, default: F77]), - [VT_WRAPPER_F77_COMPILER=$withval]) - - AC_ARG_WITH(wrapper-f77-compiler-flags, - AC_HELP_STRING([--with-wrapper-f77-compiler-flags=WRAPPERF77CFLAGS], - [extra compiler flags to add when using vtf77]), - [VT_WRAPPER_F77_EXTRA_COMPILER_FLAGS=$withval]) - - AC_ARG_WITH(wrapper-f77-linker-flags, - AC_HELP_STRING([--with-wrapper-f77-linker-flags=WRAPPERF77LDFLAGS], - [extra linker flags to add when using vtf77]), - [VT_WRAPPER_F77_EXTRA_LINKER_FLAGS=$withval]) - - AC_ARG_WITH(wrapper-f77-libs, - AC_HELP_STRING([--with-wrapper-f77-libs=WRAPPERF77LIBS], - [extra libraries to link when using vtf77]), - [VT_WRAPPER_F77_EXTRA_LIBS=$withval]) - - AC_ARG_WITH(wrapper-f77-cpp, - AC_HELP_STRING([--with-wrapper-f77-cpp=WRAPPERF77CPP], - [C preprocessor command for vtf77, default: CPP]), - [VT_WRAPPER_F77_CPP=$withval]) - - AC_ARG_WITH(wrapper-f77-cppflags, - AC_HELP_STRING([--with-wrapper-f77-cppflags=WRAPPERF77CPPFLAGS], - [extra preprocessor flags to add when using vtf77 -vt:preprocess]), - [VT_WRAPPER_F77_EXTRA_CPPFLAGS=$withval]) - - AC_ARG_WITH(wrapper-f77-default-partype, - AC_HELP_STRING([--with-wrapper-f77-default-partype=TYPE], - [default parallelization type for vtf77 (seq,mt,mpi,hyb), default: $VT_WRAPPER_F77_DEFAULT_PARTYPE]), - [ - case $withval in - seq | mt | mpi | hyb) - VT_WRAPPER_F77_DEFAULT_PARTYPE=$withval - ;; - *) - AC_MSG_ERROR([value of '--with-wrapper-f77-default-partype' not properly set]) - ;; - esac - ]) - AC_ARG_WITH(wrapper-fc-compiler, AC_HELP_STRING([--with-wrapper-fc-compiler=WRAPPERFC], - [underlying Fortran compiler command for vtf90, default: FC]), + [underlying Fortran compiler command for vtfort, default: FC]), [VT_WRAPPER_FC_COMPILER=$withval]) AC_ARG_WITH(wrapper-fc-compiler-flags, AC_HELP_STRING([--with-wrapper-fc-compiler-flags=WRAPPERFCCFLAGS], - [extra compiler flags to add when using vtf90]), + [extra compiler flags to add when using vtfort]), [VT_WRAPPER_FC_EXTRA_COMPILER_FLAGS=$withval]) AC_ARG_WITH(wrapper-fc-linker-flags, AC_HELP_STRING([--with-wrapper-fc-linker-flags=WRAPPERFCLDFLAGS], - [extra linker flags to add when using vtf90]), + [extra linker flags to add when using vtfort]), [VT_WRAPPER_FC_EXTRA_LINKER_FLAGS=$withval]) AC_ARG_WITH(wrapper-fc-libs, AC_HELP_STRING([--with-wrapper-fc-libs=WRAPPERFCLIBS], - [extra libraries to link when using vtf90]), + [extra libraries to link when using vtfort]), [VT_WRAPPER_FC_EXTRA_LIBS=$withval]) AC_ARG_WITH(wrapper-fc-cpp, AC_HELP_STRING([--with-wrapper-fc-cpp=WRAPPERFCCPP], - [C preprocessor command for vtf90, default: CPP]), + [C preprocessor command for vtfort, default: CPP]), [VT_WRAPPER_FC_CPP=$withval]) AC_ARG_WITH(wrapper-fc-cppflags, AC_HELP_STRING([--with-wrapper-fc-cppflags=WRAPPERFCCPPFLAGS], - [extra preprocessor flags to add when using vtf90 -vt:preprocess]), + [extra preprocessor flags to add when using vtfort -vt:preprocess]), [VT_WRAPPER_fC_EXTRA_CPPFLAGS=$withval]) AC_ARG_WITH(wrapper-fc-default-partype, AC_HELP_STRING([--with-wrapper-fc-default-partype=TYPE], - [default parallelization type for vtf90 (seq,mt,mpi,hyb), default: $VT_WRAPPER_FC_DEFAULT_PARTYPE]), + [default parallelization type for vtfort (seq,mt,mpi,hyb), default: $VT_WRAPPER_FC_DEFAULT_PARTYPE]), [ case $withval in seq | mt | mpi | hyb) @@ -308,7 +251,6 @@ AC_DEFUN([ACVT_COMPWRAP], [ VT_WRAPPER_CC_EXTRA_LINKER_FLAGS="$VT_WRAPPER_CC_EXTRA_LINKER_FLAGS -Wl,-force_flat_namespace" VT_WRAPPER_CXX_EXTRA_LINKER_FLAGS="$VT_WRAPPER_CXX_EXTRA_LINKER_FLAGS -Wl,-force_flat_namespace" - VT_WRAPPER_F77_EXTRA_LINKER_FLAGS="$VT_WRAPPER_F77_EXTRA_LINKER_FLAGS -Wl,-force_flat_namespace" VT_WRAPPER_FC_EXTRA_LINKER_FLAGS="$VT_WRAPPER_FC_EXTRA_LINKER_FLAGS -Wl,-force_flat_namespace" VT_WRAPPER_NVCC_EXTRA_LINKER_FLAGS="$VT_WRAPPER_NVCC_EXTRA_LINKER_FLAGS -Wl,-force_flat_namespace" ]) @@ -317,12 +259,11 @@ AC_DEFUN([ACVT_COMPWRAP], [ VT_WRAPPER_CC_EXTRA_LINKER_FLAGS="$VT_WRAPPER_CC_EXTRA_LINKER_FLAGS -Wl,-dy" VT_WRAPPER_CXX_EXTRA_LINKER_FLAGS="$VT_WRAPPER_CXX_EXTRA_LINKER_FLAGS -Wl,-dy" - VT_WRAPPER_F77_EXTRA_LINKER_FLAGS="$VT_WRAPPER_F77_EXTRA_LINKER_FLAGS -Wl,-dy" VT_WRAPPER_FC_EXTRA_LINKER_FLAGS="$VT_WRAPPER_FC_EXTRA_LINKER_FLAGS -Wl,-dy" VT_WRAPPER_NVCC_EXTRA_LINKER_FLAGS="$VT_WRAPPER_NVCC_EXTRA_LINKER_FLAGS -Wl,-dy" ]) - AS_IF([test x"$compinst_type" = "xpgi9"], + AS_IF([test x"$compinst_type" = "xpgi9" -o x"$compinst_type" = "xcraycce"], [ VT_WRAPPER_VTLIB="-Wl,--whole-archive $VT_WRAPPER_VTLIB -Wl,--no-whole-archive" VT_WRAPPER_VTMPILIB="-Wl,--whole-archive $VT_WRAPPER_VTMPILIB -Wl,--no-whole-archive" @@ -351,7 +292,6 @@ AC_DEFUN([ACVT_COMPWRAP], [ VT_WRAPPER_CC_COMPINST_COMPILER_FLAGS="$compinst_cflags" VT_WRAPPER_CXX_COMPINST_COMPILER_FLAGS="$compinst_cxxflags" - VT_WRAPPER_F77_COMPINST_COMPILER_FLAGS="$compinst_fflags" VT_WRAPPER_FC_COMPINST_COMPILER_FLAGS="$compinst_fcflags" VT_WRAPPER_NVCC_COMPINST_COMPILER_FLAGS="$compinst_cflags" VT_WRAPPER_AVAIL_INST="$VT_WRAPPER_AVAIL_INST compinst" @@ -362,7 +302,6 @@ AC_DEFUN([ACVT_COMPWRAP], [ VT_WRAPPER_CC_DYNINST_COMPILER_FLAGS="-g" VT_WRAPPER_CXX_DYNINST_COMPILER_FLAGS="-g" - VT_WRAPPER_F77_DYNINST_COMPILER_FLAGS="-g" VT_WRAPPER_FC_DYNINST_COMPILER_FLAGS="-g" VT_WRAPPER_NVCC_DYNINST_COMPILER_FLAGS="-g" VT_WRAPPER_AVAIL_INST="$VT_WRAPPER_AVAIL_INST dyninst" @@ -373,12 +312,12 @@ AC_DEFUN([ACVT_COMPWRAP], AS_IF([test x"$have_mpi" = "xyes"], [ - AS_IF([test x"$inside_openmpi" = "xyes"], + AS_IF([test x"$inside_openmpi" != "xno"], [mpiincdir="-I\${includedir}/.."], [mpiincdir="$MPIINCDIR"]) AS_IF([test x"$have_fmpi" = "xyes"], [ - AS_IF([test x"$inside_openmpi" = "xyes"], + AS_IF([test x"$inside_openmpi" != "xno"], [fmpiincdir="$mpiincdir"], [fmpiincdir="$FMPIINCDIR"]) ]) @@ -386,7 +325,6 @@ AC_DEFUN([ACVT_COMPWRAP], VT_WRAPPER_CC_EXTRA_CPPFLAGS="$VT_WRAPPER_EXTRA_CPPFLAGS $mpiincdir" VT_WRAPPER_CXX_EXTRA_CPPFLAGS="$VT_WRAPPER_EXTRA_CPPFLAGS $mpiincdir" - VT_WRAPPER_F77_EXTRA_CPPFLAGS="$VT_WRAPPER_EXTRA_CPPFLAGS $fmpiincdir" VT_WRAPPER_FC_EXTRA_CPPFLAGS="$VT_WRAPPER_EXTRA_CPPFLAGS $fmpiincdir" VT_WRAPPER_NVCC_EXTRA_CPPFLAGS="$VT_WRAPPER_EXTRA_CPPFLAGS $mpiincdir" @@ -399,12 +337,9 @@ AC_DEFUN([ACVT_COMPWRAP], VT_WRAPPER_CXX_TAUINST_OPTS="-c++ -spec \${datadir}/TAUINST.SPEC" VT_WRAPPER_CXX_TAUINST_PARSE_BIN="$tauinst_cxxparse_cmd" VT_WRAPPER_CXX_TAUINST_PARSE_OPTS="$VT_WRAPPER_CC_TAUINST_PARSE_OPTS" - VT_WRAPPER_F77_TAUINST_OPTS="-fortran -spec \${datadir}/TAUINST.SPEC" - VT_WRAPPER_F77_TAUINST_PARSE_BIN="$tauinst_fparse_cmd" - VT_WRAPPER_F77_TAUINST_PARSE_OPTS="$fmpiincdir" - VT_WRAPPER_FC_TAUINST_OPTS="$VT_WRAPPER_F77_TAUINST_OPTS" - VT_WRAPPER_FC_TAUINST_PARSE_BIN="$VT_WRAPPER_F77_TAUINST_PARSE_BIN" - VT_WRAPPER_FC_TAUINST_PARSE_OPTS="$VT_WRAPPER_F77_TAUINST_PARSE_OPTS" + VT_WRAPPER_FC_TAUINST_OPTS="-fortran -spec \${datadir}/TAUINST.SPEC" + VT_WRAPPER_FC_TAUINST_PARSE_BIN="$tauinst_fparse_cmd" + VT_WRAPPER_FC_TAUINST_PARSE_OPTS="$fmpiincdir" VT_WRAPPER_NVCC_TAUINST_OPTS="$VT_WRAPPER_CC_TAUINST_OPTS" VT_WRAPPER_NVCC_TAUINST_PARSE_BIN="$VT_WRAPPER_CC_TAUINST_PARSE_BIN" VT_WRAPPER_NVCC_TAUINST_PARSE_OPTS="$VT_WRAPPER_CC_TAUINST_PARSE_OPTS" @@ -437,19 +372,6 @@ AC_DEFUN([ACVT_COMPWRAP], AC_SUBST(VT_WRAPPER_CXX_COMPINST_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_CXX_DEFAULT_PARTYPE) - AC_SUBST(VT_WRAPPER_F77_COMPILER) - AC_SUBST(VT_WRAPPER_F77_EXTRA_COMPILER_FLAGS) - AC_SUBST(VT_WRAPPER_F77_EXTRA_LINKER_FLAGS) - AC_SUBST(VT_WRAPPER_F77_EXTRA_LIBS) - AC_SUBST(VT_WRAPPER_F77_CPP) - AC_SUBST(VT_WRAPPER_F77_EXTRA_CPPFLAGS) - AC_SUBST(VT_WRAPPER_F77_DYNINST_COMPILER_FLAGS) - AC_SUBST(VT_WRAPPER_F77_TAUINST_OPTS) - AC_SUBST(VT_WRAPPER_F77_TAUINST_PARSE_BIN) - AC_SUBST(VT_WRAPPER_F77_TAUINST_PARSE_OPTS) - AC_SUBST(VT_WRAPPER_F77_COMPINST_COMPILER_FLAGS) - AC_SUBST(VT_WRAPPER_F77_DEFAULT_PARTYPE) - AC_SUBST(VT_WRAPPER_FC_COMPILER) AC_SUBST(VT_WRAPPER_FC_EXTRA_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_FC_EXTRA_LINKER_FLAGS) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.conf.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.conf.m4 index 53e7d1b3af..52a387e192 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.conf.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.conf.m4 @@ -4,7 +4,7 @@ AC_DEFUN([ACVT_CONF_INIT], AC_HELP_STRING([--enable-config-summary], [show summary of configuration, default: enabled]), [], [ - AS_IF([test x"$inside_openmpi" = "xyes"], + AS_IF([test x"$inside_openmpi" != "xno"], [enable_config_summary="no"], [enable_config_summary="yes"]) ]) @@ -12,7 +12,7 @@ AC_DEFUN([ACVT_CONF_INIT], AC_HELP_STRING([--enable-config-titles], [show titles for each configure section, default: enabled]), [], [ - AS_IF([test x"$inside_openmpi" = "xyes"], + AS_IF([test x"$inside_openmpi" != "xno"], [enable_config_titles="no"], [enable_config_titles="yes"]) ]) ]) @@ -150,8 +150,7 @@ AC_DEFUN([ACVT_CONF_SUMMARY], AS_IF([test x"$cross_compiling" = "xyes"], [echo " C++ Compiler (H|B): $CXX | $CXX_FOR_BUILD"], [echo " C++ compiler: $CXX"]) - echo " Fortran 77 compiler: $F77" - echo " Fortran 90 compiler: $FC" + echo " Fortran compiler: $FC" AS_IF([test x"$cross_compiling" = "xyes"], [echo " C preprocessor (H|B): $CPP | $CPP_FOR_BUILD"], [echo " C preprocessor: $CPP"]) @@ -165,7 +164,6 @@ AC_DEFUN([ACVT_CONF_SUMMARY], AS_IF([test x"$cross_compiling" = "xyes"], [echo " CXXFLAGS (H|B): $CXXFLAGS | $CXXFLAGS_FOR_BUILD"], [echo " CXXFLAGS: $CXXFLAGS"]) - echo " FFLAGS: $FFLAGS" echo " FCFLAGS: $FCFLAGS" AS_IF([test x"$cross_compiling" = "xyes"], [echo " LDFLAGS (H|B): $LDFLAGS | $LDFLAGS_FOR_BUILD"], @@ -179,11 +177,11 @@ AC_DEFUN([ACVT_CONF_SUMMARY], [ echo " MPI C compiler: $MPICC" echo " MPI C++ compiler: $MPICXX" - echo " MPI Fortran 77 compiler: $MPIF77" + echo " MPI Fortran compiler: $MPIFC" echo "" echo " MPICFLAGS (append to CFLAGS): $MPICFLAGS" echo " MPICXXFLAGS (append to CXXFLAGS): $MPICXXFLAGS" - echo " MPIFFLAGS (append to FFLAGS): $MPIFFLAGS" + echo " MPIFCFLAGS (append to FCFLAGS): $MPIFCFLAGS" echo "" ]) @@ -197,7 +195,18 @@ AC_DEFUN([ACVT_CONF_SUMMARY], AS_IF([test x"$have_zlib" = "xyes"], [answer="yes"], [answer="no"]) - echo " ZLIB trace compression support: $answer" + echo " Build ZLIB trace compression support: $answer" + + AS_IF([test x"$have_iofsl" = "xyes"], + [answer="yes"], [answer="no"]) + echo " Build IOFSL I/O forwarding support: $answer" + + AS_IF([test x"$have_iofsl" = "xyes"], + [ + AS_IF([test x"$IOFSLSCRIPTS" != x], + [answer="yes ($IOFSLSCRIPTS)"], [answer="no"]) + echo " Build IOFSL scripts: $answer" + ]) AS_IF([test x"$have_mpi" = "xyes"], [answer="yes"], [answer="no"]) @@ -306,6 +315,13 @@ AC_DEFUN([ACVT_CONF_SUMMARY], ], [answer="no"]) echo " Build Library trace support: $answer" + AS_IF([test x"$have_libwrap" = "xyes"], + [ + AS_IF([test x"$build_libwrapgen" = "xyes"], + [answer="yes"], [answer="no"]) + echo " Build Library wrapper generator: $answer" + ]) + AS_IF([test x"$have_cupti" = "xyes"], [ answer= @@ -322,15 +338,8 @@ AC_DEFUN([ACVT_CONF_SUMMARY], [answer="$answer, Events"], [answer="Events"])]) answer="yes ($answer)" - echo " Build CUPTI support: $answer" - ]) - - AS_IF([test x"$have_libwrap" = "xyes"], - [ - AS_IF([test x"$build_libwrapgen" = "xyes"], - [answer="yes"], [answer="no"]) - echo " Build Library wrapper generator: $answer" - ]) + ], [answer=no]) + echo " Build CUPTI support: $answer" AS_IF([test x"$have_compinst" != x], [answer=`echo $compinst_type | sed s/gnu/gnu*/g`], diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.cross.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.cross.m4 index 4718c3fbde..28c0c5e70d 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.cross.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.cross.m4 @@ -106,7 +106,7 @@ See \`config.log' for more details.])]) cross_prefix="cross-" AC_ARG_WITH(cross-prefix, AC_HELP_STRING([--with-cross-prefix=PREFIX], - [prefix for cross-tool's executables (e.g. PREFIXvtcc, PREFIXvtf77), default: cross-]), + [prefix for cross-tool's executables (e.g. PREFIXvtcc, PREFIXvtfort), default: cross-]), [ AS_IF([test x"$withval" = "xno"], [cross_prefix=], [AS_IF([test x"$withval" != "xyes"], [cross_prefix=$withval])]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.cuda.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.cuda.m4 index 6abf29412f..2372ce6faa 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.cuda.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.cuda.m4 @@ -129,6 +129,7 @@ See \`config.log' for more details.]) have_cuda="yes" ]) + AC_SUBST(CUDATKDIR) AC_SUBST(CUDATKINCDIR) AC_SUBST(CUDATKLIBDIR) ]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.cupti.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.cupti.m4 index 01f4698731..71cc6f77ae 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.cupti.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.cupti.m4 @@ -23,7 +23,8 @@ AC_DEFUN([ACVT_CUPTI], AC_ARG_WITH(cupti-dir, AC_HELP_STRING([--with-cupti-dir=CUPTIDIR], [give the path for CUPTI, default: /usr]), - [CUPTIDIR="$withval/"]) + [CUPTIDIR="$withval/"], + [AS_IF([test x"$CUDATKDIR" != x], [CUPTIDIR="$CUDATKDIR/extras/CUPTI/"])]) AC_ARG_WITH(cupti-inc-dir, AC_HELP_STRING([--with-cupti-inc-dir=CUPTIINCDIR], @@ -107,6 +108,11 @@ AC_DEFUN([ACVT_CUPTI], ]) ]) +dnl if no CUPTI found, remove content of CUPTILIBDIR to prevent adding the +dnl '-LCUPTILIBDIR' linker flag by the VT compiler wrappers + AS_IF([test x"$have_cupti" = "xno"], + [CUPTILIBDIR=]) + AC_SUBST(CUPTIINCDIR) AC_SUBST(CUPTILIBDIR) AC_SUBST(CUPTILIB) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.iofsl.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.iofsl.m4 new file mode 100644 index 0000000000..9c5a8a9c78 --- /dev/null +++ b/ompi/contrib/vt/vt/config/m4/acinclude.iofsl.m4 @@ -0,0 +1,155 @@ +AC_DEFUN([ACVT_IOFSL], +[ + iofsl_error="no" + check_iofsl="yes" + force_iofsl="no" + have_iofsl="no" + + zoidfs_lib_default="-lzoidfsclient -lzoidfs-util -lzoidfshints -liofsl-c-util" + bmi_lib_default="-lbmi -lpthread" + + ZOIDFSDIR= + ZOIDFSINCDIR= + ZOIDFSLIBDIR= + ZOIDFSLIB= + + BMIDIR= + BMIINCDIR= + BMILIBDIR= + BMILIB= + + IOFSLSCRIPTS= + + AC_ARG_ENABLE(iofsl, + AC_HELP_STRING([--enable-iofsl], + [enable IOFSL support, default: enable if found by configure]), + [AS_IF([test x"$enableval" = "xyes"], [force_iofsl="yes"], [check_iofsl="no"])]) + + AC_ARG_WITH(zoidfs-dir, + AC_HELP_STRING([--with-zoidfs-dir=ZOIDFSDIR], [give the path for ZOIDFS, default: /usr]), + [ZOIDFSDIR="$withval/"]) + + AC_ARG_WITH(zoidfs-inc-dir, + AC_HELP_STRING([--with-zoidfs-inc-dir=ZOIDFSINCDIR], + [give the path for ZOIDFS-include files, default: ZOIDFSDIR/include]), + [ZOIDFSINCDIR="-I$withval/"], + [AS_IF([test x"$ZOIDFSDIR" != x], [ZOIDFSINCDIR="-I$ZOIDFSDIR"include/])]) + + AC_ARG_WITH(zoidfs-lib-dir, + AC_HELP_STRING([--with-zoidfs-lib-dir=ZOIDFSLIBDIR], + [give the path for ZOIDFS-libraries, default: ZOIDFSDIR/lib]), + [ZOIDFSLIBDIR="-L$withval/"], + [AS_IF([test x"$ZOIDFSDIR" != x], [ZOIDFSLIBDIR="-L$ZOIDFSDIR"lib/])]) + + AC_ARG_WITH(zoidfs-lib, + AC_HELP_STRING([--with-zoidfs-lib=ZOIDFSLIB], [use given zoidfs lib, default: $zoidfs_lib_default BMILIBDIR BMILIB]), + [ZOIDFSLIB="$withval"]) + + AC_ARG_WITH(bmi-dir, + AC_HELP_STRING([--with-bmi-dir=BMIDIR], [give the path for BMI, default: ZOIDFSDIR]), + [BMIDIR="$withval/"]) + + AC_ARG_WITH(bmi-inc-dir, + AC_HELP_STRING([--with-bmi-inc-dir=BMIINCDIR], + [give the path for BMI-include files, default: BMIDIR/include]), + [BMIINCDIR="-I$withval/"], + [AS_IF([test x"$BMIDIR" != x], [BMIINCDIR="-I$BMIDIR"include/])]) + + AC_ARG_WITH(bmi-lib-dir, + AC_HELP_STRING([--with-bmi-lib-dir=BMILIBDIR], + [give the path for BMI-libraries, default: BMIDIR/lib]), + [BMILIBDIR="-L$withval/"], + [AS_IF([test x"$BMIDIR" != x], [BMILIBDIR="-L$BMIDIR"lib/])]) + + AC_ARG_WITH(bmi-lib, + AC_HELP_STRING([--with-bmi-lib=BMILIB], [use given bmi lib, default: $bmi_lib_default]), + [BMILIB="$withval"]) + + AC_ARG_ENABLE(iofsl-scripts, + AC_HELP_STRING([--enable-iofsl-scripts=PLATFORM], + [build IOFSL scripts for given platform, possible values: crayxk6, default: disabled]), + [ + AS_IF([test x"$enableval" != "xno"], + [ + AS_IF([test x"$enableval" != "xcrayxk6"], + [AC_MSG_ERROR([value of '--enable-iofsl-scripts' not properly set])], + [IOFSLSCRIPTS=$enableval]) + ]) + ]) + + AS_IF([test x"$check_iofsl" = "xyes"], + [ + sav_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $ZOIDFSINCDIR $BMIINCDIR" + AC_CHECK_HEADER([bmi.h], [], + [ + AC_MSG_NOTICE([error: no bmi.h found; check path for BMI package first...]) + iofsl_error="yes" + ]) + CPPFLAGS=$sav_CPPFLAGS + + AS_IF([test x"$BMILIB" = x -a x"$iofsl_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $ZOIDFSLIBDIR $BMILIBDIR $bmi_lib_default" + AC_MSG_CHECKING([whether linking with $bmi_lib_default works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); BMILIB=$bmi_lib_default],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$BMILIB" = x -a x"$iofsl_error" = "xno"], + [ + AC_MSG_NOTICE([error: no libbmi found; check path for BMI package first...]) + iofsl_error="yes" + ]) + + AS_IF([test x"$iofsl_error" = "xno"], + [ + sav_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $ZOIDFSINCDIR" + AC_CHECK_HEADER([zoidfs.h], [], + [ + AC_MSG_NOTICE([error: no zoidfs.h found; check path for ZOIDFS package first...]) + iofsl_error="yes" + ]) + CPPFLAGS=$sav_CPPFLAGS + + AS_IF([test x"$ZOIDFSLIB" = x -a x"$iofsl_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $ZOIDFSLIBDIR $zoidfs_lib_default $BMILIBDIR $BMILIB" + AC_MSG_CHECKING([whether linking with $zoidfs_lib_default $BMILIBDIR $BMILIB works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); ZOIDFSLIB=$zoidfs_lib_default],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$ZOIDFSLIB" = x -a x"$iofsl_error" = "xno"], + [ + AC_MSG_NOTICE([error: no zoidfs library found; check path for ZOIDFS package first...]) + iofsl_error="yes" + ]) + ]) + + AS_IF([test x"$iofsl_error" = "xno"], + [ + have_iofsl="yes" + AC_DEFINE([HAVE_IOFSL], [1], [Define to 1 if VT is configured with IOFSL support.]) + ], + [ + AS_IF([test x"$force_iofsl" = "xyes"], [exit 1]) + ]) + ]) + + AC_SUBST(ZOIDFSDIR) + AC_SUBST(ZOIDFSINCDIR) + AC_SUBST(ZOIDFSLIBDIR) + AC_SUBST(ZOIDFSLIB) + AC_SUBST(BMIDIR) + AC_SUBST(BMIINCDIR) + AC_SUBST(BMILIBDIR) + AC_SUBST(BMILIB) + AC_SUBST(IOFSLSCRIPTS) +]) + diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.liberty.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.liberty.m4 new file mode 100644 index 0000000000..7e7e92356f --- /dev/null +++ b/ompi/contrib/vt/vt/config/m4/acinclude.liberty.m4 @@ -0,0 +1,74 @@ +AC_DEFUN([ACVT_LIBERTY], +[ + liberty_error="no" + have_liberty="no" + + LIBERTYDIR= + LIBERTYINCDIR= + LIBERTYLIBDIR= + LIBERTYLIB= + + AC_ARG_WITH(liberty-dir, + AC_HELP_STRING([--with-liberty-dir=LIBERTYDIR], [give the path for LIBERTY, default: /usr]), + [LIBERTYDIR="$withval/"]) + + AC_ARG_WITH(liberty-inc-dir, + AC_HELP_STRING([--with-liberty-inc-dir=LIBERTYINCDIR], + [give the path for LIBERTY-include files, default: LIBERTYDIR/include]), + [LIBERTYINCDIR="-I$withval/"], + [AS_IF([test x"$LIBERTYDIR" != x], [LIBERTYINCDIR="-I$LIBERTYDIR"include/])]) + + AC_ARG_WITH(liberty-lib-dir, + AC_HELP_STRING([--with-liberty-lib-dir=LIBERTYLIBDIR], + [give the path for LIBERTY-libraries, default: LIBERTYDIR/lib]), + [LIBERTYLIBDIR="-L$withval/"], + [AS_IF([test x"$LIBERTYDIR" != x], [LIBERTYLIBDIR="-L$LIBERTYDIR"lib/])]) + + AC_ARG_WITH(liberty-lib, + AC_HELP_STRING([--with-liberty-lib=LIBERTYLIB], [use given liberty lib, default: -liberty]), + [LIBERTYLIB="$withval"]) + + AS_IF([test x"$LIBERTYLIB" = x -a x"$liberty_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $LIBERTYLIBDIR -liberty_pic" + AC_MSG_CHECKING([whether linking with -liberty_pic works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); LIBERTYLIB=-liberty_pic],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$LIBERTYLIB" = x -a x"$liberty_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $LIBERTYLIBDIR -liberty" + AC_MSG_CHECKING([whether linking with -liberty works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); LIBERTYLIB=-liberty],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$LIBERTYLIB" = x -a x"$liberty_error" = "xno"], + [ + AC_MSG_NOTICE([error: no libiberty found; check path for LIBERTY package first...]) + liberty_error="yes" + ]) + + AS_IF([test x"$LIBERTYLIB" != x -a x"$liberty_error" = "xno"], + [have_liberty="yes"]) + + AS_IF([test x"$liberty_error" = "xno"], + [ + sav_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $LIBERTYINCDIR" + HAVE_DEMANGLE_H=0 + AC_CHECK_HEADERS([demangle.h]) + AS_IF([test x"$ac_cv_header_demangle_h"], [HAVE_DEMANGLE_H=1]) + AC_SUBST(HAVE_DEMANGLE_H) + CPPFLAGS=$sav_CPPFLAGS + ]) + + AC_SUBST(LIBERTYINCDIR) + AC_SUBST(LIBERTYLIBDIR) + AC_SUBST(LIBERTYLIB) +]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.libwrap.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.libwrap.m4 index 9e08fd9e1c..fede3b8ffb 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.libwrap.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.libwrap.m4 @@ -97,7 +97,8 @@ AC_DEFUN([ACVT_LIBWRAP], AC_DEFINE_UNQUOTED([SHLIBC_PATHNAME], ["$shlibc_pathname"], [pathname of shared LIBC]) - AC_CHECK_DECLS([__errno_location], [], [], [#include ]) + AC_CHECK_DECLS([__errno_location], [], + [AC_CHECK_DECLS([_Errno], [], [], [#include ])], [#include ]) ], [ AC_MSG_RESULT([unknown]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 index 378e8a840e..1378c2453a 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 @@ -33,18 +33,18 @@ AC_DEFUN([ACVT_MPI], AC_ARG_VAR(MPICC, [MPI C compiler command]) AC_ARG_VAR(MPICXX, [MPI C++ compiler command]) - AC_ARG_VAR(MPIF77, [MPI Fortran 77 compiler command]) + AC_ARG_VAR(MPIFC, [MPI Fortran compiler command]) AC_ARG_VAR(MPICFLAGS, [MPI C compiler flags (append to CFLAGS)]) AC_ARG_VAR(MPICXXFLAGS, [MPI C++ compiler flags (append to CXXFLAGS)]) - AC_ARG_VAR(MPIFFLAGS, [MPI Fortran 77 compiler flags (append to FFLAGS)]) + AC_ARG_VAR(MPIFCFLAGS, [MPI Fortran compiler flags (append to FCFLAGS)]) - AS_IF([test x"$inside_openmpi" = "xyes"], + AS_IF([test x"$inside_openmpi" != "xno"], [ AC_MSG_NOTICE([we are configuring inside Open MPI; presetting cache to skip MPI related tests]) ac_cv_prog_MPICC="$CC" ac_cv_prog_MPICXX="$CXX" - ac_cv_prog_MPIF77="$F77" + ac_cv_prog_MPIFC="$FC" MPIINCDIR="-I$top_vt_srcdir/../../../include -I$top_vt_builddir/../../../include" FMPIINCDIR="$MPIINCDIR" @@ -52,7 +52,8 @@ AC_DEFUN([ACVT_MPI], LDFLAGS="$LDFLAGS -L$top_vt_builddir/../../../.libs" enable_mpi="yes" - with_openmpi="yes" + AS_IF([test "$inside_openmpi" = "1.7"], + [with_openmpi17="yes"], [with_openmpi="yes"]) check_mpi2_io="no"; have_mpi2_io="yes" AC_ARG_ENABLE(mpi-io, @@ -102,6 +103,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="yes" check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -118,6 +120,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_extcoll="no"; have_mpi2_extcoll="no" check_mpi2_io="no"; have_mpi2_io="no" ac_cv_have_decl_MPI_IN_PLACE="no" + ac_cv_have_decl_MPI_ROOT="no" ]) ]) @@ -133,6 +136,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="yes" check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -175,6 +179,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="yes" check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -191,6 +196,8 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="no" check_mpi2_extcoll="no"; have_mpi2_extcoll="no" check_mpi2_io="no"; have_mpi2_io="no" + ac_cv_have_decl_MPI_IN_PLACE="no" + ac_cv_have_decl_MPI_ROOT="no" ]) ]) @@ -207,6 +214,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="yes" check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -223,6 +231,8 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="no" check_mpi2_extcoll="no"; have_mpi2_extcoll="no" check_mpi2_io="no"; have_mpi2_io="no" + ac_cv_have_decl_MPI_IN_PLACE="no" + ac_cv_have_decl_MPI_ROOT="no" ]) ]) @@ -239,6 +249,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="yes" check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -255,6 +266,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" check_mpi2_io="no"; have_mpi2_io="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -273,43 +285,46 @@ AC_DEFUN([ACVT_MPI], check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" check_mpi2_io="no"; have_mpi2_io="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) AC_ARG_WITH(openmpi, - AC_HELP_STRING([--with-openmpi], [set MPI-libs for Open MPI]), + AC_HELP_STRING([--with-openmpi], [set MPI-libs for Open MPI version < 1.7])) + AC_ARG_WITH(openmpi17, + AC_HELP_STRING([--with-openmpi17], [set MPI-libs for Open MPI version >= 1.7])) + AS_IF([test x"$with_openmpi" = "xyes" -o x"$with_openmpi17" = "xyes"], [ - AS_IF([test x"$withval" = "xyes"], + MPILIB="-lmpi" + PMPILIB="$MPILIB" + AS_IF([test x"$with_openmpi" = "xyes"], + [FMPILIB="-lmpi_f77"], [FMPILIB="-lmpi_mpifh"]) + check_mpi2_thread="no"; have_mpi2_thread="yes" + check_mpi2_1sided="no"; have_mpi2_1sided="yes" + check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" + ac_cv_func_MPI_Add_error_class="yes" + ac_cv_func_MPI_Add_error_code="yes" + ac_cv_func_MPI_Add_error_string="yes" + ac_cv_func_MPI_Get_address="yes" + ac_cv_func_MPI_Finalized="yes" + ac_cv_func_MPI_Type_create_f90_complex="yes" + ac_cv_func_MPI_Type_create_f90_integer="yes" + ac_cv_func_MPI_Type_create_f90_real="yes" + ac_cv_func_MPI_Type_create_struct="yes" + ac_cv_func_MPI_Type_match_size="yes" + ac_cv_func_PMPI_Win_test="yes" + ac_cv_func_PMPI_Win_lock="yes" + ac_cv_func_PMPI_Win_unlock="yes" + AS_IF([test x"$inside_openmpi" != "xno" -a x"$have_mpi2_io" = "xyes"], [ - MPILIB="-lmpi" - PMPILIB="$MPILIB" - FMPILIB="-lmpi_mpifh" - check_mpi2_thread="no"; have_mpi2_thread="yes" - check_mpi2_1sided="no"; have_mpi2_1sided="yes" - check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" - ac_cv_func_MPI_Add_error_class="yes" - ac_cv_func_MPI_Add_error_code="yes" - ac_cv_func_MPI_Add_error_string="yes" - ac_cv_func_MPI_Get_address="yes" - ac_cv_func_MPI_Finalized="yes" - ac_cv_func_MPI_Type_create_f90_complex="yes" - ac_cv_func_MPI_Type_create_f90_integer="yes" - ac_cv_func_MPI_Type_create_f90_real="yes" - ac_cv_func_MPI_Type_create_struct="yes" - ac_cv_func_MPI_Type_match_size="yes" - ac_cv_func_PMPI_Win_test="yes" - ac_cv_func_PMPI_Win_lock="yes" - ac_cv_func_PMPI_Win_unlock="yes" - AS_IF([test x"$inside_openmpi" = "xyes" -a x"$have_mpi2_io" = "xyes"], - [ - ac_cv_func_PMPI_File_read_ordered="yes" - ac_cv_func_PMPI_File_read_ordered_begin="yes" - ac_cv_func_PMPI_File_write_ordered="yes" - ac_cv_func_PMPI_File_write_ordered_begin="yes" - ac_cv_func_MPI_Register_datarep="yes" - ]) - ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_func_PMPI_File_read_ordered="yes" + ac_cv_func_PMPI_File_read_ordered_begin="yes" + ac_cv_func_PMPI_File_write_ordered="yes" + ac_cv_func_PMPI_File_write_ordered_begin="yes" + ac_cv_func_MPI_Register_datarep="yes" ]) + ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) AC_ARG_WITH(sgimpt, @@ -325,6 +340,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="yes" check_mpi2_extcoll="no"; have_mpi2_extcoll="no" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -340,6 +356,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="yes" check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -355,6 +372,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="yes" check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -375,6 +393,7 @@ AC_DEFUN([ACVT_MPI], check_mpi2_1sided="no"; have_mpi2_1sided="yes" check_mpi2_extcoll="no"; have_mpi2_extcoll="yes" ac_cv_have_decl_MPI_IN_PLACE="yes" + ac_cv_have_decl_MPI_ROOT="yes" ]) ]) @@ -618,7 +637,7 @@ dnl check for PMPILIB dnl check for FMPILIB - AS_IF([test x"$F77" != x], + AS_IF([test x"$FC" != x], [ AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], [ @@ -630,6 +649,16 @@ dnl check for FMPILIB LIBS=$sav_LIBS ]) + AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $MPILIBDIR -lmpi_mpifh $MPILIB" + AC_MSG_CHECKING([whether linking with -lmpi_mpifh works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); FMPILIB="-lmpi_mpifh"],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], [ sav_LIBS=$LIBS @@ -676,7 +705,7 @@ dnl check for FMPILIB [ AS_IF([test x"$check_fmpiwraplib" = "xyes"], [ - AC_MSG_WARN([no libmpi_f77, libmpibinding_f77, libfmpich, liblamf77mpi, or libfmpi found; build libvt-fmpi]) + AC_MSG_WARN([no libmpi_f77, libmpi_mpifh, libmpibinding_f77, libfmpich, liblamf77mpi, or libfmpi found; build libvt-fmpi]) FMPILIB="-lvt-fmpi" ]) ], @@ -710,6 +739,7 @@ dnl check for MPI-2 constants ACVT_CONF_SUBTITLE([MPI-2 constants]) AC_CHECK_DECLS([MPI_IN_PLACE], [], [], [#include "mpi.h"]) + AC_CHECK_DECLS([MPI_ROOT], [], [], [#include "mpi.h"]) dnl check for MPI-2 functions @@ -829,11 +859,11 @@ dnl check for Fortran interoperability ACVT_CONF_SUBTITLE([Fortran interoperability]) ACVT_FMPIWRAPLIB AS_IF([test x"$fmpiwraplib_error" = "xno"], - [build_fmpiwraplib="yes"], [MPIF77="$F77"; FMPILIB=]) + [build_fmpiwraplib="yes"], [MPIFC="$FC"; FMPILIB=]) ]) AS_IF([test x"$mpi_error" = "xno"], [have_mpi="yes"], - [MPICC="$CC"; MPICXX="$CXX"; MPIF77="$F77"]) + [MPICC="$CC"; MPICXX="$CXX"; MPIFC="$FC"]) AS_IF([test x"$FMPILIB" != x], [have_fmpi="yes"]) AS_IF([test x"$have_mpi2_thread" = "xyes"], [VT_MPIGEN_HAVE_MPI2_THREAD=1]) AS_IF([test x"$have_mpi2_1sided" = "xyes"], [VT_MPIGEN_HAVE_MPI2_1SIDED=1]) @@ -841,6 +871,8 @@ dnl check for Fortran interoperability AS_IF([test x"$have_mpi2_io" = "xyes"], [VT_MPIGEN_HAVE_MPI2_IO=1]) ]) + AC_DEFINE([MPI_TRACE_INSIDE], [0], [Define to 1 to record MPI functions called within MPI functions.]) + AS_IF([test x"$have_mpi" = "xyes"], [AC_DEFINE([HAVE_MPI], [1], [Define to 1 if VT is configured with MPI support.])]) @@ -889,18 +921,18 @@ AC_DEFUN([ACVT_FMPIWRAPLIB], VT_MPIGEN_HAVE_FC_CONV_WIN=0 VT_MPIGEN_HAVE_FC_CONV_MPI2CONST=0 - AS_IF([test x"$F77" != x], + AS_IF([test x"$FC" != x], [ - AC_CHECK_PROGS(MPIF77, mpif77 hf77 mpxlf_r mpxlf mpf77 cmpifc mpif90 mpxlf95_r mpxlf90_r mpxlf95 mpxlf90 mpf90 cmpif90c) - AS_IF([test x"$MPIF77" != x], + AC_CHECK_PROGS(MPIFC, mpif77 hf77 mpxlf_r mpxlf mpf77 cmpifc mpifort mpif90 mpxlf95_r mpxlf90_r mpxlf95 mpxlf90 mpf90 cmpif90c) + AS_IF([test x"$MPIFC" != x], [ AS_IF([test x"$inside_openmpi" = "xno"], [ - mpif77=`echo $MPIF77 | cut -d ' ' -f 1` - which_mpif77=`which $mpif77 2>/dev/null` - AS_IF([test x"$which_mpif77" = x], [AC_MSG_ERROR([$mpif77 not found])]) + mpifc=`echo $MPIFC | cut -d ' ' -f 1` + which_mpifc=`which $mpifc 2>/dev/null` + AS_IF([test x"$which_mpifc" = x], [AC_MSG_ERROR([$mpifc not found])]) - mpi_bin_dir=`dirname $which_mpif77` + mpi_bin_dir=`dirname $which_mpifc` AS_IF([test "$mpi_bin_dir" != "/usr/bin" -a "$mpi_bin_dir" != "/SX/usr/bin" -a x"$FMPIINCDIR" != x-I"$mpi_inc_dir"], [ mpi_inc_dir=-I`echo $mpi_bin_dir | sed -e 's/bin/include/'` @@ -910,7 +942,7 @@ AC_DEFUN([ACVT_FMPIWRAPLIB], ]) ], [ - MPIF77="$F77" + MPIFC="$FC" AC_MSG_CHECKING([for mpif.h]) rm -f conftest.f conftest.o cat > conftest.f << EOF @@ -918,7 +950,7 @@ AC_DEFUN([ACVT_FMPIWRAPLIB], INCLUDE 'mpif.h' END EOF - eval "$F77 $FFLAGS $MPIFFLAGS $FMPIINCDIR -c conftest.f" >/dev/null 2>&1 + eval "$FC $FCFLAGS $MPIFCFLAGS $FMPIINCDIR -c conftest.f" >/dev/null 2>&1 AS_IF([test "$?" = "0" -a -s conftest.o], [AC_MSG_RESULT([yes])], [ AC_MSG_RESULT([no]) @@ -929,7 +961,7 @@ EOF ]) ], [ - AC_MSG_NOTICE([error: no Fortran 77 compiler command given]) + AC_MSG_NOTICE([error: no Fortran compiler command given]) fmpiwraplib_error="yes" ]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.otf.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.otf.m4 index 2b867b510a..4463eaafdd 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.otf.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.otf.m4 @@ -5,9 +5,11 @@ AC_DEFUN([ACVT_OTF], OTFDIR= OTFINCDIR= OTFLIBDIR= + OTFLIB= AC_REQUIRE([ACVT_MPI]) AC_REQUIRE([ACVT_ZLIB]) + AC_REQUIRE([ACVT_IOFSL]) AC_ARG_WITH(extern-otf, AC_HELP_STRING([--with-extern-otf], [use external OTF library, default: not set]), @@ -30,7 +32,7 @@ AC_DEFUN([ACVT_OTF], [AS_IF([test x"$OTFDIR" != x], [OTFLIBDIR="-L$OTFDIR"lib/])]) AC_ARG_WITH(otf-lib, - AC_HELP_STRING([--with-otf-lib=OTFLIB], [use given otf lib, default: -lotf ZLIBLIBDIR ZLIBLIB]), + AC_HELP_STRING([--with-otf-lib=OTFLIB], [use given otf lib, default: -lotf ZLIBLIBDIR ZLIBLIB ZOIDFSLIBDIR ZOIDFSLIB BMILIBDIR BMILIB]), [OTFLIB="$withval"]) AC_ARG_WITH(otf-flags, @@ -50,10 +52,10 @@ AC_DEFUN([ACVT_OTF], AS_IF([test x"$OTFLIB" = x -a "$otf_error" = "no"], [ sav_LIBS=$LIBS - LIBS="$LIBS $OTFLIBDIR -lotf $ZLIBLIBDIR $ZLIBLIB" - AC_MSG_CHECKING([whether linking with -lotf $ZLIBLIBDIR $ZLIBLIB works]) + LIBS="$LIBS $OTFLIBDIR -lotf $ZLIBLIBDIR $ZLIBLIB $ZOIDFSLIBDIR $ZOIDFSLIB $BMILIBDIR $BMILIB" + AC_MSG_CHECKING([whether linking with -lotf $ZLIBLIBDIR $ZLIBLIB $ZOIDFSLIBDIR $ZOIDFSLIB $BMILIBDIR $BMILIB works]) AC_TRY_LINK([],[], - [AC_MSG_RESULT([yes]); OTFLIB="-lotf $ZLIBLIBDIR $ZLIBLIB"],[AC_MSG_RESULT([no])]) + [AC_MSG_RESULT([yes]); OTFLIB="-lotf $ZLIBLIBDIR $ZLIBLIB $ZOIDFSLIBDIR $ZOIDFSLIB $BMILIBDIR $BMILIB"],[AC_MSG_RESULT([no])]) LIBS=$sav_LIBS ]) @@ -144,9 +146,37 @@ dnl [otf_conf_args="$otf_conf_args --with-mpi-inc-dir=`echo $MPIINCDIR | sed [ otf_conf_args="$otf_conf_args --without-zlib" ]) + AS_IF([test x"$have_iofsl" = "xyes"], + [ + AS_IF([test x"$force_iofsl" = "xyes"], + [otf_conf_args="$otf_conf_args --with-zoidfs"]) + + AS_IF([test x"$ZOIDFSDIR" != x], + [otf_conf_args="$otf_conf_args --with-zoidfs-dir=$ZOIDFSDIR"]) + AS_IF([test x"$ZOIDFSINCDIR" != x], + [otf_conf_args="$otf_conf_args --with-zoidfs-inc-dir=`echo $ZOIDFSINCDIR | sed s/-I//`"]) + AS_IF([test x"$ZOIDFSLIBDIR" != x], + [otf_conf_args="$otf_conf_args --with-zoidfs-lib-dir=`echo $ZOIDFSLIBDIR | sed s/-L//`"]) + AS_IF([test x"$ZOIDFSLIB" != x], + [otf_conf_args="$otf_conf_args --with-zoidfs-lib=\"$ZOIDFSLIB\""]) + + AS_IF([test x"$BMIDIR" != x], + [otf_conf_args="$otf_conf_args --with-bmi-dir=$BMIDIR"]) + AS_IF([test x"$BMIINCDIR" != x], + [otf_conf_args="$otf_conf_args --with-bmi-inc-dir=`echo $BMIINCDIR | sed s/-I//`"]) + AS_IF([test x"$BMILIBDIR" != x], + [otf_conf_args="$otf_conf_args --with-bmi-lib-dir=`echo $BMILIBDIR | sed s/-L//`"]) + AS_IF([test x"$BMILIB" != x], + [otf_conf_args="$otf_conf_args --with-bmi-lib=\"$BMILIB\""]) + ], + [ + otf_conf_args="$otf_conf_args --without-zoidfs" + ]) otf_conf_args="$otf_conf_args --prefix=\"$prefix\" --exec-prefix=\"$exec_prefix\" --bindir=\"$bindir\" --libdir=\"$libdir\" --includedir=\"$includedir\" --docdir=\"$docdir/otf\" $OTFFLAGS --cache-file=\"/dev/null\" --srcdir=\"$otf_srcdir\"" - + + export CPPFLAGS + AC_MSG_NOTICE([running $SHELL $otf_conf_cmd $otf_conf_args]) eval "$SHELL '$otf_conf_cmd' $otf_conf_args" AS_IF([test $? != "0"], [AC_MSG_ERROR([$otf_conf_cmd failed for $otf_dir])]) @@ -157,7 +187,7 @@ dnl [otf_conf_args="$otf_conf_args --with-mpi-inc-dir=`echo $MPIINCDIR | sed OTFINCDIR= OTFLIBDIR= - AS_IF([test x"$OTFLIB" = x], [OTFLIB="-lotf $ZLIBLIBDIR $ZLIBLIB"]) + AS_IF([test x"$OTFLIB" = x], [OTFLIB="-lotf $ZLIBLIBDIR $ZLIBLIB $ZOIDFSLIBDIR $ZOIDFSLIB $BMILIBDIR $BMILIB"]) ]) AC_SUBST(OTFDIR) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.tauinst.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.tauinst.m4 index 01332b14ca..de0df65026 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.tauinst.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.tauinst.m4 @@ -68,7 +68,7 @@ AC_DEFUN([ACVT_TAUINST], AC_CHECK_PROG(tauinst_cxxparse_cmd, cxxparse, cxxparse) AS_IF([test x"$tauinst_cxxparse_cmd" = x], [AC_MSG_WARN([no cxxparse found; C++ source code cannot be instrumented by TAU])]) - AS_IF([test x"$F77" != x], + AS_IF([test x"$FC" != x], [ AC_CHECK_PROGS(tauinst_fparse_cmd, f95parse f90parse gfparse) AS_IF([test x"$tauinst_fparse_cmd" = x], diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.unimci.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.unimci.m4 index 3ca591c35d..7e01a641c7 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.unimci.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.unimci.m4 @@ -10,15 +10,12 @@ AC_DEFUN([ACVT_UNIMCI], unimci_checker_version= unimci_cc= unimci_cxx= - unimci_f77= - unimci_f90= + unimci_fc= UNIMCI_CFLAGS= UNIMCI_CLIBS= UNIMCI_CXXFLAGS= UNIMCI_CXXLIBS= - UNIMCI_FFLAGS= - UNIMCI_FLIBS= UNIMCI_FCFLAGS= UNIMCI_FCLIBS= UNIMCI_LDFLAGS= @@ -154,54 +151,26 @@ dnl check for C++ compiler flags and libs ], [unimci_error="yes"]) ]) -dnl check for Fortran 77 support - - AS_IF([test x"$unimci_error" = "xno" -a x"$F77" != x], - [ - AC_MSG_CHECKING([whether UniMCI's checker supports Fortran 77]) - unimci_f77=`eval "$unimci_config_cmd --f77"` - AS_IF([test "$?" = "0"], - [ - AS_IF([test x"$unimci_f77" != x], - [ - AC_MSG_RESULT([yes]) - -dnl check for Fortran 77 compiler flags and libs - - AC_MSG_CHECKING([for UniMCI's Fortran 77 compiler flags]) - UNIMCI_FFLAGS=`eval "$unimci_config_cmd --f77flags"` - AS_IF([test "$?" = "0"], - [ - AC_MSG_RESULT([$UNIMCI_FFLAGS]) - AC_MSG_CHECKING([for UniMCI's Fortran 77 libs]) - UNIMCI_FLIBS=`eval "$unimci_config_cmd --f77lib-dirs --f77libs"` - AS_IF([test "$?" = "0"], - [AC_MSG_RESULT([$UNIMCI_FLIBS])], [unimci_error="yes"]) - ], [unimci_error="yes"]) - ], [AC_MSG_RESULT([no])]) - ], [unimci_error="yes"]) - ]) - -dnl check for Fortran 90 support +dnl check for Fortran support AS_IF([test x"$unimci_error" = "xno" -a x"$FC" != x], [ - AC_MSG_CHECKING([whether UniMCI's checker supports Fortran 90]) - unimci_f90=`eval "$unimci_config_cmd --f90"` + AC_MSG_CHECKING([whether UniMCI's checker supports Fortran]) + unimci_fc=`eval "$unimci_config_cmd --f90"` AS_IF([test "$?" = "0"], [ - AS_IF([test x"$unimci_f90" != x], + AS_IF([test x"$unimci_fc" != x], [ AC_MSG_RESULT([yes]) -dnl check for Fortran 90 compiler flags and libs +dnl check for Fortran compiler flags and libs - AC_MSG_CHECKING([for UniMCI's Fortran 90 compiler flags]) + AC_MSG_CHECKING([for UniMCI's Fortran compiler flags]) UNIMCI_FCFLAGS=`eval "$unimci_config_cmd --f90flags"` AS_IF([test "$?" = "0"], [ AC_MSG_RESULT([$UNIMCI_FCFLAGS]) - AC_MSG_CHECKING([for UniMCI's Fortran 90 libs]) + AC_MSG_CHECKING([for UniMCI's Fortran libs]) UNIMCI_FCLIBS=`eval "$unimci_config_cmd --f90lib-dirs --f90libs"` AS_IF([test "$?" = "0"], [AC_MSG_RESULT([$UNIMCI_FCLIBS])], [unimci_error="yes"]) @@ -210,7 +179,7 @@ dnl check for Fortran 90 compiler flags and libs ], [unimci_error="yes"]) ]) - AS_IF([test x"$unimci_cc" = x -a x"$unimci_cxx" = x -a x"$unimci_f77" = x -a x"$unimci_f90" = x], + AS_IF([test x"$unimci_cc" = x -a x"$unimci_cxx" = x -a x"$unimci_fc" = x], [unimci_error="yes"]) dnl check for linker flags @@ -233,7 +202,7 @@ dnl check for MPI Fortran interoperability AS_IF([test x"$unimci_error" = "xno" -a x"$have_fmpi" = "xyes" -a x"$build_fmpiwraplib" = "xno"], [ - AS_IF([test x"$F77" != x -o x"$FC" != x], + AS_IF([test x"$FC" != x], [ ACVT_CONF_SUBSUBTITLE([MPI Fortran interoperability]) ACVT_FMPIWRAPLIB @@ -264,8 +233,6 @@ dnl check for MPI Fortran interoperability AC_SUBST(UNIMCI_CLIBS) AC_SUBST(UNIMCI_CXXFLAGS) AC_SUBST(UNIMCI_CXXLIBS) - AC_SUBST(UNIMCI_FFLAGS) - AC_SUBST(UNIMCI_FLIBS) AC_SUBST(UNIMCI_FCFLAGS) AC_SUBST(UNIMCI_FCLIBS) AC_SUBST(UNIMCI_LDFLAGS) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.vtsetup.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.vtsetup.m4 index 522c282286..4a94d526d3 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.vtsetup.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.vtsetup.m4 @@ -22,6 +22,7 @@ AC_DEFUN([ACVT_SETUP], VT_SETUP_PLUGIN_CNTR=0 VT_SETUP_PTHREAD=0 VT_SETUP_RUSAGE=0 + VT_SETUP_IOFSL=0 AC_ARG_ENABLE(vtsetup, AC_HELP_STRING([--enable-vtsetup], @@ -58,6 +59,7 @@ AC_DEFUN([ACVT_SETUP], AS_IF([test x"$have_plugin_cntr" = "xyes"], [VT_SETUP_PLUGIN_CNTR=1]) AS_IF([test x"$have_pthread" = "xyes"], [VT_SETUP_PTHREAD=1]) AS_IF([test x"$have_rusage" = "xyes"], [VT_SETUP_RUSAGE=1]) + AS_IF([test x"$have_iofsl" = "xyes"], [VT_SETUP_IOFSL=1]) build_vtsetup="yes" ]) @@ -80,5 +82,6 @@ AC_DEFUN([ACVT_SETUP], AC_SUBST(VT_SETUP_PLUGIN_CNTR) AC_SUBST(VT_SETUP_PTHREAD) AC_SUBST(VT_SETUP_RUSAGE) + AC_SUBST(VT_SETUP_IOFSL) ]) diff --git a/ompi/contrib/vt/vt/config/mpigen/mk_fortran_wrapper.sh.in b/ompi/contrib/vt/vt/config/mpigen/mk_fortran_wrapper.sh.in index da50d93221..64f977caa3 100644 --- a/ompi/contrib/vt/vt/config/mpigen/mk_fortran_wrapper.sh.in +++ b/ompi/contrib/vt/vt/config/mpigen/mk_fortran_wrapper.sh.in @@ -95,14 +95,17 @@ cat <$tmp.awk next } - aint_convert=1 + aint_convert=0 - if (index(mpicall,"MPI_Get_address") != 0 || - index(mpicall,"MPI_Type_create_hindexed") != 0 || - index(mpicall,"MPI_Type_create_hvector") != 0 || - index(mpicall,"MPI_Type_create_struct") != 0) + if (index(mpicall,"MPI_Address") != 0 || + index(mpicall,"MPI_Type_extent") != 0 || + index(mpicall,"MPI_Type_hindexed") != 0 || + index(mpicall,"MPI_Type_hvector") != 0 || + index(mpicall,"MPI_Type_lb") != 0 || + index(mpicall,"MPI_Type_struct") != 0 || + index(mpicall,"MPI_Type_ub") != 0) { - aint_convert=0 + aint_convert=1 } optional=0 diff --git a/ompi/contrib/vt/vt/config_bottom.h b/ompi/contrib/vt/vt/config_bottom.h index 5619819130..03c6f86ea9 100644 --- a/ompi/contrib/vt/vt/config_bottom.h +++ b/ompi/contrib/vt/vt/config_bottom.h @@ -4,13 +4,6 @@ #include "util/util.h" -/* use own implementation of assert() to work around a compiler bug - (seen on MacOS using GCC v4.2.1): - The linker results in an undefined reference to ___builtin_expect() - when using assert() within OpenMP-parallel regions. */ -#undef assert -#define assert vt_assert - #if !(defined(HAVE_ASPRINTF) && HAVE_ASPRINTF) # undef asprintf # define asprintf vt_asprintf diff --git a/ompi/contrib/vt/vt/configure.in b/ompi/contrib/vt/vt/configure.in index 943a101862..427adb49b7 100644 --- a/ompi/contrib/vt/vt/configure.in +++ b/ompi/contrib/vt/vt/configure.in @@ -15,10 +15,14 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) inside_openmpi="no" AC_ARG_WITH(openmpi-inside, [], [ - AS_IF([test x"$withval" != "xno"], + AS_IF([test x"$withval" = "xyes" -o x"$withval" = "x1.7"], [ - inside_openmpi="yes" + inside_openmpi="$withval" CPPFLAGS="-DINSIDE_OPENMPI $CPPFLAGS" + + # Set FC to F77 if Open MPI version < 1.7 + AS_IF([test x"$withval" = "xyes" -a x"$FC" = x -a x"$F77" != x], + [FC="$F77"]) ]) ]) @@ -73,9 +77,9 @@ AM_CONDITIONAL(AMHAVECSFS, test x"$have_csfs" = "xyes") # Correct install paths AS_IF([test x"$prefix" = x -o x"$prefix" = "xNONE"], [prefix="$ac_default_prefix"]) AS_IF([test x"$exec_prefix" = x -o x"$exec_prefix" = "xNONE"], [exec_prefix="\${prefix}"]) -AS_IF([test x"$inside_openmpi" = "xyes" -o "$includedir" = "\${prefix}/include"], +AS_IF([test x"$inside_openmpi" != "xno" -o "$includedir" = "\${prefix}/include"], [includedir="$includedir/vampirtrace"]) -AS_IF([test x"$inside_openmpi" = "xyes" -o "$datarootdir" = "\${prefix}/share"], +AS_IF([test x"$inside_openmpi" != "xno" -o "$datarootdir" = "\${prefix}/share"], [datarootdir="$datarootdir/vampirtrace"]) AS_IF([test "$docdir" = "\${datarootdir}/doc/\${PACKAGE_TARNAME}"], [docdir="\${datarootdir}/doc"]) @@ -108,7 +112,6 @@ AC_ARG_ENABLE(fortran, ], [ check_fortran="no" - F77= FC= ]) ]) @@ -116,26 +119,20 @@ AC_ARG_ENABLE(fortran, # Check for Fortran compiler AS_IF([test x"$check_fortran" = "xyes"], [ - AS_IF([test x"$F77" = x -a x"$FC" != x], [F77=$FC]) - - AC_PROG_F77 - AS_IF([test x"$F77" = x], + # Exclude F77-only compiler names when searching Fortran compiler + AC_PROG_FC([gfortran f95 fort xlf95 ifort ifc efc pgfortran pgf95 lf95 f90 xlf90 pgf90 epcf90]) + AS_IF([test x"$FC" = x], [ - AC_MSG_NOTICE([error: no Fortran 77 compiler found]) + AC_MSG_NOTICE([error: no Fortran compiler found]) AS_IF([test x"$force_fortran" = "xyes"], [exit 1]) ]) - - AC_PROG_FC ]) AC_LANG([C]) -AS_IF([test x"$F77" != x], -[AC_DEFINE([HAVE_F77], [1], [Define to 1 if VT is configured with Fortran 77 support.])]) -AM_CONDITIONAL(AMHAVEF77, test x"$F77" != x) AS_IF([test x"$FC" != x], -[AC_DEFINE([HAVE_F90], [1], [Define to 1 if VT is configured with Fortran 90 support.])]) -AM_CONDITIONAL(AMHAVEF90, test x"$FC" != x) +[AC_DEFINE([HAVE_FC], [1], [Define to 1 if VT is configured with Fortran support.])]) +AM_CONDITIONAL(AMHAVEFC, test x"$FC" != x) # Check cross-build related stuff ACVT_CROSS @@ -239,6 +236,7 @@ AS_IF([test x"$enable_config_titles" = "xyes" -a x"$check_compinst" = "xno"], AM_CONDITIONAL(AMHAVECOMPINST, test x"$have_compinst" = "xyes") AM_CONDITIONAL(AMBUILDCOMPINST_GNU, test x"$compinst_type" = "xgnu" -o x"$compinst_type" = "xpgi9") AM_CONDITIONAL(AMBUILDCOMPINST_PGI, test x"$compinst_type" = "xpgi") +AM_CONDITIONAL(AMBUILDCOMPINST_CRAYCCE, test x"$compinst_type" = "xcraycce") AM_CONDITIONAL(AMBUILDCOMPINST_PHAT, test x"$compinst_type" = "xsun") AM_CONDITIONAL(AMBUILDCOMPINST_XL, test x"$compinst_type" = "xxl") AM_CONDITIONAL(AMBUILDCOMPINST_FTRACE, test x"$compinst_type" = "xnecsx") @@ -381,10 +379,15 @@ AS_IF([test x"$enable_config_titles" = "xyes" -a x"$check_getcpu" = "xno"], AS_IF([test x"$force_getcpu" = "xyes" -a x"$getcpu_error" = "xyes"], [exit 1]) AM_CONDITIONAL(AMHAVEGETCPU, test x"$have_getcpu" = "xyes") -#Check for NVIDIA CUDA support +# Check for NVIDIA CUDA support ACVT_CONF_TITLE([NVIDIA CUDA]) -#Check for CUDA Toolkit +# Check for symbol demangling support by libiberty +ACVT_CONF_SUBTITLE([Symbol demangling]) +ACVT_LIBERTY +AM_CONDITIONAL(AMHAVELIBERTY, test x"$have_liberty" = "xyes") + +# Check for CUDA Toolkit ACVT_CONF_SUBTITLE([CUDA Toolkit]) ACVT_CUDA AS_IF([test x"$enable_config_titles" = "xyes" -a x"$check_cuda" = "xno"], @@ -436,6 +439,8 @@ ACVT_CONF_TITLE([Open Trace Format (OTF)]) ACVT_OTF AS_IF([test x"$use_extern_otf" = "xyes" -a x"$otf_error" = "xyes"], [exit 1]) AM_CONDITIONAL(AMEXTERNOTF, test x"$use_extern_otf" = "xyes") +AM_CONDITIONAL(AMHAVEIOFSL, test x"$have_iofsl" = "xyes") +AM_CONDITIONAL(AMBUILDIOFSLSCRIPTS, test x"$have_iofsl" = "xyes" -a x"$IOFSLSCRIPTS" != x) # Check for capabilities of vtsetup ACVT_CONF_TITLE([VTSetup]) @@ -469,6 +474,10 @@ AC_CONFIG_FILES([Makefile tools/vtdyn/dynattlib/Makefile tools/vtfilter/Makefile tools/vtfilter/mpi/Makefile + tools/vtiofsl/Makefile + tools/vtiofsl/vtiofsl-common + tools/vtiofsl/vtiofsl-start + tools/vtiofsl/vtiofsl-stop tools/vtjava/Makefile tools/vtjava/vtjava tools/vtlibwrapgen/Makefile @@ -485,13 +494,11 @@ AC_CONFIG_FILES([Makefile tools/vtwrapper/Makefile tools/vtwrapper/vtcc-wrapper-data.txt tools/vtwrapper/vtc++-wrapper-data.txt - tools/vtwrapper/vtf77-wrapper-data.txt - tools/vtwrapper/vtf90-wrapper-data.txt + tools/vtwrapper/vtfort-wrapper-data.txt tools/vtwrapper/vtnvcc-wrapper-data.txt include/Makefile include/vt_inttypes.h doc/Makefile - etc/Makefile ]) # Add MPI wrapper generator scripts to output files @@ -521,6 +528,27 @@ for makefile in $makefile_to_patch; do mv $makefile.tmp $makefile done +# Patch the compiler wrapper configuration file for vtnvcc in order to pass +# compiler/linker options directly to the compiler/linker using the option +# -Xcompiler/-Xlinker. +wrapper_data_file="tools/vtwrapper/vtnvcc-wrapper-data.txt" +# keywords containing compiler/linker options +# ( -- ) +wrapper_data_keys="compiler_flags compinst_compiler_flags dyninst_compiler_flags -- linker_flags libs vtlib vtmpilib vtmtlib vthyblib vtpomplib vtdynattlib" + +value_prefix="-Xcompiler" +for key in $wrapper_data_keys; do + if test $key = "--"; then + value_prefix="-Xlinker" + else + value=`grep "^$key=" $wrapper_data_file | sed "s/^$key=//;s/^ *//;s/ *$//;s/ \{1,\}/ /g;s/ /,/g"` + if test x"$value" != x; then + sed -e "s@^$key=.*@$key=$value_prefix $value@" $wrapper_data_file >$wrapper_data_file.tmp + mv $wrapper_data_file.tmp $wrapper_data_file + fi + fi +done + # Generate MPI wrappers AS_IF([test x"$have_mpi" = "xyes"], [ diff --git a/ompi/contrib/vt/vt/doc/FILTER.SPEC b/ompi/contrib/vt/vt/doc/FILTER.SPEC index 6f9575c400..01bff521e8 100644 --- a/ompi/contrib/vt/vt/doc/FILTER.SPEC +++ b/ompi/contrib/vt/vt/doc/FILTER.SPEC @@ -1,20 +1,53 @@ -# VampirTrace region filter specification +# VampirTrace function filter specification # -# call limit definitions and region assignments +# Syntax: -- [S:<[min-]max-stack-level>] [R] +# or: -- [S:<[min-]max-stack-level>] [R] G # -# syntax: -- +# functions, groups Semicolon-separated list of functions/groups. +# (can contain wildcards) # -# regions semicolon-seperated list of regions -# (can be wildcards) -# limit assigned call limit -# 0 = region(s) denied -# -1 = unlimited +# limit call limit +# Stop recording of function/group when the specified call +# limit is reached. +# (0 = don't record function/group, -1 = record unlimited) # -# example: +# S:<[min-]max-stack-level> +# minimum/maximum call stack level +# Don't record function/group called beyond the specified +# stack level boundaries. +# (values must be > 0, only valid if call limit is != 0) # -# add;sub;mul;div -- 1000 -# * -- 3000000 +# R Attribute for recursive filtering. +# Don't record callees of filtered function/group. # -# These region filter directives cause that the functions "add", "sub", -# "mul" and "div" be recorded at most 1000 times. The remaining -# functions (*) will be recorded at most 3000000 times. +# G Attribute for filtering function groups. +# +# Example: +# +# add;sub;mul;div -- 1000 +# MATH -- 500 G +# * -- 3000000 S:5-10 +# +# These filter directives cause that the functions "add", "sub", "mul", and +# "div" will be recorded at most 1000 times and all the functions of the group +# "MATH" at most 500 times. The remaining functions (*) will only be recorded +# when they are called between call stack level 5 and 10 but at most 3000000 +# times. +# +# Rank Specific Filtering: +# +# Use the '@' clauses to restrict all the following filter directives to the +# given ranks. The rank selection must be given as a list of - +# pairs or single values. +# The optional argument "-- OFF" disables the given ranks completely, regardless +# of following filter rules. +# +# Example: +# +# @ 35 - 42 -- OFF +# @ 4 - 10, 20 - 29, 34 +# foo;bar -- 2000 +# * -- 0 +# +# This example defines two limits for the ranks 4 - 10, 20 - 29, and 34. The +# first line disables the ranks 35 - 42 completely. diff --git a/ompi/contrib/vt/vt/doc/GROUPS.SPEC b/ompi/contrib/vt/vt/doc/GROUPS.SPEC index eebfb2032b..11c70c8d9c 100644 --- a/ompi/contrib/vt/vt/doc/GROUPS.SPEC +++ b/ompi/contrib/vt/vt/doc/GROUPS.SPEC @@ -1,18 +1,18 @@ -# VampirTrace region groups specification +# VampirTrace function group specification # -# group definitions and region assignments +# Group definitions and region assignments: # -# syntax: = +# Syntax: = # # group group name -# regions semicolon-seperated list of regions -# (can be wildcards) +# regions semicolon-seperated list of functions +# (can contain wildcards) # -# example: +# Example: # -# CALC=add;sub;mul;div -# USER=app_* +# MATH=add;sub;mul;div +# USER=app_* # -# These group assignments make the functions "add", "sub", "mul" and "div" -# associated with group "CALC" and all functions with the prefix "app_" are -# associated with group "USER". +# These group assignments associate the functions "add", "sub", "mul" and "div" +# with group "MATH" and all functions with the prefix "app_" are associated with +# group "USER". diff --git a/ompi/contrib/vt/vt/doc/UserManual.html b/ompi/contrib/vt/vt/doc/UserManual.html index 42882deecc..ebc1a39e71 100644 --- a/ompi/contrib/vt/vt/doc/UserManual.html +++ b/ompi/contrib/vt/vt/doc/UserManual.html @@ -67,7 +67,7 @@ BODY { font-family: sans-serif; }

-VampirTrace 5.12.2 User Manual +VampirTrace 5.13 User Manual


@@ -98,186 +98,225 @@ Contents

@@ -314,20 +353,20 @@ OpenMP events, and performance counters.

After a successful tracing run, VampirTrace writes all collected data to a trace file in the Open Trace Format (OTF)[*][*]. As a result, the information is available for post-mortem analysis and visualization by various tools. Most notably, VampirTrace provides the input data for the Vampir analysis and visualization tool[*][*].

VampirTrace is included in OpenMPI 1.3 and later versions. If not disabled explicitly, VampirTrace is built automatically when installing OpenMPI[*][*].

@@ -558,8 +597,7 @@ Compiler Wrappers

All the necessary instrumentation of user functions, MPI, and -OpenMP events is handled by VampirTrace's compiler wrappers (vtcc, vtcxx, vtf77, and -vtf90). +OpenMP events is handled by VampirTrace's compiler wrappers (vtcc, vtcxx, and vtfort). In the script used to build the application (e.g. a makefile), all compile and link commands should be replaced by the VampirTrace compiler wrapper. The wrappers perform the necessary instrumentation of the program and link @@ -587,7 +625,7 @@ Simply replace the compiler by VampirTrace's wrapper: gfortran hello.f90 -o hello with instrumentation: -vtf90 hello.f90 -o hello +vtfort hello.f90 -o hello
@@ -659,7 +697,7 @@ calls are invoked. For OpenMP events OPARI is invoked for automatic source code -o hello with instrumentation: -vtf90 <-openmp|-pthread> hello.f90 +vtfort <-openmp|-pthread> hello.f90   -o hello @@ -687,7 +725,7 @@ With a combination of the above mentioned approaches, hybrid applications can b -o hello with instrumentation: -vtf90 -vt:f90 mpif90 +vtfort -vt:fc mpif90   <-openmp|-pthread> hello.F90 @@ -792,7 +830,7 @@ If available, simply use the compiler wrappers without any parameters, e.g.:



- % vtf90 hello.f90 -o hello + % vtfort hello.f90 -o hello

@@ -813,13 +851,15 @@ VampirTrace supports following compilers for automatic instrumentation:

  • Portland Group (PGI) (i.e. pgcc, pgCC, pgf90, pgf77)
  • +
  • Cray CCE (i.e. craycc, crayCC, crayftn) +
  • SUN Fortran 90 (i.e. cc, CC, f90)
  • IBM (i.e. xlcc, xlCC, xlf90)
  • NEC SX (i.e. sxcc, sxc++, sxf90)
  • -
  • Open64 (i.e. opencc, openCC, openf90) +
  • Open64 version ≥4.2 (i.e. opencc, openCC, openf90)
  • OpenUH version ≥4.0 (i.e. uhcc, uhCC, uhf90)
  • @@ -1143,7 +1183,7 @@ in a single file, that The names in between may contain wildcards as ``?'', ``*', and ``#'', each entry gets a new line. The lists end with END[_FILE]_<INCLUDE|EXCLUDE>_LIST. For further information on selective profiling have a look at the TAU documentation[*][*]. To announce the file through the compiler wrapper use the option -vt:tau:
    @@ -1160,7 +1200,7 @@ Binary Instrumentation Using Dyninst
     The option -vt:inst dyninst is used with the compiler wrapper to 
     instrument the application during runtime (binary instrumentation), by using 
     Dyninst[*][*].
     Recompiling is not necessary for this kind of instrumentation,
     but relinking:
    @@ -1168,7 +1208,7 @@ but relinking:
     



    - % vtf90 -vt:inst dyninst hello.o -o hello + % vtfort -vt:inst dyninst hello.o -o hello


    @@ -1311,7 +1351,7 @@ Tracing Calls to 3rd-Party Libraries VampirTrace is also capable to trace calls to third party libraries, which come with at least one C header file even without the library's source code. If VampirTrace was built with support for library tracing (the CTool library[*][*] is required), the tool vtlibwrapgen can be used to generate a wrapper library to intercept each call to the actual library functions. This wrapper library can be linked to the application or used in combination with the @@ -1455,7 +1495,7 @@ of a VampirTrace instrumented executable: - VT_BUFFER_SIZE -Size of internal event trace buffer. This is the place where +Size of internal event trace buffer per process. This is the place where event records are stored, before being written to OTF.
    ⇒ Section 3.3 @@ -1490,6 +1530,10 @@ of a VampirTrace instrumented executable: ⇒ Section 3.3 1 +VT_MAX_SNAPSHOTS +Maximum number of snapshots to generate. +1024 + VT_MAX_THREADS Maximum number of threads per process that VampirTrace reserves resources for. 65536 @@ -1507,8 +1551,12 @@ of a VampirTrace instrumented executable: Name of node-local directory which can be used to store temporary trace files. /tmp/ +VT_SNAPSHOTS +Enable snapshot generation? Allows Vampir to load subsets of the resulting trace. +yes + VT_THREAD_BUFFER_SIZE -Size of internal event trace buffer for threads. If not defined, the +Size of internal event trace buffer per thread. If not defined, the size is set to 10% of VT_BUFFER_SIZE.
    ⇒ Section 3.3 @@ -1557,6 +1605,12 @@ of a VampirTrace instrumented executable: ⇒ Section 4.8 no +VT_IOTRACE_EXTENDED +Enable tracing of additional function argument for application I/O calls? +
    + ⇒ Section 4.8 +no + VT_LIBCTRACE Enable tracing of fork/system/exec calls?
    @@ -1617,6 +1671,24 @@ of a VampirTrace instrumented executable: Minimum buffer fill level for synchronized buffer flush in percent. 80 +VT_IOFSL_SERVERS +Comma-separated list of IOFSL server addresses. +
    + ⇒ Section D.4.2 +- + +VT_IOFSL_MODE +Mode of the IOFSL communication (MULTIFILE_SPLIT, MULTIFILE) +
    + ⇒ Section D.4.2 +MULTIFILE_SPLIT + +VT_IOFSL_ASYNC_IO +Enable buffered IOFSL writes? +
    + ⇒ Section D.4.2 +no +
    @@ -1774,15 +1846,31 @@ data, parts of the application may be swapped to disk, leading to a significant change in the behavior of the application.

    -In multi-threaded applications a single buffer cannot be shared across a process +In multi-threaded applications a single buffer cannot be shared across a process and the associated threads for performance reasons. Thus independent buffers are created for every process and thread, at which the process buffer size is 70% and the thread buffer size is 10% of the value set in -VT_BUFFER_SIZE. The buffer size of processes and threads can be -explicitly specified setting the environment variable -VT_THREAD_BUFFER_SIZE, which defines the buffer size of a thread, -whereas the buffer size of a process is then defined by the value of -VT_BUFFER_SIZE. +VT_BUFFER_SIZE. +The buffer size of processes and threads can be explicitly specified setting +the environment variable VT_THREAD_BUFFER_SIZE, which defines the +buffer size of a thread, whereas the buffer size of a process is then defined +by the value of VT_BUFFER_SIZE. +The total memory consumption of the application is calculated as follows +(assuming that every process has the same number of threads): +

    +
    a)
    +
    M = N * VT_BUFFER_SIZE * 0.7 + N * T * VT_BUFFER_SIZE * 0.1 +
    (VT_THREAD_BUFFER_SIZE is not specified) +
    +
    b)
    +
    M = N * VT_BUFFER_SIZE + N * T * VT_THREAD_BUFFER_SIZE +
    (VT_THREAD_BUFFER_SIZE is specified) +
    +
    +M ... total allocated memory   N ... number of processes   T ... number of threads per process + +

    +

    Note that you can decrease the size of trace files significantly by @@ -1903,7 +1991,7 @@ for the enhanced timer synchronization: