From 4ec105182e00594df09f752897df18a4b8b58c0c Mon Sep 17 00:00:00 2001 From: Matthias Jurenz Date: Thu, 17 Nov 2011 10:02:38 +0000 Subject: [PATCH] Updated integrated VT to version 5.12 This commit was SVN r25483. --- ompi/contrib/vt/vt/ChangeLog | 57 +- ompi/contrib/vt/vt/VERSION | 2 +- ompi/contrib/vt/vt/acinclude.m4 | 3 +- ompi/contrib/vt/vt/config/defaults/bgp | 2 +- .../vt/vt/config/m4/acinclude.compwrap.m4 | 108 +- .../contrib/vt/vt/config/m4/acinclude.cuda.m4 | 159 ++ .../vt/vt/config/m4/acinclude.cudawrap.m4 | 262 +- .../vt/vt/config/m4/acinclude.cupti.m4 | 29 +- .../vt/vt/config/m4/acinclude.libwrap.m4 | 2 +- ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 | 184 +- .../vt/vt/config/m4/acinclude.rusage.m4 | 10 +- .../vt/vt/config/m4/acinclude.tauinst.m4 | 12 +- .../vt/vt/config/m4/acinclude.timer.m4 | 2 +- .../vt/vt/config/m4/acinclude.vtrun.m4 | 15 +- .../vt/vt/config/m4/acinclude.vtsetup.m4 | 1 - .../vt/vt/config/mpigen/c_dont_generate.txt | 5 + .../vt/config/mpigen/mk_fortran_wrapper.sh.in | 56 +- .../vt/vt/config/mpigen/mk_registry.sh.in | 2 - .../contrib/vt/vt/config/mpigen/mpi2_1sided.h | 1 + .../vt/vt/config/mpigen/mpi2_extcoll.h | 2 +- .../vt/vt/config/mpigen/mpi_standard.h | 2 +- ompi/contrib/vt/vt/configure.in | 63 +- ompi/contrib/vt/vt/doc/UserManual.html | 2010 +++++++++++++-- ompi/contrib/vt/vt/doc/UserManual.pdf | Bin 497395 -> 500228 bytes ompi/contrib/vt/vt/etc/vt-setup-config.xml.in | 2 +- ompi/contrib/vt/vt/extlib/otf/AUTHORS | 1 + ompi/contrib/vt/vt/extlib/otf/ChangeLog | 40 + ompi/contrib/vt/vt/extlib/otf/VERSION | 7 +- .../otf/config/m4/acinclude.swig_python.m4 | 5 +- ompi/contrib/vt/vt/extlib/otf/configure.in | 7 +- .../contrib/vt/vt/extlib/otf/docu/Makefile.am | 3 +- .../vt/extlib/otf/docu/tools/otfprofile.pdf | Bin 266146 -> 267378 bytes .../otf/docu/tools/otfprofile_clustering.pdf | Bin 0 -> 703924 bytes .../vt/vt/extlib/otf/docu/tools/otftools.pdf | Bin 105184 -> 105049 bytes .../vt/vt/extlib/otf/otfauxlib/Makefile.am | 6 +- .../extlib/otf/otfauxlib/OTFAUX_Thumbnail.c | 574 +++++ .../extlib/otf/otfauxlib/OTFAUX_Thumbnail.h | 225 ++ .../vt/vt/extlib/otf/otfauxlib/otfaux.h | 1 + .../vt/vt/extlib/otf/otflib/OTF_CopyHandler.c | 42 +- .../vt/vt/extlib/otf/otflib/OTF_CopyHandler.h | 20 +- .../otf/otflib/OTF_CopyHandler_stream.c | 40 +- .../otf/otflib/OTF_CopyHandler_stream.h | 20 +- .../vt/vt/extlib/otf/otflib/OTF_Definitions.h | 10 +- .../vt/vt/extlib/otf/otflib/OTF_Errno.c | 46 +- .../vt/vt/extlib/otf/otflib/OTF_Errno.h | 9 +- .../vt/vt/extlib/otf/otflib/OTF_File.c | 451 ++-- .../vt/vt/extlib/otf/otflib/OTF_FileManager.c | 110 +- .../vt/vt/extlib/otf/otflib/OTF_Filenames.c | 4 +- .../vt/extlib/otf/otflib/OTF_HandlerArray.c | 64 +- .../vt/extlib/otf/otflib/OTF_HandlerArray.h | 8 + .../vt/vt/extlib/otf/otflib/OTF_KeyValue.c | 297 +-- .../vt/vt/extlib/otf/otflib/OTF_Keywords.h | 4 + .../vt/extlib/otf/otflib/OTF_MasterControl.c | 77 +- .../vt/vt/extlib/otf/otflib/OTF_Parse.c | 223 +- .../vt/vt/extlib/otf/otflib/OTF_RBuffer.c | 119 +- .../vt/vt/extlib/otf/otflib/OTF_RBuffer.h | 2 +- .../vt/vt/extlib/otf/otflib/OTF_RStream.c | 68 +- .../vt/vt/extlib/otf/otflib/OTF_Reader.c | 184 +- .../vt/vt/extlib/otf/otflib/OTF_Version.h | 4 +- .../vt/vt/extlib/otf/otflib/OTF_WBuffer.c | 50 +- .../vt/vt/extlib/otf/otflib/OTF_WStream.c | 408 ++- .../vt/vt/extlib/otf/otflib/OTF_WStream.h | 29 +- .../vt/vt/extlib/otf/otflib/OTF_Writer.c | 67 +- .../vt/vt/extlib/otf/otflib/OTF_Writer.h | 32 + .../vt/vt/extlib/otf/tests/Makefile.am | 3 +- .../vt/extlib/otf/tests/thumbnail/Makefile.am | 11 + .../vt/extlib/otf/tests/thumbnail/thumbnail.c | 63 + .../vt/vt/extlib/otf/tools/Makefile.am | 8 +- .../extlib/otf/tools/otfcompress/Makefile.am | 2 +- .../vt/extlib/otf/tools/otfconfig/otfconfig.c | 90 +- .../vt/extlib/otf/tools/otfdump/Handler.cpp | 461 +++- .../vt/vt/extlib/otf/tools/otfdump/Handler.h | 22 +- .../vt/extlib/otf/tools/otfdump/otfdump.cpp | 6 + .../extlib/otf/tools/otfmerge-mpi/Makefile.am | 17 - .../extlib/otf/tools/otfmerge-mpi/handler.c | 1134 -------- .../extlib/otf/tools/otfmerge-mpi/handler.h | 270 -- .../otf/tools/otfmerge-mpi/otfmerge-mpi.c | 988 ------- .../vt/extlib/otf/tools/otfmerge/Makefile.am | 31 +- .../extlib/otf/tools/otfmerge/Makefile.common | 13 + .../vt/vt/extlib/otf/tools/otfmerge/handler.c | 1233 ++++----- .../vt/vt/extlib/otf/tools/otfmerge/handler.h | 358 +-- .../vt/vt/extlib/otf/tools/otfmerge/hash.c | 163 -- .../vt/vt/extlib/otf/tools/otfmerge/hash.h | 41 - .../extlib/otf/tools/otfmerge/mpi/Makefile.am | 16 + .../vt/extlib/otf/tools/otfmerge/otfmerge.c | 1836 +++++++------ .../otf/tools/otfmerge/otfmerge_vs08.vcproj | 386 --- .../otf/tools/otfprofile-mpi/Makefile.am | 29 - .../tools/otfprofile-mpi/otfprofile-mpi.cpp | 906 ------- .../otf/tools/otfprofile-mpi/otfprofile-mpi.h | 30 - .../otf/tools/otfprofile-mpi/reduce_data.cpp | 649 ----- .../tools/otfprofile-mpi/summarize_data.cpp | 319 --- .../extlib/otf/tools/otfprofile/CSVParse.cpp | 768 ------ .../vt/extlib/otf/tools/otfprofile/CSVParse.h | 66 - .../otf/tools/otfprofile/DataStructure.cpp | 1694 ------------ .../otf/tools/otfprofile/DataStructure.h | 875 ------- .../extlib/otf/tools/otfprofile/Definitions.h | 64 - .../extlib/otf/tools/otfprofile/Handler.cpp | 457 ---- .../vt/extlib/otf/tools/otfprofile/Handler.h | 80 - .../extlib/otf/tools/otfprofile/Makefile.am | 34 +- .../otf/tools/otfprofile/Makefile.common | 27 + .../extlib/otf/tools/otfprofile/Prodtex.cpp | 2273 ----------------- .../vt/extlib/otf/tools/otfprofile/Prodtex.h | 46 - .../extlib/otf/tools/otfprofile/Summary.cpp | 275 -- .../vt/extlib/otf/tools/otfprofile/Summary.h | 196 -- .../otf/tools/otfprofile/clustering.cpp | 187 ++ .../extlib/otf/tools/otfprofile/clustering.h | 17 + .../collect_data.cpp | 322 ++- .../collect_data.h | 0 .../extlib/otf/tools/otfprofile/comparison.h | 25 + .../tools/otfprofile/comparison_clinkage.cpp | 702 +++++ .../tools/otfprofile/comparison_kmeans.cpp | 741 ++++++ .../otf/tools/otfprofile/create_csv.cpp | 450 ++++ .../extlib/otf/tools/otfprofile/create_csv.h | 17 + .../create_latex.cpp | 358 ++- .../create_latex.h | 2 +- .../datastructs.h | 305 ++- .../otf/tools/otfprofile/mpi/Makefile.am | 19 + .../otf/tools/otfprofile/otfprofile.cpp | 1933 +++++++++----- .../extlib/otf/tools/otfprofile/otfprofile.h | 51 + .../otf/tools/otfprofile/reduce_data.cpp | 760 ++++++ .../reduce_data.h | 0 .../otf/tools/otfprofile/summarize_data.cpp | 379 +++ .../summarize_data.h | 0 .../vt/extlib/otf/tools/otfshrink/Handler.cpp | 170 +- .../vt/extlib/otf/tools/otfshrink/Handler.h | 45 +- .../vt/extlib/otf/tools/otfshrink/Makefile.am | 1 + .../extlib/otf/tools/otfshrink/otfshrink.cpp | 632 +++-- .../vt/extlib/otf/tools/otfshrink/otfshrink.h | 15 + ompi/contrib/vt/vt/include/vt_user.h | 2 + ompi/contrib/vt/vt/rfg/rfg_filter.c | 14 +- ompi/contrib/vt/vt/rfg/rfg_groups.c | 61 +- ompi/contrib/vt/vt/tools/vtdyn/Makefile.am | 2 +- ompi/contrib/vt/vt/tools/vtdyn/vt_dyn.cc | 360 ++- ompi/contrib/vt/vt/tools/vtdyn/vt_dyn.h | 42 +- ompi/contrib/vt/vt/tools/vtfilter/Makefile.am | 6 + .../vt/vt/tools/vtfilter/mpi/Makefile.am | 6 + .../contrib/vt/vt/tools/vtfilter/vt_filter.cc | 231 +- ompi/contrib/vt/vt/tools/vtfilter/vt_filter.h | 9 +- ompi/contrib/vt/vt/tools/vtrun/vtrun.in | 57 +- ompi/contrib/vt/vt/tools/vtsetup/ChangeLog | 5 + ompi/contrib/vt/vt/tools/vtsetup/Makefile.am | 2 +- .../contrib/vt/vt/tools/vtsetup/doc/ChangeLog | 5 + .../vtsetup/src/vtsetup-1.0.1.src.tar.gz | Bin 0 -> 185757 bytes .../tools/vtsetup/src/vtsetup-1.0.src.tar.gz | Bin 189768 -> 0 bytes .../vt/vt/tools/vtsetup/vtsetup-data.xml.in | 63 +- ompi/contrib/vt/vt/tools/vtsetup/vtsetup.jar | Bin 257392 -> 567991 bytes .../vt/vt/tools/vtunify/Makefile.common | 67 +- .../vtunify/hooks/vt_unify_hooks_aevents.cc | 58 +- .../vtunify/hooks/vt_unify_hooks_aevents.h | 93 +- .../vtunify/hooks/vt_unify_hooks_base.cc | 10 + .../tools/vtunify/hooks/vt_unify_hooks_base.h | 6 + .../vtunify/hooks/vt_unify_hooks_margins.cc | 161 ++ .../vtunify/hooks/vt_unify_hooks_margins.h | 173 ++ .../vtunify/hooks/vt_unify_hooks_msgmatch.cc | 8 +- .../vtunify/hooks/vt_unify_hooks_msgmatch.h | 4 +- .../tools/vtunify/hooks/vt_unify_hooks_raw.cc | 6 + .../tools/vtunify/hooks/vt_unify_hooks_raw.h | 6 + .../tools/vtunify/hooks/vt_unify_hooks_tdb.cc | 4 +- ompi/contrib/vt/vt/tools/vtunify/vt_unify.cc | 146 +- ompi/contrib/vt/vt/tools/vtunify/vt_unify.h | 10 +- .../vt/vt/tools/vtunify/vt_unify_defs.cc | 1594 ++++++------ .../vt/vt/tools/vtunify/vt_unify_defs.h | 693 ++--- .../vt/vt/tools/vtunify/vt_unify_defs_recs.cc | 520 ++-- .../vt/vt/tools/vtunify/vt_unify_defs_recs.h | 161 +- .../vt/tools/vtunify/vt_unify_events_stats.cc | 164 +- .../vt/tools/vtunify/vt_unify_events_stats.h | 8 +- .../vt/vt/tools/vtunify/vt_unify_handlers.cc | 370 +-- .../vt/vt/tools/vtunify/vt_unify_handlers.h | 119 +- .../vt/vt/tools/vtunify/vt_unify_hooks.cc | 17 + .../vt/vt/tools/vtunify/vt_unify_hooks.h | 26 +- .../vt/vt/tools/vtunify/vt_unify_markers.cc | 115 +- .../vt/tools/vtunify/vt_unify_tkfac_scope.h | 5 +- .../vt/tools/vtunify/vt_unify_tkfac_scope.hh | 16 +- .../vt/vt/tools/vtwrapper/vt_wrapper.cc | 495 ++-- .../tools/vtwrapper/vtc++-wrapper-data.txt.in | 6 +- .../tools/vtwrapper/vtcc-wrapper-data.txt.in | 6 +- .../tools/vtwrapper/vtf77-wrapper-data.txt.in | 6 +- .../tools/vtwrapper/vtf90-wrapper-data.txt.in | 6 +- .../vtwrapper/vtnvcc-wrapper-data.txt.in | 2 + ompi/contrib/vt/vt/vtlib/Makefile.am | 30 +- ompi/contrib/vt/vt/vtlib/vt_cudacupti.h | 124 - ompi/contrib/vt/vt/vtlib/vt_cudart.c | 671 ++--- ompi/contrib/vt/vt/vtlib/vt_cudartwrap.c | 120 +- ompi/contrib/vt/vt/vtlib/vt_cupti.h | 30 + ompi/contrib/vt/vt/vtlib/vt_cupti_callback.c | 1673 ++++++++++++ ompi/contrib/vt/vt/vtlib/vt_cupti_callback.h | 26 + .../{vt_cudacupti.c => vt_cupti_events.c} | 722 ++++-- ompi/contrib/vt/vt/vtlib/vt_cupti_events.h | 113 +- ompi/contrib/vt/vt/vtlib/vt_defs.h | 33 +- ompi/contrib/vt/vt/vtlib/vt_dyninst.c | 149 +- ompi/contrib/vt/vt/vtlib/vt_env.c | 227 +- ompi/contrib/vt/vt/vtlib/vt_env.h | 10 +- ompi/contrib/vt/vt/vtlib/vt_getcpu.c | 4 +- ompi/contrib/vt/vt/vtlib/vt_gpu.c | 61 +- ompi/contrib/vt/vt/vtlib/vt_gpu.h | 58 +- ompi/contrib/vt/vt/vtlib/vt_memhook.c | 4 +- ompi/contrib/vt/vt/vtlib/vt_metric_papi.c | 24 +- ompi/contrib/vt/vt/vtlib/vt_mpicom.c | 454 ++-- ompi/contrib/vt/vt/vtlib/vt_mpicom.h | 6 +- ompi/contrib/vt/vt/vtlib/vt_mpiwrap.c | 297 ++- ompi/contrib/vt/vt/vtlib/vt_otf_gen.c | 1417 +++++----- ompi/contrib/vt/vt/vtlib/vt_otf_gen.h | 33 +- ompi/contrib/vt/vt/vtlib/vt_pform_altix.c | 6 +- ompi/contrib/vt/vt/vtlib/vt_pform_bgl.c | 2 +- ompi/contrib/vt/vt/vtlib/vt_pform_bgp.c | 4 +- ompi/contrib/vt/vt/vtlib/vt_pform_crayt3e.c | 2 +- ompi/contrib/vt/vt/vtlib/vt_pform_crayx1.c | 6 +- ompi/contrib/vt/vt/vtlib/vt_pform_crayxe.c | 12 +- ompi/contrib/vt/vt/vtlib/vt_pform_crayxt.c | 14 +- ompi/contrib/vt/vt/vtlib/vt_pform_generic.c | 6 +- ompi/contrib/vt/vt/vtlib/vt_pform_ibm.c | 6 +- ompi/contrib/vt/vt/vtlib/vt_pform_linux.c | 17 +- ompi/contrib/vt/vt/vtlib/vt_pform_macos.c | 6 +- ompi/contrib/vt/vt/vtlib/vt_pform_necsx.c | 2 +- ompi/contrib/vt/vt/vtlib/vt_pform_origin.c | 6 +- ompi/contrib/vt/vt/vtlib/vt_pform_sicortex.c | 6 +- ompi/contrib/vt/vt/vtlib/vt_pform_sun.c | 4 +- ompi/contrib/vt/vt/vtlib/vt_plugin_cntr.c | 106 +- ompi/contrib/vt/vt/vtlib/vt_plugin_cntr_int.h | 3 +- ompi/contrib/vt/vt/vtlib/vt_pomp.c | 8 + ompi/contrib/vt/vt/vtlib/vt_rusage.c | 19 +- ompi/contrib/vt/vt/vtlib/vt_thrd.c | 123 +- ompi/contrib/vt/vt/vtlib/vt_thrd.h | 214 +- ompi/contrib/vt/vt/vtlib/vt_thrd_java.c | 15 +- ompi/contrib/vt/vt/vtlib/vt_thrd_omp.c | 11 +- ompi/contrib/vt/vt/vtlib/vt_thrd_pthread.c | 16 +- ompi/contrib/vt/vt/vtlib/vt_trc.c | 326 ++- ompi/contrib/vt/vt/vtlib/vt_trc.h | 215 +- ompi/contrib/vt/vt/vtlib/vt_user_count.c | 2 +- 229 files changed, 21463 insertions(+), 21245 deletions(-) create mode 100644 ompi/contrib/vt/vt/config/m4/acinclude.cuda.m4 create mode 100644 ompi/contrib/vt/vt/extlib/otf/docu/tools/otfprofile_clustering.pdf create mode 100644 ompi/contrib/vt/vt/extlib/otf/otfauxlib/OTFAUX_Thumbnail.c create mode 100644 ompi/contrib/vt/vt/extlib/otf/otfauxlib/OTFAUX_Thumbnail.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tests/thumbnail/Makefile.am create mode 100644 ompi/contrib/vt/vt/extlib/otf/tests/thumbnail/thumbnail.c delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfmerge-mpi/Makefile.am delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfmerge-mpi/handler.c delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfmerge-mpi/handler.h delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfmerge-mpi/otfmerge-mpi.c create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfmerge/Makefile.common delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfmerge/hash.c delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfmerge/hash.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfmerge/mpi/Makefile.am delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfmerge/otfmerge_vs08.vcproj delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile-mpi/Makefile.am delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile-mpi/otfprofile-mpi.cpp delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile-mpi/otfprofile-mpi.h delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile-mpi/reduce_data.cpp delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile-mpi/summarize_data.cpp delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/CSVParse.cpp delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/CSVParse.h delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/DataStructure.cpp delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/DataStructure.h delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/Definitions.h delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/Handler.cpp delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/Handler.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/Makefile.common delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/Prodtex.cpp delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/Prodtex.h delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/Summary.cpp delete mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/Summary.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/clustering.cpp create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/clustering.h rename ompi/contrib/vt/vt/extlib/otf/tools/{otfprofile-mpi => otfprofile}/collect_data.cpp (76%) rename ompi/contrib/vt/vt/extlib/otf/tools/{otfprofile-mpi => otfprofile}/collect_data.h (100%) create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/comparison.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/comparison_clinkage.cpp create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/comparison_kmeans.cpp create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/create_csv.cpp create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/create_csv.h rename ompi/contrib/vt/vt/extlib/otf/tools/{otfprofile-mpi => otfprofile}/create_latex.cpp (87%) rename ompi/contrib/vt/vt/extlib/otf/tools/{otfprofile-mpi => otfprofile}/create_latex.h (91%) rename ompi/contrib/vt/vt/extlib/otf/tools/{otfprofile-mpi => otfprofile}/datastructs.h (63%) create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/mpi/Makefile.am create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/otfprofile.h create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/reduce_data.cpp rename ompi/contrib/vt/vt/extlib/otf/tools/{otfprofile-mpi => otfprofile}/reduce_data.h (100%) create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfprofile/summarize_data.cpp rename ompi/contrib/vt/vt/extlib/otf/tools/{otfprofile-mpi => otfprofile}/summarize_data.h (100%) create mode 100644 ompi/contrib/vt/vt/extlib/otf/tools/otfshrink/otfshrink.h create mode 100644 ompi/contrib/vt/vt/tools/vtsetup/src/vtsetup-1.0.1.src.tar.gz delete mode 100644 ompi/contrib/vt/vt/tools/vtsetup/src/vtsetup-1.0.src.tar.gz create mode 100644 ompi/contrib/vt/vt/tools/vtunify/hooks/vt_unify_hooks_margins.cc create mode 100644 ompi/contrib/vt/vt/tools/vtunify/hooks/vt_unify_hooks_margins.h delete mode 100644 ompi/contrib/vt/vt/vtlib/vt_cudacupti.h create mode 100644 ompi/contrib/vt/vt/vtlib/vt_cupti.h create mode 100644 ompi/contrib/vt/vt/vtlib/vt_cupti_callback.c create mode 100644 ompi/contrib/vt/vt/vtlib/vt_cupti_callback.h rename ompi/contrib/vt/vt/vtlib/{vt_cudacupti.c => vt_cupti_events.c} (52%) diff --git a/ompi/contrib/vt/vt/ChangeLog b/ompi/contrib/vt/vt/ChangeLog index 4ec451992f..3da8bbaca1 100644 --- a/ompi/contrib/vt/vt/ChangeLog +++ b/ompi/contrib/vt/vt/ChangeLog @@ -1,7 +1,62 @@ -5.11.2openmpi +5.12openmpi + - updated version of internal OTF to 1.10openmpi + (see extlib/otf/ChangeLog) + - added support for CUDA runtime tracing via CUPTI callbacks + - added support for process group counters + - extended internal API to: + - create process groups + - assign attributes to process groups + (e.g. is communicator, has counters) + - improved MPI group/communicator handling: + - merge groups which have the same members to one group + - name groups to "MPI Group X" + - added writing of process begin/end records + - added environment variable VT_ONOFF_CHECK_STACK_BALANCE to + enable/disable check for stack level balance when switching tracing + on/off by using the user API + - added configure option '--[enable|disable]-fortran' to control + building of Fortran support + - install a symbolic link 'vtfiltergen[-mpi]' which is a synonym for + 'vtfilter[-mpi] --gen' + - disabled unnecessary time synchronization on NEC SX platforms + - removed limitation of maximum defined MPI handles (groups, comms., + and windows) in a MPI program + - fixed incorrect handling of MPI_IN_PLACE + - fixed erroneous handling of MPI_Aint within the Fortran MPI wrappers + - fixed error handling on flushing the trace buffer + - fixed potential memory corruption when flushing the trace buffer + multiple times (VT_MAX_FLUSHES != 1) + - fixed numbering in thread names + - vtdyn: + - detach from application process before continuing its + execution (allows signal trapping (e.g. Ctrl+C) within the + application) + - fixed selection of functions to be instrumented + - save floating point registers before calling instrumentation + to ensure correct program behavior + - compiler wrappers: + - added options '-vt:preprocess', '-vt:cpp', and '-vt:cppflags' + to preprocess source files before parsing by OPARI and/or TAU + - added option '-vt:nocleanup' to keep intermediate files + - vtsetup: (see tools/vtsetup/ChangeLog:1.0.1) + +5.11.3 + - if possible, get resource usage counters for the calling thread + instead of the process + - removed MPI_Address and MPI_Get_address from MPI wrappers + - fixed incomplete tracking of MPI inter-communicators + - vtunify: fixed parsing of negative time offsets within unify + control data + +5.11.2 + - updated version of internal OTF to 1.9.2sawfish + (see extlib/otf/ChangeLog) - added options '-vt:showme-' to the compiler wrapper to show the compiler/linker flags that would be supplied to the underlying compiler + - add path to MPI library when linking with the compiler wrappers + - do not build vtrun script on BlueGene; shell scripts doesn't work on + the back-end - fixed segmentation fault in vtunify-mpi which might occur during gathering local marker definitions/spots to master process diff --git a/ompi/contrib/vt/vt/VERSION b/ompi/contrib/vt/vt/VERSION index d36af0ab8d..37183008ef 100644 --- a/ompi/contrib/vt/vt/VERSION +++ b/ompi/contrib/vt/vt/VERSION @@ -1 +1 @@ -5.11.2openmpi +5.12openmpi diff --git a/ompi/contrib/vt/vt/acinclude.m4 b/ompi/contrib/vt/vt/acinclude.m4 index 9b926b7717..76ac3aa52e 100644 --- a/ompi/contrib/vt/vt/acinclude.m4 +++ b/ompi/contrib/vt/vt/acinclude.m4 @@ -6,8 +6,9 @@ m4_include(config/m4/acinclude.cpc.m4) m4_include(config/m4/acinclude.cross.m4) m4_include(config/m4/acinclude.csfs.m4) m4_include(config/m4/acinclude.ctool.m4) -m4_include(config/m4/acinclude.cudawrap.m4) +m4_include(config/m4/acinclude.cuda.m4) m4_include(config/m4/acinclude.cupti.m4) +m4_include(config/m4/acinclude.cudawrap.m4) m4_include(config/m4/acinclude.cxxrtlib.m4) m4_include(config/m4/acinclude.dl.m4) m4_include(config/m4/acinclude.dyninst.m4) diff --git a/ompi/contrib/vt/vt/config/defaults/bgp b/ompi/contrib/vt/vt/config/defaults/bgp index 1ee03af0f6..e733f12f95 100644 --- a/ompi/contrib/vt/vt/config/defaults/bgp +++ b/ompi/contrib/vt/vt/config/defaults/bgp @@ -14,4 +14,4 @@ enable_shared="no" enable_cpuidtrace="no" with_cross_prefix="bg" with_mpibgp="yes" -with_cxxrtlib="-L/opt/ibmcmp/lib/bg/bglib -libmc++ -lstdc++" +with_cxxrtlib="-L/opt/ibmcmp/lib/bg/bglib -L/opt/ibmcmp/lib/bg/9.0/bglib -libmc++ -lstdc++" diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.compwrap.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.compwrap.m4 index 3d8fcf6eda..66ea919835 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.compwrap.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.compwrap.m4 @@ -4,6 +4,8 @@ AC_DEFUN([ACVT_COMPWRAP], VT_WRAPPER_CC_EXTRA_COMPILER_FLAGS= VT_WRAPPER_CC_EXTRA_LINKER_FLAGS= VT_WRAPPER_CC_EXTRA_LIBS= + VT_WRAPPER_CC_CPP=$CPP + VT_WRAPPER_CC_EXTRA_CPPFLAGS= VT_WRAPPER_CC_DYNINST_COMPILER_FLAGS= VT_WRAPPER_CC_TAUINST_OPTS= VT_WRAPPER_CC_TAUINST_PARSE_BIN= @@ -15,6 +17,8 @@ AC_DEFUN([ACVT_COMPWRAP], VT_WRAPPER_CXX_EXTRA_COMPILER_FLAGS= VT_WRAPPER_CXX_EXTRA_LINKER_FLAGS= VT_WRAPPER_CXX_EXTRA_LIBS= + VT_WRAPPER_CXX_CPP=$CXXCPP + VT_WRAPPER_CXX_EXTRA_CPPFLAGS= VT_WRAPPER_CXX_DYNINST_COMPILER_FLAGS= VT_WRAPPER_CXX_TAUINST_OPTS= VT_WRAPPER_CXX_TAUINST_PARSE_BIN= @@ -26,6 +30,8 @@ AC_DEFUN([ACVT_COMPWRAP], 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= @@ -37,6 +43,8 @@ AC_DEFUN([ACVT_COMPWRAP], VT_WRAPPER_FC_EXTRA_COMPILER_FLAGS= VT_WRAPPER_FC_EXTRA_LINKER_FLAGS= VT_WRAPPER_FC_EXTRA_LIBS= + VT_WRAPPER_FC_CPP=$CPP + VT_WRAPPER_FC_EXTRA_CPPFLAGS= VT_WRAPPER_FC_DYNINST_COMPILER_FLAGS= VT_WRAPPER_FC_TAUINST_OPTS= VT_WRAPPER_FC_TAUINST_PARSE_BIN= @@ -48,6 +56,9 @@ AC_DEFUN([ACVT_COMPWRAP], VT_WRAPPER_NVCC_EXTRA_COMPILER_FLAGS= VT_WRAPPER_NVCC_EXTRA_LINKER_FLAGS= VT_WRAPPER_NVCC_EXTRA_LIBS= + VT_WRAPPER_NVCC_CPP=$CPP + VT_WRAPPER_NVCC_EXTRA_CPPFLAGS= + VT_WRAPPER_NVCC_DYNINST_COMPILER_FLAGS= VT_WRAPPER_NVCC_TAUINST_OPTS= VT_WRAPPER_NVCC_TAUINST_PARSE_BIN= @@ -92,6 +103,17 @@ AC_DEFUN([ACVT_COMPWRAP], [extra libraries to link when using vtcc]), [VT_WRAPPER_CC_EXTRA_LIBS=$withval]) + AC_ARG_WITH(wrapper-cc-cpp, + AC_HELP_STRING([--with-wrapper-cc-cpp=WRAPPERCCCPP], + [C preprocessor command for vtcc, default: CPP]), + [VT_WRAPPER_CC_CPP=$withval]) + + AC_ARG_WITH(wrapper-cc-cppflags, + AC_HELP_STRING([--with-wrapper-cc-cppflags=WRAPPERCCCPPFLAGS], + [extra preprocessor flags to add when using vtcc -vt:preprocess]), + [VT_WRAPPER_CC_EXTRA_CPPFLAGS=$withval]) + + AC_ARG_WITH(wrapper-cc-default-partype, AC_HELP_STRING([--with-wrapper-cc-default-partype=TYPE], [default parallelization type for vtcc (seq,mt,mpi,hyb), default: $VT_WRAPPER_CC_DEFAULT_PARTYPE]), @@ -126,6 +148,16 @@ AC_DEFUN([ACVT_COMPWRAP], [extra libraries to link when using vtcxx]), [VT_WRAPPER_CXX_EXTRA_LIBS=$withval]) + AC_ARG_WITH(wrapper-cxx-cpp, + AC_HELP_STRING([--with-wrapper-cxx-cpp=WRAPPERCXXCPP], + [C++ preprocessor command for vtcxx, default: CXXCPP]), + [VT_WRAPPER_CXX_CPP=$withval]) + + AC_ARG_WITH(wrapper-cxx-cppflags, + AC_HELP_STRING([--with-wrapper-cxx-cppflags=WRAPPERCXXCPPFLAGS], + [extra preprocessor flags to add when using vtcxx -vt:preprocess]), + [VT_WRAPPER_CXX_EXTRA_CPPFLAGS=$withval]) + AC_ARG_WITH(wrapper-cxx-default-partype, AC_HELP_STRING([--with-wrapper-cxx-default-partype=TYPE], [default parallelization type for vtcxx (seq,mt,mpi,hyb), default: $VT_WRAPPER_CXX_DEFAULT_PARTYPE]), @@ -160,6 +192,16 @@ AC_DEFUN([ACVT_COMPWRAP], [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]), @@ -194,6 +236,16 @@ AC_DEFUN([ACVT_COMPWRAP], [extra libraries to link when using vtf90]), [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]), + [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]), + [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]), @@ -228,6 +280,16 @@ AC_DEFUN([ACVT_COMPWRAP], [extra libraries to link when using vtnvcc]), [VT_WRAPPER_NVCC_EXTRA_LIBS=$withval]) + AC_ARG_WITH(wrapper-nvcc-cpp, + AC_HELP_STRING([--with-wrapper-nvcc-cpp=WRAPPERNVCCCPP], + [C preprocessor command for vtnvcc, default: CPP]), + [VT_WRAPPER_NVCC_CPP=$withval]) + + AC_ARG_WITH(wrapper-nvcc-cppflags, + AC_HELP_STRING([--with-wrapper-nvcc-cppflags=WRAPPERNVCCCPPFLAGS], + [extra preprocessor flags to add when using vtnvcc -vt:preprocess]), + [VT_WRAPPER_NVCC_EXTRA_CPPFLAGS=$withval]) + AC_ARG_WITH(wrapper-nvcc-default-partype, AC_HELP_STRING([--with-wrapper-nvcc-default-partype=TYPE], [default parallelization type for vtnvcc (seq,mt,mpi,hyb), default: $VT_WRAPPER_NVCC_DEFAULT_PARTYPE]), @@ -297,34 +359,40 @@ AC_DEFUN([ACVT_COMPWRAP], VT_WRAPPER_AVAIL_INST="$VT_WRAPPER_AVAIL_INST dyninst" ]) - AS_IF([test x"$have_tauinst" = "xyes"], - [ - pdt_mpiincdir= - pdt_fmpiincdir= + mpiincdir= + fmpiincdir= - AS_IF([test x"$have_mpi" = "xyes"], + AS_IF([test x"$have_mpi" = "xyes"], + [ + AS_IF([test x"$inside_openmpi" = "xyes"], + [mpiincdir="-I\${includedir}/.."], + [mpiincdir="$MPIINCDIR"]) + AS_IF([test x"$have_fmpi" = "xyes"], [ AS_IF([test x"$inside_openmpi" = "xyes"], - [pdt_mpiincdir="-I\${includedir}/.."], - [pdt_mpiincdir="$MPIINCDIR"]) - AS_IF([test x"$have_fmpi" = "xyes"], - [ - AS_IF([test x"$inside_openmpi" = "xyes"], - [pdt_fmpiincdir="$pdt_mpiincdir"], - [pdt_fmpiincdir="$FMPIINCDIR"]) - ]) + [fmpiincdir="$mpiincdir"], + [fmpiincdir="$FMPIINCDIR"]) ]) + ]) + 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" + + AS_IF([test x"$have_tauinst" = "xyes"], + [ VT_WRAPPER_TAUINST_BIN="$tauinst_cmd" VT_WRAPPER_CC_TAUINST_OPTS="-c -spec \${datadir}/TAUINST.SPEC" VT_WRAPPER_CC_TAUINST_PARSE_BIN="$tauinst_cparse_cmd" - VT_WRAPPER_CC_TAUINST_PARSE_OPTS="$pdt_mpiincdir" + VT_WRAPPER_CC_TAUINST_PARSE_OPTS="$mpiincdir" 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="$pdt_fmpiincdir" + 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" @@ -338,6 +406,8 @@ AC_DEFUN([ACVT_COMPWRAP], AC_SUBST(VT_WRAPPER_CC_EXTRA_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_CC_EXTRA_LINKER_FLAGS) AC_SUBST(VT_WRAPPER_CC_EXTRA_LIBS) + AC_SUBST(VT_WRAPPER_CC_CPP) + AC_SUBST(VT_WRAPPER_CC_EXTRA_CPPFLAGS) AC_SUBST(VT_WRAPPER_CC_DYNINST_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_CC_TAUINST_OPTS) AC_SUBST(VT_WRAPPER_CC_TAUINST_PARSE_BIN) @@ -349,6 +419,8 @@ AC_DEFUN([ACVT_COMPWRAP], AC_SUBST(VT_WRAPPER_CXX_EXTRA_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_CXX_EXTRA_LINKER_FLAGS) AC_SUBST(VT_WRAPPER_CXX_EXTRA_LIBS) + AC_SUBST(VT_WRAPPER_CXX_CPP) + AC_SUBST(VT_WRAPPER_CXX_EXTRA_CPPFLAGS) AC_SUBST(VT_WRAPPER_CXX_DYNINST_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_CXX_TAUINST_OPTS) AC_SUBST(VT_WRAPPER_CXX_TAUINST_PARSE_BIN) @@ -360,6 +432,8 @@ AC_DEFUN([ACVT_COMPWRAP], 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) @@ -371,6 +445,8 @@ AC_DEFUN([ACVT_COMPWRAP], AC_SUBST(VT_WRAPPER_FC_EXTRA_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_FC_EXTRA_LINKER_FLAGS) AC_SUBST(VT_WRAPPER_FC_EXTRA_LIBS) + AC_SUBST(VT_WRAPPER_FC_CPP) + AC_SUBST(VT_WRAPPER_FC_EXTRA_CPPFLAGS) AC_SUBST(VT_WRAPPER_FC_DYNINST_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_FC_TAUINST_OPTS) AC_SUBST(VT_WRAPPER_FC_TAUINST_PARSE_BIN) @@ -382,6 +458,8 @@ AC_DEFUN([ACVT_COMPWRAP], AC_SUBST(VT_WRAPPER_NVCC_EXTRA_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_NVCC_EXTRA_LINKER_FLAGS) AC_SUBST(VT_WRAPPER_NVCC_EXTRA_LIBS) + AC_SUBST(VT_WRAPPER_NVCC_CPP) + AC_SUBST(VT_WRAPPER_NVCC_EXTRA_CPPFLAGS) AC_SUBST(VT_WRAPPER_NVCC_DYNINST_COMPILER_FLAGS) AC_SUBST(VT_WRAPPER_NVCC_TAUINST_OPTS) AC_SUBST(VT_WRAPPER_NVCC_TAUINST_PARSE_BIN) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.cuda.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.cuda.m4 new file mode 100644 index 0000000000..e5c8504ead --- /dev/null +++ b/ompi/contrib/vt/vt/config/m4/acinclude.cuda.m4 @@ -0,0 +1,159 @@ +AC_DEFUN([ACVT_CUDA], +[ + cuda_error="no" + cudart_error="no" + have_cuda="no" + have_cudart="no" + + CUDATKDIR= + CUDATKINCDIR= + CUDATKLIBDIR= + CUDALIB= + CUDARTLIB= + + AC_ARG_VAR(NVCC, [NVIDIA CUDA compiler command]) + + AC_ARG_WITH(cuda-dir, + AC_HELP_STRING([--with-cuda-dir=CUDATKDIR], + [give the path for CUDA Toolkit, default: /usr/local/cuda]), + [CUDATKDIR="$withval/"], [CUDATKDIR="/usr/local/cuda/"]) + + AC_ARG_WITH(cuda-inc-dir, + AC_HELP_STRING([--with-cuda-inc-dir=CUDATKINCDIR], + [give the path for CUDA-Toolkit-include files, default: CUDATKDIR/include]), + [CUDATKINCDIR="-I$withval/"], + [AS_IF([test x"$CUDATKDIR" != x], [CUDATKINCDIR="-I$CUDATKDIR"include/])]) + + AC_ARG_WITH(cuda-lib-dir, + AC_HELP_STRING([--with-cuda-lib-dir=CUDATKLIBDIR], + [give the path for CUDA-Toolkit-libraries, default: CUDATKDIR/lib64]), + [CUDATKLIBDIR="-L$withval/"], + [AS_IF([test x"$CUDATKDIR" != x], [CUDATKLIBDIR="-L$CUDATKDIR"lib64/])]) + + AC_ARG_WITH(cuda-lib, + AC_HELP_STRING([--with-cuda-lib=CUDALIB], [use given CUDA driver library, default: -lcuda]), + [CUDALIB="$withval"]) + + AC_ARG_WITH(cudart-lib, + AC_HELP_STRING([--with-cudart-lib=CUDARTLIB], [use given CUDA runtime library, default: -lcudart]), + [CUDARTLIB="$withval"]) + + AS_IF([test x"$cuda_error" = "xno"], + [ + sav_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" + AC_CHECK_HEADER([cuda.h], [], + [ + AC_MSG_NOTICE([error: no cuda.h found; check path for CUDA Toolkit first...]) + cuda_error="yes" + ]) + CPPFLAGS=$sav_CPPFLAGS + ]) + + AS_IF([test x"$CUDALIB" = x -a x"$cuda_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $CUDATKLIBDIR -lcuda" + AC_MSG_CHECKING([whether linking with -lcuda works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); CUDALIB=-lcuda],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$CUDALIB" = x -a x"$cuda_error" = "xno"], + [ + AC_MSG_NOTICE([error: no libcuda found; check path for CUDA Toolkit first...]) + cuda_error="yes" + ]) + + AS_IF([test x"$cuda_error" = "xno"], + [ + AC_MSG_CHECKING([whether CUDA driver version >= 3.0]) + + sav_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" + AC_TRY_COMPILE([#include "cuda.h"], + [ +#ifndef CUDA_VERSION +# error "CUDA_VERSION not defined" +#elif CUDA_VERSION < 3000 +# error "CUDA_VERSION < 3000" +#endif + ], + [AC_MSG_RESULT([yes])], + [ + AC_MSG_RESULT([no]) + AC_MSG_NOTICE([error: CUDA driver version could not be determined and/or is incompatible (< 3.0) + See \`config.log' for more details.]) + cuda_error="yes" + ]) + CPPFLAGS=$sav_CPPFLAGS + ]) + + AS_IF([test x"$cudart_error" = "xno"], + [ + sav_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" + AC_CHECK_HEADER([cuda_runtime_api.h], [], + [ + AC_MSG_NOTICE([error: no cuda_runtime_api.h found; check path for CUDA Toolkit first...]) + cudart_error="yes" + ]) + CPPFLAGS=$sav_CPPFLAGS + ]) + + AS_IF([test x"$CUDARTLIB" = x -a x"$cudart_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $CUDATKLIBDIR -lcudart" + AC_MSG_CHECKING([whether linking with -lcudart works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); CUDARTLIB=-lcudart],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$CUDARTLIB" = x -a x"$cudart_error" = "xno"], + [ + AC_MSG_NOTICE([error: no libcudart found; check path for CUDA Toolkit first...]) + cudart_error="yes" + ]) + + AS_IF([test x"$cudart_error" = "xno"], + [ + AC_MSG_CHECKING([whether CUDA runtime version >= 3.0]) + + sav_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" + AC_TRY_COMPILE([#include "cuda_runtime_api.h"], + [ +#ifndef CUDART_VERSION +# error "CUDART_VERSION not defined" +#elif CUDART_VERSION < 3000 +# error "CUDART_VERSION < 3000" +#endif + ], + [AC_MSG_RESULT([yes])], + [ + AC_MSG_RESULT([no]) + AC_MSG_NOTICE([error: CUDA runtime version could not be determined and/or is incompatible (< 3.0) +See \`config.log' for more details.]) + cudart_error="yes" + ]) + CPPFLAGS=$sav_CPPFLAGS + ]) + + AS_IF([test x"$cudart_error" = "xno"], + [ + AC_CHECK_PROG(NVCC, nvcc, nvcc, , [$PATH$PATH_SEPARATOR$CUDATKDIR"bin/"]) + have_cudart="yes" + ]) + + AS_IF([test x"$cuda_error" = "xno"], + [ + have_cuda="yes" + ]) + + AC_SUBST(CUDATKINCDIR) + AC_SUBST(CUDATKLIBDIR) + AC_SUBST(CUDATKLIB) +]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.cudawrap.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.cudawrap.m4 index 24f0004816..ce023c4dba 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.cudawrap.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.cudawrap.m4 @@ -1,209 +1,25 @@ AC_DEFUN([ACVT_CUDAWRAP], [ - cudawrap_error="no" - cudartwrap_error="no" have_cudawrap="no" have_cudartwrap="no" - CUDATKDIR= - CUDATKINCDIR= - CUDATKLIBDIR= - CUDALIB= - CUDARTLIB= - cudalib_pathname= cudartlib_pathname= - AC_ARG_VAR(NVCC, [NVIDIA CUDA compiler command]) + AC_REQUIRE([ACVT_CUDA]) - AC_ARG_WITH(cuda-dir, - AC_HELP_STRING([--with-cuda-dir=CUDATKDIR], - [give the path for CUDA Toolkit, default: /usr/local/cuda]), - [CUDATKDIR="$withval/"], [CUDATKDIR="/usr/local/cuda/"]) - - AC_ARG_WITH(cuda-inc-dir, - AC_HELP_STRING([--with-cuda-inc-dir=CUDATKINCDIR], - [give the path for CUDA-Toolkit-include files, default: CUDATKDIR/include]), - [CUDATKINCDIR="-I$withval/"], - [AS_IF([test x"$CUDATKDIR" != x], [CUDATKINCDIR="-I$CUDATKDIR"include/])]) - - AC_ARG_WITH(cuda-lib-dir, - AC_HELP_STRING([--with-cuda-lib-dir=CUDATKLIBDIR], - [give the path for CUDA-Toolkit-libraries, default: CUDATKDIR/lib64]), - [CUDATKLIBDIR="-L$withval/"], - [AS_IF([test x"$CUDATKDIR" != x], [CUDATKLIBDIR="-L$CUDATKDIR"lib64/])]) - - AC_ARG_WITH(cuda-lib, - AC_HELP_STRING([--with-cuda-lib=CUDALIB], [use given CUDA driver library, default: -lcuda]), - [CUDALIB="$withval"]) - - AC_ARG_WITH(cudart-lib, - AC_HELP_STRING([--with-cudart-lib=CUDARTLIB], [use given CUDA runtime library, default: -lcudart]), - [CUDARTLIB="$withval"]) - - AC_ARG_WITH(cuda-shlib, - AC_HELP_STRING([--with-cuda-shlib=CUDASHLIB], [give the pathname for the shared CUDA driver library, default: automatically by configure]), + AS_IF([test x"$cudart_error" = "xno"], [ - AS_IF([test x"$withval" = "xyes" -o x"$withval" = "xno"], - [AC_MSG_ERROR([value of '--with-cuda-shlib' not properly set])]) - cudalib_pathname=$withval - ]) - - AC_ARG_WITH(cudart-shlib, - AC_HELP_STRING([--with-cudart-shlib=CUDARTSHLIB], [give the pathname for the shared CUDA runtime library, default: automatically by configure]), - [ - AS_IF([test x"$withval" = "xyes" -o x"$withval" = "xno"], - [AC_MSG_ERROR([value of '--with-cudart-shlib' not properly set])]) - cudartlib_pathname=$withval - ]) - - AS_IF([test x"$cudawrap_error" = "xno"], - [ - sav_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" - AC_CHECK_HEADER([cuda.h], [], + AC_ARG_WITH(cudart-shlib, + AC_HELP_STRING([--with-cudart-shlib=CUDARTSHLIB], [give the pathname for the shared CUDA runtime library, default: automatically by configure]), [ - AC_MSG_NOTICE([error: no cuda.h found; check path for CUDA Toolkit first...]) - cudawrap_error="yes" - ]) - CPPFLAGS=$sav_CPPFLAGS - ]) - - AS_IF([test x"$CUDALIB" = x -a x"$cudawrap_error" = "xno"], - [ - sav_LIBS=$LIBS - LIBS="$LIBS $CUDATKLIBDIR -lcuda" - AC_MSG_CHECKING([whether linking with -lcuda works]) - AC_TRY_LINK([],[], - [AC_MSG_RESULT([yes]); CUDALIB=-lcuda],[AC_MSG_RESULT([no])]) - LIBS=$sav_LIBS - ]) - - AS_IF([test x"$CUDALIB" = x -a x"$cudawrap_error" = "xno"], - [ - AC_MSG_NOTICE([error: no libcuda found; check path for CUDA Toolkit first...]) - cudawrap_error="yes" - ]) - - AS_IF([test x"$cudawrap_error" = "xno"], - [ - AC_MSG_CHECKING([whether CUDA driver version >= 3.0]) - - sav_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" - AC_TRY_COMPILE([#include "cuda.h"], - [ -#ifndef CUDA_VERSION -# error "CUDA_VERSION not defined" -#elif CUDA_VERSION < 3000 -# error "CUDA_VERSION < 3000" -#endif - ], - [AC_MSG_RESULT([yes])], - [ - AC_MSG_RESULT([no]) - AC_MSG_NOTICE([error: CUDA driver version could not be determined and/or is incompatible (< 3.0) - See \`config.log' for more details.]) - cudawrap_error="yes" - ]) - CPPFLAGS=$sav_CPPFLAGS - ]) - - AS_IF([test x"$cudawrap_error" = "xno"], - [ - AC_MSG_CHECKING([for pathname of CUDA driver library]) - - AS_IF([test x"$cudalib_pathname" != x], - [ - AC_MSG_RESULT([skipped (--with-cuda-shlib=$cudalib_pathname)]) - ], - [ - AS_IF([test x"$have_rtld_next" = "xyes"], - [ - AC_MSG_RESULT([not needed]) - ], - [ - AS_IF([test x"$CUDATKLIBDIR" != x], - [cudalib_dir=`echo $CUDATKLIBDIR | sed s/\-L//`]) - cudalib_pathname=$cudalib_dir`echo $CUDALIB | sed s/\-l/lib/`".so" - - AS_IF([! test -f $cudalib_pathname], - [ - AC_MSG_RESULT([unknown]) - AC_MSG_NOTICE([error: could not determine pathname of CUDA driver library]) - cudawrap_error="yes" - ], - [ - AC_MSG_RESULT([$cudalib_pathname]) - ]) - ]) + AS_IF([test x"$withval" = "xyes" -o x"$withval" = "xno"], + [AC_MSG_ERROR([value of '--with-cudart-shlib' not properly set])]) + cudartlib_pathname=$withval ]) ]) - AS_IF([test x"$cudawrap_error" = "xno"], - [ - AS_IF([test x"$cudalib_pathname" != x], - [ - AC_DEFINE_UNQUOTED([DEFAULT_CUDALIB_PATHNAME], - ["$cudalib_pathname"], [pathname of CUDA driver library]) - ]) - - have_cudawrap="yes" - ]) - - AS_IF([test x"$cudartwrap_error" = "xno"], - [ - sav_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" - AC_CHECK_HEADER([cuda_runtime_api.h], [], - [ - AC_MSG_NOTICE([error: no cuda_runtime_api.h found; check path for CUDA Toolkit first...]) - cudartwrap_error="yes" - ]) - CPPFLAGS=$sav_CPPFLAGS - ]) - - AS_IF([test x"$CUDARTLIB" = x -a x"$cudartwrap_error" = "xno"], - [ - sav_LIBS=$LIBS - LIBS="$LIBS $CUDATKLIBDIR -lcudart" - AC_MSG_CHECKING([whether linking with -lcudart works]) - AC_TRY_LINK([],[], - [AC_MSG_RESULT([yes]); CUDARTLIB=-lcudart],[AC_MSG_RESULT([no])]) - LIBS=$sav_LIBS - ]) - - AS_IF([test x"$CUDARTLIB" = x -a x"$cudartwrap_error" = "xno"], - [ - AC_MSG_NOTICE([error: no libcudart found; check path for CUDA Toolkit first...]) - cudartwrap_error="yes" - ]) - - AS_IF([test x"$cudartwrap_error" = "xno"], - [ - AC_MSG_CHECKING([whether CUDA runtime version >= 3.0]) - - sav_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" - AC_TRY_COMPILE([#include "cuda_runtime_api.h"], - [ -#ifndef CUDART_VERSION -# error "CUDART_VERSION not defined" -#elif CUDART_VERSION < 3000 -# error "CUDART_VERSION < 3000" -#endif - ], - [AC_MSG_RESULT([yes])], - [ - AC_MSG_RESULT([no]) - AC_MSG_NOTICE([error: CUDA runtime version could not be determined and/or is incompatible (< 3.0) -See \`config.log' for more details.]) - cudartwrap_error="yes" - ]) - CPPFLAGS=$sav_CPPFLAGS - ]) - - AS_IF([test x"$cudartwrap_error" = "xno"], + AS_IF([test x"$cudart_error" = "xno"], [ AC_MSG_CHECKING([for pathname of CUDA runtime library]) @@ -225,7 +41,7 @@ See \`config.log' for more details.]) [ AC_MSG_RESULT([unknown]) AC_MSG_NOTICE([error: could not determine pathname of CUDA runtime library]) - cudartwrap_error="yes" + cudart_error="yes" ], [ AC_MSG_RESULT([$cudartlib_pathname]) @@ -234,25 +50,67 @@ See \`config.log' for more details.]) ]) ]) - AS_IF([test x"$cudartwrap_error" = "xno"], + AS_IF([test x"$cudart_error" = "xno"], [ - AC_CHECK_PROG(NVCC, nvcc, nvcc, , [$PATH$PATH_SEPARATOR$CUDATKDIR"bin/"]) - AS_IF([test x"$cudartlib_pathname" != x], [ AC_DEFINE_UNQUOTED([DEFAULT_CUDARTLIB_PATHNAME], ["$cudartlib_pathname"], [pathname of CUDA runtime library]) ]) - have_cudartwrap="yes" ]) - AS_IF([test x"$cudawrap_error" = "xno" -a x"$cudartwrap_error" = "xno"], + + AS_IF([test x"$cuda_error" = "xno"], [ - ACVT_CUPTI + AC_ARG_WITH(cuda-shlib, + AC_HELP_STRING([--with-cuda-shlib=CUDASHLIB], [give the pathname for the shared CUDA driver library, default: automatically by configure]), + [ + AS_IF([test x"$withval" = "xyes" -o x"$withval" = "xno"], + [AC_MSG_ERROR([value of '--with-cuda-shlib' not properly set])]) + cudalib_pathname=$withval + ]) + ]) + + AS_IF([test x"$cuda_error" = "xno"], + [ + AC_MSG_CHECKING([for pathname of CUDA driver library]) + + AS_IF([test x"$cudalib_pathname" != x], + [ + AC_MSG_RESULT([skipped (--with-cuda-shlib=$cudalib_pathname)]) + ], + [ + AS_IF([test x"$have_rtld_next" = "xyes"], + [ + AC_MSG_RESULT([not needed]) + ], + [ + AS_IF([test x"$CUDATKLIBDIR" != x], + [cudalib_dir=`echo $CUDATKLIBDIR | sed s/\-L//`]) + cudalib_pathname=$cudalib_dir`echo $CUDALIB | sed s/\-l/lib/`".so" + + AS_IF([! test -f $cudalib_pathname], + [ + AC_MSG_RESULT([unknown]) + AC_MSG_NOTICE([error: could not determine pathname of CUDA driver library]) + cuda_error="yes" + ], + [ + AC_MSG_RESULT([$cudalib_pathname]) + ]) + ]) + ]) + ]) + + AS_IF([test x"$cuda_error" = "xno"], + [ + AS_IF([test x"$cudalib_pathname" != x], + [ + AC_DEFINE_UNQUOTED([DEFAULT_CUDALIB_PATHNAME], + ["$cudalib_pathname"], [pathname of CUDA driver library]) + ]) + have_cudawrap="yes" ]) - AC_SUBST(CUDATKINCDIR) - AC_SUBST(CUDATKLIBDIR) - AC_SUBST(CUDATKLIB) ]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.cupti.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.cupti.m4 index 1aa336f721..f9819c9953 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.cupti.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.cupti.m4 @@ -8,6 +8,8 @@ AC_DEFUN([ACVT_CUPTI], CUPTILIBDIR= CUPTILIB= + AC_REQUIRE([ACVT_CUDA]) + AC_ARG_WITH(cupti-dir, AC_HELP_STRING([--with-cupti-dir=CUPTIDIR], [give the path for CUPTI, default: /usr]), @@ -31,9 +33,9 @@ AC_DEFUN([ACVT_CUPTI], sav_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $CUPTIINCDIR $CUDATKINCDIR" - AC_CHECK_HEADER([cupti_events.h], [], + AC_CHECK_HEADER([cupti.h], [], [ - AC_MSG_NOTICE([error: no cupti_events.h found; check path for CUPTI package first...]) + AC_MSG_NOTICE([error: no cupti.h found; check path for CUPTI package first...]) cupti_error="yes" ]) CPPFLAGS=$sav_CPPFLAGS @@ -54,11 +56,13 @@ AC_DEFUN([ACVT_CUPTI], cupti_error="yes" ]) - AC_MSG_CHECKING([whether CUDA runtime version >= 4.0]) + AS_IF([test x"$cupti_error" = "xno"], + [ + AC_MSG_CHECKING([whether CUDA runtime version >= 4.0]) - sav_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" - AC_TRY_COMPILE([#include "cuda_runtime_api.h"], + sav_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $CUDATKINCDIR" + AC_TRY_COMPILE([#include "cuda_runtime_api.h"], [ #ifndef CUDART_VERSION # error "CUDART_VERSION not defined" @@ -66,14 +70,15 @@ AC_DEFUN([ACVT_CUPTI], # error "CUDART_VERSION < 4000" #endif ], - [AC_MSG_RESULT([yes])], - [ - AC_MSG_RESULT([no]) - AC_MSG_NOTICE([error: CUDA runtime version could not be determined and/or is incompatible (< 4.0) + [AC_MSG_RESULT([yes])], + [ + AC_MSG_RESULT([no]) + AC_MSG_NOTICE([error: CUDA runtime version could not be determined and/or is incompatible (< 4.0) See \`config.log' for more details.]) - cupti_error="yes" + cupti_error="yes" + ]) + CPPFLAGS=$sav_CPPFLAGS ]) - CPPFLAGS=$sav_CPPFLAGS AS_IF([test x"$cupti_error" = "xno"], [have_cupti="yes"]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.libwrap.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.libwrap.m4 index e86bb291c9..b1d78ed032 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.libwrap.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.libwrap.m4 @@ -96,7 +96,7 @@ AC_DEFUN([ACVT_LIBWRAP], cuda) ACVT_CONF_SUBTITLE([CUDA]) ACVT_CUDAWRAP - AS_IF([test x"$have_cudawrap" = "xyes"], [have_libwrap="yes"], + AS_IF([test x"$have_cudartwrap" = "xyes"], [have_libwrap="yes"], [ AS_IF([test x"$force_cudawrap" = "xyes"], [libwrap_error="yes"; break]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 index 8b570db396..e7ebda9045 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.mpi.m4 @@ -48,7 +48,8 @@ AC_DEFUN([ACVT_MPI], MPIINCDIR="-I$top_vt_srcdir/../../../include -I$top_vt_builddir/../../../include" FMPIINCDIR="$MPIINCDIR" - MPILIBDIR="-L$top_vt_builddir/../../../.libs" + # MPILIBDIR is used in the compiler wrapper configuration files; set LDFLAGS instead + LDFLAGS="$LDFLAGS -L$top_vt_builddir/../../../.libs" enable_mpi="yes" with_openmpi="yes" @@ -431,21 +432,24 @@ AC_DEFUN([ACVT_MPI], AC_CHECK_PROGS(MPICC, mpicc hcc mpcc_r mpcc mpxlc_r mpxlc mpixlc_r mpixlc cmpicc mpiicc) AS_IF([test x"$MPICC" != x], [ - mpicc=`echo $MPICC | cut -d ' ' -f 1` - which_mpicc=`which $mpicc 2>/dev/null` - AS_IF([test x"$which_mpicc" = x], [AC_MSG_ERROR([$mpicc not found])]) - - mpi_bin_dir=`dirname $which_mpicc` - AS_IF([test "$mpi_bin_dir" != "/usr/bin" -a "$mpi_bin_dir" != "/SX/usr/bin"], + AS_IF([test x"$inside_openmpi" = "xno"], [ - AS_IF([test x"$MPIDIR" = x], - [MPIDIR=`echo $mpi_bin_dir | sed -e 's/bin//'`]) - AS_IF([test x"$MPIINCDIR" = x], - [MPIINCDIR=-I`echo $mpi_bin_dir | sed -e 's/bin/include/'`]) - AS_IF([test x"$FMPIINCDIR" = x], - [FMPIINCDIR=$MPIINCDIR]) - AS_IF([test x"$MPILIBDIR" = x], - [MPILIBDIR=-L`echo $mpi_bin_dir | sed -e 's/bin/lib/'`]) + mpicc=`echo $MPICC | cut -d ' ' -f 1` + which_mpicc=`which $mpicc 2>/dev/null` + AS_IF([test x"$which_mpicc" = x], [AC_MSG_ERROR([$mpicc not found])]) + + mpi_bin_dir=`dirname $which_mpicc` + AS_IF([test "$mpi_bin_dir" != "/usr/bin" -a "$mpi_bin_dir" != "/SX/usr/bin"], + [ + AS_IF([test x"$MPIDIR" = x], + [MPIDIR=`echo $mpi_bin_dir | sed -e 's/bin//'`]) + AS_IF([test x"$MPIINCDIR" = x], + [MPIINCDIR=-I`echo $mpi_bin_dir | sed -e 's/bin/include/'`]) + AS_IF([test x"$FMPIINCDIR" = x], + [FMPIINCDIR=$MPIINCDIR]) + AS_IF([test x"$MPILIBDIR" = x], + [MPILIBDIR=-L`echo $mpi_bin_dir | sed -e 's/bin/lib/'`]) + ]) ]) ], [ @@ -612,75 +616,78 @@ dnl check for PMPILIB dnl check for FMPILIB - AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], + AS_IF([test x"$F77" != x], [ - sav_LIBS=$LIBS - LIBS="$LIBS $MPILIBDIR -lmpi_f77 $MPILIB" - AC_MSG_CHECKING([whether linking with -lmpi_f77 works]) - AC_TRY_LINK([],[], - [AC_MSG_RESULT([yes]); FMPILIB=-lmpi_f77],[AC_MSG_RESULT([no])]) - LIBS=$sav_LIBS - ]) - - AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], - [ - sav_LIBS=$LIBS - LIBS="$LIBS $MPILIBDIR -lmpibinding_f77" - AC_MSG_CHECKING([whether linking with -lmpibinding_f77 works]) - AC_TRY_LINK([],[], - [AC_MSG_RESULT([yes]); FMPILIB=-lmpibinding_f77],[AC_MSG_RESULT([no])]) - LIBS=$sav_LIBS - ]) - - AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], - [ - sav_LIBS=$LIBS - LIBS="$LIBS $MPILIBDIR -lfmpich" - AC_MSG_CHECKING([whether linking with -lfmpich works]) - AC_TRY_LINK([],[], - [AC_MSG_RESULT([yes]); FMPILIB=-lfmpich],[AC_MSG_RESULT([no])]) - LIBS=$sav_LIBS - ]) - - AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], - [ - sav_LIBS=$LIBS - LIBS="$LIBS $MPILIBDIR -llamf77mpi" - AC_MSG_CHECKING([whether linking with -llamf77mpi works]) - AC_TRY_LINK([],[], - [AC_MSG_RESULT([yes]); FMPILIB=-llamf77mpi],[AC_MSG_RESULT([no])]) - LIBS=$sav_LIBS - ]) - - AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], - [ - sav_LIBS=$LIBS - LIBS="$LIBS $MPILIBDIR -lfmpi" - AC_MSG_CHECKING([whether linking with -lfmpi works]) - AC_TRY_LINK([],[], - [AC_MSG_RESULT([yes]); FMPILIB=-lfmpi],[AC_MSG_RESULT([no])]) - LIBS=$sav_LIBS - ]) - - AS_IF([test x"$mpi_error" = "xno"], - [ - AS_IF([test x"$FMPILIB" = x], + AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], [ - AS_IF([test x"$check_fmpiwraplib" = "xyes"], - [ - AC_MSG_WARN([no libmpi_f77, libmpibinding_f77, libfmpich, liblamf77mpi, or libfmpi found; build libvt-fmpi]) - FMPILIB="-lvt-fmpi" - ]) - ], + sav_LIBS=$LIBS + LIBS="$LIBS $MPILIBDIR -lmpi_f77 $MPILIB" + AC_MSG_CHECKING([whether linking with -lmpi_f77 works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); FMPILIB=-lmpi_f77],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], [ - AS_IF([test x"$FMPILIB" = "x-lvt-fmpi"], + sav_LIBS=$LIBS + LIBS="$LIBS $MPILIBDIR -lmpibinding_f77" + AC_MSG_CHECKING([whether linking with -lmpibinding_f77 works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); FMPILIB=-lmpibinding_f77],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $MPILIBDIR -lfmpich" + AC_MSG_CHECKING([whether linking with -lfmpich works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); FMPILIB=-lfmpich],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $MPILIBDIR -llamf77mpi" + AC_MSG_CHECKING([whether linking with -llamf77mpi works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); FMPILIB=-llamf77mpi],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$FMPILIB" = x -a x"$mpi_error" = "xno"], + [ + sav_LIBS=$LIBS + LIBS="$LIBS $MPILIBDIR -lfmpi" + AC_MSG_CHECKING([whether linking with -lfmpi works]) + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]); FMPILIB=-lfmpi],[AC_MSG_RESULT([no])]) + LIBS=$sav_LIBS + ]) + + AS_IF([test x"$mpi_error" = "xno"], + [ + AS_IF([test x"$FMPILIB" = x], [ - AS_IF([test x"$check_fmpiwraplib" = "xno"], - [FMPILIB=]) + AS_IF([test x"$check_fmpiwraplib" = "xyes"], + [ + AC_MSG_WARN([no libmpi_f77, libmpibinding_f77, libfmpich, liblamf77mpi, or libfmpi found; build libvt-fmpi]) + FMPILIB="-lvt-fmpi" + ]) ], [ - AS_IF([test x"$force_fmpiwraplib" = "xyes"], - [FMPILIB="-lvt-fmpi"], [check_fmpiwraplib="no"]) + AS_IF([test x"$FMPILIB" = "x-lvt-fmpi"], + [ + AS_IF([test x"$check_fmpiwraplib" = "xno"], + [FMPILIB=]) + ], + [ + AS_IF([test x"$force_fmpiwraplib" = "xyes"], + [FMPILIB="-lvt-fmpi"], [check_fmpiwraplib="no"]) + ]) ]) ]) ]) @@ -877,16 +884,19 @@ AC_DEFUN([ACVT_FMPIWRAPLIB], 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], [ - 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])]) - - mpi_bin_dir=`dirname $which_mpif77` - AS_IF([test "$mpi_bin_dir" != "/usr/bin" -a "$mpi_bin_dir" != "/SX/usr/bin" -a x"$FMPIINCDIR" != x-I"$mpi_inc_dir"], + AS_IF([test x"$inside_openmpi" = "xno"], [ - mpi_inc_dir=-I`echo $mpi_bin_dir | sed -e 's/bin/include/'` - AS_IF([test x"$FMPIINCDIR" != x"$mpi_inc_dir"], - [FMPIINCDIR="$FMPIINCDIR -I`echo $mpi_bin_dir | sed -e 's/bin/include/'`"]) + 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])]) + + mpi_bin_dir=`dirname $which_mpif77` + 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/'` + AS_IF([test x"$FMPIINCDIR" != x"$mpi_inc_dir"], + [FMPIINCDIR="$FMPIINCDIR -I`echo $mpi_bin_dir | sed -e 's/bin/include/'`"]) + ]) ]) ], [ diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.rusage.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.rusage.m4 index e7f0e0a450..ec7bbdd476 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.rusage.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.rusage.m4 @@ -22,7 +22,15 @@ AC_DEFUN([ACVT_RUSAGE], AC_CHECK_FUNC([getrusage], [], [rusage_error="yes"]) ]) - AS_IF([test x"$rusage_error" = "xno"], [have_rusage="yes"]) + AS_IF([test x"$rusage_error" = "xno"], + [ + sav_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" + AC_CHECK_DECLS([RUSAGE_THREAD], [], [], [#include ]) + CPPFLAGS=$sav_CPPFLAGS + + have_rusage="yes" + ]) ]) ]) diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.tauinst.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.tauinst.m4 index 23042323b0..01332b14ca 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.tauinst.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.tauinst.m4 @@ -68,9 +68,15 @@ 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])]) - AC_CHECK_PROGS(tauinst_fparse_cmd, f95parse f90parse gfparse) - AS_IF([test x"$tauinst_fparse_cmd" = x], - [AC_MSG_WARN([no f95parse, f90parse, or gfparse found; Fortran source code cannot be instrumented by TAU])]) + AS_IF([test x"$F77" != x], + [ + AC_CHECK_PROGS(tauinst_fparse_cmd, f95parse f90parse gfparse) + AS_IF([test x"$tauinst_fparse_cmd" = x], + [AC_MSG_WARN([no f95parse, f90parse, or gfparse found; Fortran source code cannot be instrumented by TAU])]) + ], + [ + tauinst_fparse_cmd= + ]) AS_IF([test x"$tauinst_cparse_cmd$tauinst_cxxparse_cmd$tauinst_fparse_cmd" = x], [ diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.timer.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.timer.m4 index 6564ea6743..47a3be904e 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.timer.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.timer.m4 @@ -129,7 +129,7 @@ AC_DEFUN([ACVT_TIMER], AC_MSG_NOTICE([selected timer: $timer]) case $timer in - TIMER_BGP_GET_TIMEBASE | TIMER_BGP_GET_TIMEBASE | TIMER_GETTIMEOFDAY) + TIMER_RTS_GET_TIMEBASE | TIMER_BGP_GET_TIMEBASE | TIMER_SYSSX_HGTIME | TIMER_GETTIMEOFDAY) timer_is_global=yes timer_is_global_def=1 ;; diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.vtrun.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.vtrun.m4 index 08080e3994..82a1a68750 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.vtrun.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.vtrun.m4 @@ -30,9 +30,18 @@ AC_DEFUN([ACVT_RUN], AS_IF([test x"$check_vtrun" = "xyes"], [ - AC_MSG_CHECKING([whether we can build shared libraries]) - AS_IF([test x"$enable_shared" = "xyes"], - [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); vtrun_error="yes"]) + AS_IF([test "$PLATFORM" = "bgl" -o "$PLATFORM" = "bgp"], + [ + AC_MSG_NOTICE([error: application execution wrapper not supported on this platform]) + vtrun_error="yes" + ]) + + AS_IF([test x"$vtrun_error" = "xno"], + [ + AC_MSG_CHECKING([whether we can build shared libraries]) + AS_IF([test x"$enable_shared" = "xyes"], + [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); vtrun_error="yes"]) + ]) AS_IF([test x"$vtrun_error" = "xno"], [ diff --git a/ompi/contrib/vt/vt/config/m4/acinclude.vtsetup.m4 b/ompi/contrib/vt/vt/config/m4/acinclude.vtsetup.m4 index 5a43d00cfa..522c282286 100644 --- a/ompi/contrib/vt/vt/config/m4/acinclude.vtsetup.m4 +++ b/ompi/contrib/vt/vt/config/m4/acinclude.vtsetup.m4 @@ -33,7 +33,6 @@ AC_DEFUN([ACVT_SETUP], AC_CHECK_PROG(JAVA, java, java) AS_IF([test x"$JAVA" = x], [ - AC_MSG_RESULT([no]) AC_MSG_NOTICE([error: no java found; check path for JAVA package first...]) vtsetup_error="yes" ]) diff --git a/ompi/contrib/vt/vt/config/mpigen/c_dont_generate.txt b/ompi/contrib/vt/vt/config/mpigen/c_dont_generate.txt index 589b05f863..632f563352 100644 --- a/ompi/contrib/vt/vt/config/mpigen/c_dont_generate.txt +++ b/ompi/contrib/vt/vt/config/mpigen/c_dont_generate.txt @@ -1,6 +1,8 @@ # This file lists all calls, which should not be generated # automatically by mk_c_wrapper.sh +MPI_Address +MPI_Get_address MPI_Pcontrol MPI_Wtick MPI_Wtime @@ -38,6 +40,8 @@ MPI_Cart_sub MPI_Comm_create MPI_Comm_dup MPI_Comm_free +MPI_Comm_group +MPI_Comm_remote_group MPI_Comm_split MPI_Exscan MPI_Gather @@ -97,6 +101,7 @@ MPI_Win_complete MPI_Win_create MPI_Win_fence MPI_Win_free +MPI_Win_get_group MPI_Win_lock MPI_Win_post MPI_Win_start 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 15c0505060..7c49a37c53 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 @@ -275,8 +275,6 @@ cat <$tmp.awk # by MPI_Fint. # ------------------------------------------------- function converttype(type) { - gsub("MPI_Aint","MPI_Fint",type) - if (ENVIRON["COMM_CONVERT"] == 1) gsub("MPI_Comm","MPI_Fint",type) @@ -326,9 +324,6 @@ function print_convert_function(type,para,decl) { if (type == "char*") { if (decl) printf" char* %sC = NULL;\n", para else printf" vt_string_f2c(%s, %s_len, &%sC);\n", para, para, para - } else if (index(type,"MPI_Aint") > 0) { - if (decl) printf" MPI_Aint %sC;\n",para - else printf" %sC = (MPI_Aint)%s%s;\n",para,pointer,para } else if ((ENVIRON["COMM_CONVERT"] == 1) && (index(type,"MPI_Comm") > 0)) { if (decl) printf" MPI_Comm %sC;\n", para else printf" %sC = MPI_Comm_f2c(%s%s);\n",para,pointer,para @@ -380,8 +375,6 @@ function print_convert_function(type,para,decl) { if (type == "char*") { if (decl) printf " char %sC[1024];\n", para - } else if (index(type,"MPI_Aint") > 0) { - if (decl) printf" MPI_Aint %sC;\n",para } else if ((ENVIRON["COMM_CONVERT"] == 1) && (index(type,"MPI_Comm") > 0)) { if (decl) printf" MPI_Comm %sC;\n",para else printf" %sC = MPI_COMM_NULL;\n",para @@ -440,13 +433,7 @@ function print_convert_function(type,para,decl) { len_parameter = lentemp[2] #now we have to handle all the imaginable handles - if (index(type,"MPI_Aint") > 0) { - if (decl) { - printf" MPI_Aint* %sC;\n",para - } else { - printf" %sC = (MPI_Aint*)malloc(sizeof(MPI_Aint)*(*%s));\n",para,len_parameter - } - } else if ((ENVIRON["COMM_CONVERT"] == 1) && (index(type,"MPI_Comm") > 0)) { + if ((ENVIRON["COMM_CONVERT"] == 1) && (index(type,"MPI_Comm") > 0)) { if (decl) { printf" MPI_Comm* %sC;\n",para } else { @@ -551,12 +538,7 @@ function print_convert_function(type,para,decl) { len_parameter = lentemp[2] #now we have to handle all the imaginable handles - if (index(type,"MPI_Aint") > 0) { - if (!decl) { - printf" for (i = 0; i < *%s; i++) \n",len_parameter - printf" %sC[i] = (MPI_Aint)%s[i];\n",para,para - } - } else if ((ENVIRON["COMM_CONVERT"] == 1) && (index(type,"MPI_Comm") > 0)) { + if ((ENVIRON["COMM_CONVERT"] == 1) && (index(type,"MPI_Comm") > 0)) { if (!decl) { printf" for (i = 0; i < *%s; i++) \n",len_parameter printf" %sC[i] = MPI_Comm_f2c(%s[i]);\n",para,para @@ -635,9 +617,6 @@ function print_back_convert_function(type,para) { if (type == "char*") printf" vt_string_c2f(%sC, %s, %s_len);\n", para, para, para - if (index(type,"MPI_Aint") > 0) - printf" *%s = (MPI_Fint)%sC;\n",para,para - if ((ENVIRON["COMM_CONVERT"] == 1) && (index(type,"MPI_Comm") > 0)) printf" *%s = MPI_Comm_c2f(%sC);\n",para,para @@ -686,13 +665,6 @@ function print_back_convert_function(type,para) { len_parameter = lentemp[2] #now we have to handle all the imaginable handles - if (index(type,"MPI_Aint") > 0) { - printf" if ( *%s != MPI_UNDEFINED )\n {\n",len_parameter - printf" for (i = 0; i < *%s; i++) \n",len_parameter - printf" %s[i] = (MPI_Fint)%sC[i];\n",para,para - printf" }\n" - } - if ((ENVIRON["COMM_CONVERT"] == 1) && (index(type,"MPI_Comm") > 0)) { printf" if ( *%s != MPI_UNDEFINED )\n {\n",len_parameter printf" for (i = 0; i < *%s; i++) \n",len_parameter @@ -768,8 +740,7 @@ function print_back_convert_function(type,para) { if ( (index(para,"_CLASS_ARRAY_") != 0) && (index(type,"MPI_Status") == 0) ) { - if ( (index(type,"MPI_Aint") != 0) || - ((index(type,"MPI_Comm") != 0) && (ENVIRON["COMM_CONVERT"] == 1)) || + if ( ((index(type,"MPI_Comm") != 0) && (ENVIRON["COMM_CONVERT"] == 1)) || ((index(type,"MPI_Errhandler") != 0) && (ENVIRON["ERRHANDLER_CONVERT"] == 1)) || ((index(type,"MPI_File") != 0) && (ENVIRON["FILE_CONVERT"] == 1)) || ((index(type,"MPI_Group") != 0) && (ENVIRON["GROUP_CONVERT"] == 1)) || @@ -830,17 +801,16 @@ function get_converted_name(para,type) { address="&" #handle conversion - if ((index(type,"MPI_Aint") > 0) || - ((ENVIRON["COMM_CONVERT"] == 1)&&(index(type,"MPI_Comm") > 0)) || - ((ENVIRON["ERRH_CONVERT"] == 1)&&(index(type,"MPI_Errhandler") > 0)) || - ((ENVIRON["FILE_CONVERT"] == 1)&&(index(type,"MPI_File") > 0)) || - ((ENVIRON["GROUP_CONVERT"] == 1)&&(index(type,"MPI_Group") > 0)) || - ((ENVIRON["INFO_CONVERT"] == 1)&&(index(type,"MPI_Info") > 0)) || - ((ENVIRON["OP_CONVERT"] == 1)&&(index(type,"MPI_Op") > 0)) || - ((ENVIRON["TYPE_CONVERT"] == 1)&&(index(type,"MPI_Datatype") > 0)) || - ((ENVIRON["WIN_CONVERT"] == 1)&&(index(type,"MPI_Win") > 0)) || - ((ENVIRON["REQUEST_CONVERT"] == 1)&&(index(type,"MPI_Request") > 0)) || - (index(type,"MPI_Status") > 0) ) + if ( ((ENVIRON["COMM_CONVERT"] == 1)&&(index(type,"MPI_Comm") > 0)) || + ((ENVIRON["ERRH_CONVERT"] == 1)&&(index(type,"MPI_Errhandler") > 0)) || + ((ENVIRON["FILE_CONVERT"] == 1)&&(index(type,"MPI_File") > 0)) || + ((ENVIRON["GROUP_CONVERT"] == 1)&&(index(type,"MPI_Group") > 0)) || + ((ENVIRON["INFO_CONVERT"] == 1)&&(index(type,"MPI_Info") > 0)) || + ((ENVIRON["OP_CONVERT"] == 1)&&(index(type,"MPI_Op") > 0)) || + ((ENVIRON["TYPE_CONVERT"] == 1)&&(index(type,"MPI_Datatype") > 0)) || + ((ENVIRON["WIN_CONVERT"] == 1)&&(index(type,"MPI_Win") > 0)) || + ((ENVIRON["REQUEST_CONVERT"] == 1)&&(index(type,"MPI_Request") > 0)) || + (index(type,"MPI_Status") > 0) ) return address para "C" #it is not a handle type so normal handling diff --git a/ompi/contrib/vt/vt/config/mpigen/mk_registry.sh.in b/ompi/contrib/vt/vt/config/mpigen/mk_registry.sh.in index 8a59b5149a..ee555302ae 100644 --- a/ompi/contrib/vt/vt/config/mpigen/mk_registry.sh.in +++ b/ompi/contrib/vt/vt/config/mpigen/mk_registry.sh.in @@ -136,8 +136,6 @@ cat <$tmp.awk type="VT_MPI_COLL_ALL2ONE" else if ( lastparam[3] == "/*COLL_ALL2ALL*/" ) type="VT_MPI_COLL_ALL2ALL" - else if ( lastparam[3] == "/*COLL_OTHER*/" ) - type="VT_MPI_COLL_OTHER" else type="VT_MPI_FUNCTION" diff --git a/ompi/contrib/vt/vt/config/mpigen/mpi2_1sided.h b/ompi/contrib/vt/vt/config/mpigen/mpi2_1sided.h index 080ffd8785..a7c1fe630e 100644 --- a/ompi/contrib/vt/vt/config/mpigen/mpi2_1sided.h +++ b/ompi/contrib/vt/vt/config/mpigen/mpi2_1sided.h @@ -42,6 +42,7 @@ VT_MPI_INT MPI_Win_complete(MPI_Win win); VT_MPI_INT MPI_Win_create(void* base, MPI_Aint size, VT_MPI_INT disp_unit, MPI_Info info, MPI_Comm comm, MPI_Win* win_CLASS_SINGLE_OUT); VT_MPI_INT MPI_Win_fence(VT_MPI_INT assert, MPI_Win win); VT_MPI_INT MPI_Win_free(MPI_Win* win_CLASS_SINGLE_IO); +VT_MPI_INT MPI_Win_get_group(MPI_Win win, MPI_Group* group_CLASS_SINGLE_OUT); VT_MPI_INT MPI_Win_lock(VT_MPI_INT lock_type, VT_MPI_INT rank, VT_MPI_INT assert, MPI_Win win); VT_MPI_INT MPI_Win_post(MPI_Group group, VT_MPI_INT assert, MPI_Win win); VT_MPI_INT MPI_Win_start(MPI_Group group, VT_MPI_INT assert, MPI_Win win); diff --git a/ompi/contrib/vt/vt/config/mpigen/mpi2_extcoll.h b/ompi/contrib/vt/vt/config/mpigen/mpi2_extcoll.h index c37ef61420..ff947ebefc 100644 --- a/ompi/contrib/vt/vt/config/mpigen/mpi2_extcoll.h +++ b/ompi/contrib/vt/vt/config/mpigen/mpi2_extcoll.h @@ -36,4 +36,4 @@ **/ VT_MPI_INT MPI_Alltoallw(void* sendbuf_CLASS_BUFFER, VT_MPI_INT* sendcounts, VT_MPI_INT* sdispls, MPI_Datatype* sendtypes_CLASS_ARRAY_IN_sendcounts, void* recvbuf_CLASS_BUFFER, VT_MPI_INT* recvcounts, VT_MPI_INT* rdispls, MPI_Datatype* recvtypes_CLASS_ARRAY_IN_recvcounts, MPI_Comm comm); /*COLL_ALL2ALL*/ -VT_MPI_INT MPI_Exscan(void* sendbuf_CLASS_BUFFER, void* recvbuf_CLASS_BUFFER, VT_MPI_INT count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm); /*COLL_OTHER*/ +VT_MPI_INT MPI_Exscan(void* sendbuf_CLASS_BUFFER, void* recvbuf_CLASS_BUFFER, VT_MPI_INT count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm); /*COLL_ALL2ALL*/ diff --git a/ompi/contrib/vt/vt/config/mpigen/mpi_standard.h b/ompi/contrib/vt/vt/config/mpigen/mpi_standard.h index 728a5b6cea..cc391da99e 100644 --- a/ompi/contrib/vt/vt/config/mpigen/mpi_standard.h +++ b/ompi/contrib/vt/vt/config/mpigen/mpi_standard.h @@ -128,7 +128,7 @@ VT_MPI_INT MPI_Reduce_scatter(void* sendbuf_CLASS_BUFFER_IN_PLACE, void* recvbuf VT_MPI_INT MPI_Request_free(MPI_Request* request_CLASS_SINGLE_IO); VT_MPI_INT MPI_Rsend(void* buf_CLASS_BUFFER, VT_MPI_INT count, MPI_Datatype datatype, VT_MPI_INT dest, VT_MPI_INT tag, MPI_Comm comm); VT_MPI_INT MPI_Rsend_init(void* buf_CLASS_BUFFER, VT_MPI_INT count, MPI_Datatype datatype, VT_MPI_INT dest, VT_MPI_INT tag, MPI_Comm comm, MPI_Request* request_CLASS_SINGLE_OUT); -VT_MPI_INT MPI_Scan(void* sendbuf_CLASS_BUFFER_IN_PLACE, void* recvbuf_CLASS_BUFFER, VT_MPI_INT count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm); /*COLL_OTHER*/ +VT_MPI_INT MPI_Scan(void* sendbuf_CLASS_BUFFER_IN_PLACE, void* recvbuf_CLASS_BUFFER, VT_MPI_INT count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm); /*COLL_ALL2ALL*/ VT_MPI_INT MPI_Scatter(void* sendbuf_CLASS_BUFFER, VT_MPI_INT sendcount, MPI_Datatype sendtype, void* recvbuf_CLASS_BUFFER_IN_PLACE, VT_MPI_INT recvcount, MPI_Datatype recvtype, VT_MPI_INT root, MPI_Comm comm); /*COLL_ONE2ALL*/ VT_MPI_INT MPI_Scatterv(void* sendbuf_CLASS_BUFFER, VT_MPI_INT* sendcounts, VT_MPI_INT* displs, MPI_Datatype sendtype, void* recvbuf_CLASS_BUFFER_IN_PLACE, VT_MPI_INT recvcount, MPI_Datatype recvtype, VT_MPI_INT root, MPI_Comm comm); /*COLL_ONE2ALL*/ VT_MPI_INT MPI_Send(void* buf_CLASS_BUFFER, VT_MPI_INT count, MPI_Datatype datatype, VT_MPI_INT dest, VT_MPI_INT tag, MPI_Comm comm); diff --git a/ompi/contrib/vt/vt/configure.in b/ompi/contrib/vt/vt/configure.in index 9c27de00e4..14bf70afdc 100644 --- a/ompi/contrib/vt/vt/configure.in +++ b/ompi/contrib/vt/vt/configure.in @@ -80,19 +80,54 @@ AS_IF([test x"$inside_openmpi" = "xyes" -o "$datarootdir" = "\${prefix}/share"], AS_IF([test "$docdir" = "\${datarootdir}/doc/\${PACKAGE_TARNAME}"], [docdir="\${datarootdir}/doc"]) +# Declare additional variables +AC_ARG_VAR(AR, [archiver command]) +AC_ARG_VAR(NM, [command to list symbols from object files]) +AC_ARG_VAR(JAVA, [Java application launcher command]) + ACVT_CONF_TITLE([Compiler, preprocessor, and programs]) # Check for compiler and preprocessor -AS_IF([test x"$F77" = x -a x"$FC" != x], [F77=$FC]) AC_PROG_CC AM_PROG_CC_C_O AC_PROG_CXX AC_PROG_CPP AC_PROG_CXXCPP -AC_PROG_F77 -AC_PROG_FC AM_PROG_AS +# Do we want to support Fortran +check_fortran="yes" +force_fortran="no" +AC_ARG_ENABLE(fortran, + AC_HELP_STRING([--enable-fortran], + [enable Fortran support, default: enable if Fortran compiler found by configure]), + [ + AS_IF([test x"$enableval" = "xyes"], + [ + force_fortran="yes" + ], + [ + check_fortran="no" + F77= + FC= + ]) + ]) + +# 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], + [ + AC_MSG_NOTICE([error: no Fortran 77 compiler found]) + AS_IF([test x"$force_fortran" = "xyes"], [exit 1]) + ]) + + AC_PROG_FC +]) + AC_LANG([C]) AS_IF([test x"$F77" != x], @@ -113,11 +148,6 @@ AC_ARG_ENABLE(binaries, [enable_binaries="$enableval"], [enable_binaries="yes"]) AM_CONDITIONAL(AMBUILDBINARIES, test x"$enable_binaries" = "xyes") -# Declare additional variables -AC_ARG_VAR(AR, [archiver command]) -AC_ARG_VAR(NM, [command to list symbols from object files]) -AC_ARG_VAR(JAVA, [Java application launcher command]) - # Check for programs #AC_PROG_AR AC_CHECK_PROGS(AR, ar, ar) @@ -351,6 +381,19 @@ 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 CUDA Toolkit +ACVT_CONF_TITLE([CUDA Toolkit]) +ACVT_CUDA +AS_IF([test x"$enable_config_titles" = "xyes" -a x"$check_cuda" = "xno"], +[AC_MSG_NOTICE([disabled via command line switch])]) +AS_IF([test x"$force_cuda" = "xyes" -a x"$cuda_error" = "xyes"], [exit 1]) +AM_CONDITIONAL(AMBUILDCUDA, test x"$have_cuda" = "xyes") +AM_CONDITIONAL(AMBUILDCUDART, test x"$have_cudart" = "xyes") + +# Check for CUPTI support +ACVT_CUPTI +AM_CONDITIONAL(AMBUILDCUPTI, test x"$have_cupti" = "xyes") + # Check for library tracing support ACVT_CONF_TITLE([Library tracing]) ACVT_LIBWRAP @@ -365,9 +408,11 @@ AM_CONDITIONAL(AMHAVEFORK, test x"$have_libcwrap" = "xyes" -a x"$have_fork" = "x AM_CONDITIONAL(AMBUILDIOWRAP, test x"$have_iowrap" = "xyes") AM_CONDITIONAL(AMBUILDCUDAWRAP, test x"$have_cudawrap" = "xyes") AM_CONDITIONAL(AMBUILDCUDARTWRAP, test x"$have_cudartwrap" = "xyes") -AM_CONDITIONAL(AMBUILDCUPTI, test x"$have_cupti" = "xyes") AM_CONDITIONAL(AMBUILDVTNVCC, test x"$have_cudartwrap" = "xyes" -a x"$NVCC" != x) +# Check for GPU support +AM_CONDITIONAL(AMHAVEGPU, test x"$have_cupti" = "xyes" -o x"$have_cudartwrap" = "xyes") + # Check path for node-local temporary directory ACVT_LTMPDIR diff --git a/ompi/contrib/vt/vt/doc/UserManual.html b/ompi/contrib/vt/vt/doc/UserManual.html index 046685af42..b0e3a17da3 100644 --- a/ompi/contrib/vt/vt/doc/UserManual.html +++ b/ompi/contrib/vt/vt/doc/UserManual.html @@ -66,7 +66,7 @@ BODY { font-family: sans-serif; }

-VampirTrace 5.11.2 User Manual +VampirTrace 5.12 User Manual


@@ -80,10 +80,10 @@ High Performance Computing (ZIH)
Germany
-
http://www.tu-dresden.de/zih -
http://www.tu-dresden.de/zih/vampirtrace +
+http://www.tu-dresden.de/zih +
+http://www.tu-dresden.de/zih/vampirtrace

Contact: mailto:vampirsupport@zih.tu-dresden.devampirsupport@zih.tu-dresden.de @@ -97,125 +97,164 @@ Contents