ADIOS2 issueshttps://code.ornl.gov/pnb/ADIOS2/-/issues2019-10-15T23:45:23Zhttps://code.ornl.gov/pnb/ADIOS2/-/issues/1766Make SST fail better2019-10-15T23:45:23ZEisenhauer, GregMake SST fail betterSST needs to detect underlying network failure events and fail more cleanly / deliver better diagnostics.
The most important is likely when we're running out of file descriptors, but we should also notice bind failures and other things ...SST needs to detect underlying network failure events and fail more cleanly / deliver better diagnostics.
The most important is likely when we're running out of file descriptors, but we should also notice bind failures and other things happening deep inside the communication system.Eisenhauer, GregEisenhauer, Greghttps://code.ornl.gov/pnb/ADIOS2/-/issues/1731Quadratic increasing costs for Engine::Put() during one step when using the S...2019-10-10T21:52:27ZPodhorszki, NorbertQuadratic increasing costs for Engine::Put() during one step when using the SST Engine*Created by: franzpoeschel*
While using ADIOS2 in PIConGPU for streaming IO, I noticed that during one step, each call to `Engine::Put()` took at least as long as the previous call. While investigating this, I found out the following:
...*Created by: franzpoeschel*
While using ADIOS2 in PIConGPU for streaming IO, I noticed that during one step, each call to `Engine::Put()` took at least as long as the previous call. While investigating this, I found out the following:
- The SST engine does not distinguish between sync and deferred mode (see [→](https://github.com/ornladios/ADIOS2/blob/f1c6435d87e501de95b7e3f0d1b75e2b00b0f85b/source/adios2/engine/sst/SstWriter.cpp#L293) and [→](https://github.com/ornladios/ADIOS2/issues/1315)), so each written dataset is instantly marshalled and written to an internal buffer.
The total incoming data is not known up front, so reallocation becomes necessary.
- Reallocation in the BP3 serializer (which is used by SST) intentionally overrides the STL GNU default power of 2 reallocation and instead enforces a linear behavior (see [→](https://github.com/ornladios/ADIOS2/blob/f1c6435d87e501de95b7e3f0d1b75e2b00b0f85b/source/adios2/toolkit/format/buffer/heap/BufferSTL.cpp#L28))
This means that data written during one step in the SST engine will be reallocated as many times as subsequent chunks are written. This is probably fine for BP3 where deferred workflows are encouraged that avoid this behavior, but this will not work for SST.
By uncommenting [this line](https://github.com/ornladios/ADIOS2/blob/f1c6435d87e501de95b7e3f0d1b75e2b00b0f85b/source/adios2/toolkit/format/buffer/heap/BufferSTL.cpp#L30), I was able to avoid this issue for now. https://code.ornl.gov/pnb/ADIOS2/-/issues/1728SST crashes with LibFabric2019-09-28T18:21:38ZPodhorszki, NorbertSST crashes with LibFabric*Created by: khuck*
ADIOS2 was configured on a 36-core Linux workstation with the following cmake output:
```
Currently Loaded Modules:
1) gcc/8.1 2) mpi/openmpi-4.0.1_gcc-8.1 3) cmake/3.15.1 4) python/3.6.8
++ which m...*Created by: khuck*
ADIOS2 was configured on a 36-core Linux workstation with the following cmake output:
```
Currently Loaded Modules:
1) gcc/8.1 2) mpi/openmpi-4.0.1_gcc-8.1 3) cmake/3.15.1 4) python/3.6.8
++ which mpicc
++ which mpic++
++ which mpif90
+ cmake -DCMAKE_C_COMPILER=/packages/openmpi/4.0.1-gcc8.1/bin/mpicc -DCMAKE_CXX_COMPILER=/packages/openmpi/4.0.1-gcc8.1/bin/mpic++ -DCMAKE_Fortran_COMPILER=/packages/openmpi/4.0.1-gcc8.1/bin/mpif90 -DADIOS2_USE_Python=ON -DCMAKE_INSTALL_PREFIX=/home/users/khuck/src/ADIOS2/install_mpi -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
-- The C compiler identification is GNU 8.1.0
-- The CXX compiler identification is GNU 8.1.0
-- Check for working C compiler: /packages/openmpi/4.0.1-gcc8.1/bin/mpicc
-- Check for working C compiler: /packages/openmpi/4.0.1-gcc8.1/bin/mpicc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /packages/openmpi/4.0.1-gcc8.1/bin/mpic++
-- Check for working CXX compiler: /packages/openmpi/4.0.1-gcc8.1/bin/mpic++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Could NOT find Blosc (missing: BLOSC_LIBRARY BLOSC_INCLUDE_DIR)
-- Could NOT find BZip2 (missing: BZIP2_LIBRARIES BZIP2_INCLUDE_DIR)
-- Could NOT find ZFP (missing: ZFP_LIBRARY ZFP_INCLUDE_DIR)
-- Could NOT find SZ (missing: SZ_LIBRARY ZLIB_LIBRARY ZSTD_LIBRARY SZ_INCLUDE_DIR)
-- Could NOT find MGARD (missing: MGARD_LIBRARY ZLIB_LIBRARY MGARD_INCLUDE_DIR)
-- Found ZLIB: /usr/lib64/libz.so (found version "1.2.7")
-- Could NOT find PNG: Found unsuitable version "1.5.13", but required is at least "1.6.0" (found /usr/lib64/libpng.so)
-- The Fortran compiler identification is GNU 8.1.0
-- Check for working Fortran compiler: /packages/openmpi/4.0.1-gcc8.1/bin/mpif90
-- Check for working Fortran compiler: /packages/openmpi/4.0.1-gcc8.1/bin/mpif90 -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /packages/openmpi/4.0.1-gcc8.1/bin/mpif90 supports Fortran 90
-- Checking whether /packages/openmpi/4.0.1-gcc8.1/bin/mpif90 supports Fortran 90 -- yes
-- Found MPI_C: /packages/openmpi/4.0.1-gcc8.1/bin/mpicc (found version "3.1")
-- Found MPI_CXX: /packages/openmpi/4.0.1-gcc8.1/bin/mpic++ (found version "3.1")
-- Found MPI_Fortran: /packages/openmpi/4.0.1-gcc8.1/bin/mpif90 (found version "3.1")
-- Found MPI: TRUE (found version "3.1") found components: C Fortran CXX
-- Found ZeroMQ: /usr/lib64/libzmq.so (found suitable version "4.1.4", minimum required is "4.1")
-- Could NOT find HDF5 (missing: HDF5_LIBRARIES HDF5_INCLUDE_DIRS C) (found version "")
-- Found PythonInterp: /packages/python/3.6.8/bin/python3 (found version "3.6.8")
-- Found PythonLibs: /packages/python/3.6.8/lib/libpython3.6m.so (found version "3.6.8")
-- Found PythonModule_numpy: /packages/python/3.6.8/lib/python3.6/site-packages/numpy
-- Found PythonModule_mpi4py: /home/users/khuck/.local/lib/python3.6/site-packages/mpi4py
-- Found PythonFull: /packages/python/3.6.8/bin/python3 found components: Interp Libs numpy mpi4py
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.27.1")
-- Checking for module 'libfabric'
-- Found libfabric, version 1.6.1
-- Found LIBFABRIC: /usr/lib64/libfabric.so (Required is at least version "1.6")
-- Checking for module 'cray-drc'
-- No package 'cray-drc' found
-- Could NOT find CrayDRC (missing: CrayDRC_LIBRARIES)
-- Looking for shmget
-- Looking for shmget - found
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- ADIOS2 ThirdParty: Configuring KWSys
-- Checking whether header cstdio is available
-- Checking whether header cstdio is available - yes
-- Checking for Large File Support
-- Checking for Large File Support - yes
-- Checking whether C++ compiler has 'long long'
-- Checking whether C++ compiler has 'long long' - yes
-- Checking whether C++ compiler has '__int64'
-- Checking whether C++ compiler has '__int64' - no
-- Checking whether wstring is available
-- Checking whether wstring is available - yes
-- Checking whether C compiler has ptrdiff_t in stddef.h
-- Checking whether C compiler has ptrdiff_t in stddef.h - yes
-- Checking whether C compiler has ssize_t in unistd.h
-- Checking whether C compiler has ssize_t in unistd.h - yes
-- Checking whether CXX compiler has setenv
-- Checking whether CXX compiler has setenv - yes
-- Checking whether CXX compiler has unsetenv
-- Checking whether CXX compiler has unsetenv - yes
-- Checking whether CXX compiler has environ in stdlib.h
-- Checking whether CXX compiler has environ in stdlib.h - no
-- Checking whether CXX compiler has utimes
-- Checking whether CXX compiler has utimes - yes
-- Checking whether CXX compiler has utimensat
-- Checking whether CXX compiler has utimensat - yes
-- Checking whether CXX compiler struct stat has st_mtim member
-- Checking whether CXX compiler struct stat has st_mtim member - yes
-- Checking whether CXX compiler struct stat has st_mtimespec member
-- Checking whether CXX compiler struct stat has st_mtimespec member - no
-- Checking whether <ext/stdio_filebuf.h> is available
-- Checking whether <ext/stdio_filebuf.h> is available - yes
-- ADIOS2 ThirdParty: Configuring GTest
-- ADIOS2 ThirdParty: Configuring pybind11
-- Found PythonLibs: /packages/python/3.6.8/lib/libpython3.6m.so
-- pybind11 v2.2.4
-- ADIOS2 ThirdParty: Configuring pugixml
-- ADIOS2 ThirdParty: Configuring nlohmann_json
-- ADIOS2 ThirdParty: Configuring atl
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of double
-- Check size of double - done
-- Check size of float
-- Check size of float - done
-- Check size of int
-- Check size of int - done
-- Check size of short
-- Check size of short - done
-- Looking for include file malloc.h
-- Looking for include file malloc.h - found
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Looking for include file stdlib.h
-- Looking for include file stdlib.h - found
-- Looking for include file string.h
-- Looking for include file string.h - found
-- Looking for include file sys/time.h
-- Looking for include file sys/time.h - found
-- Looking for include file windows.h
-- Looking for include file windows.h - not found
-- Looking for fork
-- Looking for fork - found
-- Found atl: /home/users/khuck/src/ADIOS2/build/thirdparty/atl/atl/atl-config.cmake (found version "2.2.1")
-- ADIOS2 ThirdParty: Configuring dill
-- Check size of void*
-- Check size of void* - done
-- Check size of long
-- Check size of long - done
-- Check if the system is big endian
-- Searching 16 bit integer
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian
-- Checking for module 'libffi'
-- Found libffi, version 3.0.13
-- Found LibFFI: -lffi
-- Enabling emulation
-- Looking for include file stdarg.h
-- Looking for include file stdarg.h - found
-- Looking for include file memory.h
-- Looking for include file memory.h - found
-- Found dill: /home/users/khuck/src/ADIOS2/build/thirdparty/dill/dill/dill-config.cmake (found version "2.4.0")
-- ADIOS2 ThirdParty: Configuring ffs
-- Check size of off_t
-- Check size of off_t - done
-- Check size of long double
-- Check size of long double - done
-- Check size of long long
-- Check size of long long - done
-- Check size of size_t
-- Check size of size_t - done
-- Looking for socket
-- Looking for socket - found
-- Found BISON: /usr/bin/bison (found version "3.0.4")
-- Found FLEX: /usr/bin/flex (found version "2.5.37")
-- Found dill: /home/users/khuck/src/ADIOS2/build/thirdparty/dill/dill/dill-config.cmake (found suitable version "2.4.0", minimum required is "2.3.1")
-- Found atl: /home/users/khuck/src/ADIOS2/build/thirdparty/atl/atl/atl-config.cmake (found suitable version "2.2.1", minimum required is "2.2.1")
-- Looking for netdb.h
-- Looking for netdb.h - found
-- Looking for sockLib.h
-- Looking for sockLib.h - not found
-- Looking for sys/select.h
-- Looking for sys/select.h - found
-- Looking for sys/socket.h
-- Looking for sys/socket.h - found
-- Looking for sys/times.h
-- Looking for sys/times.h - found
-- Looking for sys/uio.h
-- Looking for sys/uio.h - found
-- Looking for sys/un.h
-- Looking for sys/un.h - found
-- Looking for winsock.h
-- Looking for winsock.h - not found
-- Looking for strtof
-- Looking for strtof - found
-- Looking for strtod
-- Looking for strtod - found
-- Looking for strtold
-- Looking for strtold - found
-- Looking for getdomainname
-- Looking for getdomainname - found
-- Check size of struct iovec
-- Check size of struct iovec - done
-- Performing Test HAS_IOV_BASE_IOVEC
-- Performing Test HAS_IOV_BASE_IOVEC - Success
-- Found atl: /home/users/khuck/src/ADIOS2/build/thirdparty/atl/atl/atl-config.cmake (found version "2.2.1")
-- Found ffs: /home/users/khuck/src/ADIOS2/build/thirdparty/ffs/ffs/ffs-config.cmake (found version "1.6.0")
-- ADIOS2 ThirdParty: Configuring enet
-- Looking for getaddrinfo
-- Looking for getaddrinfo - found
-- Looking for getnameinfo
-- Looking for getnameinfo - found
-- Looking for gethostbyaddr_r
-- Looking for gethostbyaddr_r - found
-- Looking for gethostbyname_r
-- Looking for gethostbyname_r - found
-- Looking for poll
-- Looking for poll - found
-- Looking for fcntl
-- Looking for fcntl - found
-- Looking for inet_pton
-- Looking for inet_pton - found
-- Looking for inet_ntop
-- Looking for inet_ntop - found
-- Performing Test HAS_MSGHDR_FLAGS
-- Performing Test HAS_MSGHDR_FLAGS - Success
-- Performing Test HAS_SOCKLEN_T
-- Performing Test HAS_SOCKLEN_T - Success
-- Found enet: /home/users/khuck/src/ADIOS2/build/thirdparty/enet/enet/enet-config.cmake (found version "1.3.14")
-- ADIOS2 ThirdParty: Configuring EVPath
-- Performing Test HAVE_MATH
-- Performing Test HAVE_MATH - Failed
-- Performing Test HAVE_LIBM_MATH
-- Performing Test HAVE_LIBM_MATH - Success
-- Found atl: /home/users/khuck/src/ADIOS2/build/thirdparty/atl/atl/atl-config.cmake (found suitable version "2.2.1", minimum required is "2.2.1")
-- Found atl: /home/users/khuck/src/ADIOS2/build/thirdparty/atl/atl/atl-config.cmake (found version "2.2.1")
-- Found ffs: /home/users/khuck/src/ADIOS2/build/thirdparty/ffs/ffs/ffs-config.cmake (found suitable version "1.6.0", minimum required is "1.5.1")
-- Could NOT find nvml (missing: NVML_INCLUDE_DIR)
-- Looking for clock_gettime
-- Looking for clock_gettime - found
-- Found enet: /home/users/khuck/src/ADIOS2/build/thirdparty/enet/enet/enet-config.cmake (found suitable version "1.3.14", minimum required is "1.3.13")
-- - Udt4 library was not found. This is not a fatal error, just that the Udt4 transport will not be built.
-- Found LIBFABRIC: /usr/lib64/libfabric.so
-- Looking for ibv_create_qp
-- Looking for ibv_create_qp - not found
-- Looking for ibv_create_qp in ibverbs
-- Looking for ibv_create_qp in ibverbs - found
-- Found IBVERBS: ibverbs
-- Could NOT find nnti (missing: NNTI_INCLUDE_DIR NNTI_trios_nnti_LIBRARY NNTI_trios_support_LIBRARY)
-- Looking for hostlib.h
-- Looking for hostlib.h - not found
-- Looking for sys/sockio.h
-- Looking for sys/sockio.h - not found
-- Performing Test HAVE_FDS_BITS
-- Performing Test HAVE_FDS_BITS - Failed
-- Looking for writev
-- Looking for writev - found
-- Looking for uname
-- Looking for uname - found
-- Looking for getloadavg
-- Looking for getloadavg - found
-- Looking for gettimeofday
-- Looking for gettimeofday - found
-- Looking for getifaddrs
-- Looking for getifaddrs - found
-- Found atl: /home/users/khuck/src/ADIOS2/build/thirdparty/atl/atl/atl-config.cmake (found suitable version "2.2.1", minimum required is "2.2.1")
-- Found atl: /home/users/khuck/src/ADIOS2/build/thirdparty/atl/atl/atl-config.cmake (found version "2.2.1")
-- Found ffs: /home/users/khuck/src/ADIOS2/build/thirdparty/ffs/ffs/ffs-config.cmake (found suitable version "1.6.0", minimum required is "1.6.0")
-- Found EVPath: /home/users/khuck/src/ADIOS2/build/thirdparty/EVPath/EVPath/EVPathConfigCommon.cmake (found version "4.4.0")
-- Found atl: /home/users/khuck/src/ADIOS2/build/thirdparty/atl/atl/atl-config.cmake (found suitable version "2.2.1", minimum required is "2.2.1")
-- Found atl: /home/users/khuck/src/ADIOS2/build/thirdparty/atl/atl/atl-config.cmake (found version "2.2.1")
-- Looking for rdma/fi_ext_gni.h
-- Looking for rdma/fi_ext_gni.h - not found
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- LTO enabled
-- Detecting Fortran/C Interface
-- Detecting Fortran/C Interface - Found GLOBAL and MODULE mangling
-- Verifying Fortran/CXX Compiler Compatibility
-- Verifying Fortran/CXX Compiler Compatibility - Success
-- Found MPI: TRUE (found version "3.1") found components: C
ADIOS2 build configuration:
ADIOS Version: 2.4.0
C++ Compiler : GNU 8.1.0
/packages/openmpi/4.0.1-gcc8.1/bin/mpic++
Fortran Compiler : GNU 8.1.0
/packages/openmpi/4.0.1-gcc8.1/bin/mpif90
Installation prefix: /home/users/khuck/src/ADIOS2/install_mpi
bin: bin
lib: lib64
include: include
cmake: lib64/cmake/adios2
python: lib64/python3.6/site-packages
Features:
Library Type: shared
Build Type: RelWithDebInfo
Testing: ON
Build Options:
Blosc : OFF
BZip2 : OFF
ZFP : OFF
SZ : OFF
MGARD : OFF
PNG : OFF
MPI : ON
DataMan : ON
SSC : ON
SST : ON
ZeroMQ : ON
HDF5 : OFF
Python : ON
Fortran : ON
SysVShMem: ON
Profiling: ON
Endian_Reverse: OFF
RDMA Transport for Staging: Available
-- Configuring done
-- Generating done
-- Build files have been written to: /home/users/khuck/src/ADIOS2/build
```
When trying to run the heatTransfer example on this workstation with SST, the following crash happened (similar/same crash happens without the --mca arguments):
```
mpirun --mca btl_openib_allow_ib true --mca btl_openib_warn_default_gid_prefix 0 -n 16 ./heatSimulation sim.bp 4 4 64 64 100 10 : -n 4 ./heatAnalysis sim.bp analysis.bp 2 2
Process decomposition : 4 x 4
Array size per process : 64 x 64
Number of output steps : 100
Iterations per step : 10
Using SST engine for input
Using BP4 engine for output
[delphi:53491] *** Process received signal ***
[delphi:53491] Signal: Segmentation fault (11)
[delphi:53491] Signal code: Address not mapped (1)
[delphi:53491] Failing at address: 0x10
[delphi:53491] [ 0] /lib64/libpthread.so.0(+0xf5d0)[0x7f2fc755c5d0]
[delphi:53491] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7f2fc6d00080]
[delphi:53491] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x171ec)[0x7f2fc6d001ec]
[delphi:53491] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstWriterOpen+0xc6)[0x7f2fc6cf6ba6]
[delphi:53491] [ 4] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstWriterC2ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x167)[0x7f2fc8a14827]
[delphi:53491] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x5f3)[0x7f2fc871b003]
[delphi:53491] [ 6] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7f2fc8a7c3d3]
[delphi:53491] [ 7] ./heatSimulation[0x40fb36]
[delphi:53491] [ 8] ./heatSimulation[0x40b4ef]
[delphi:53491] [ 9] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7f2fc71a23d5]
[delphi:53491] [10] ./heatSimulation[0x40b71f]
[delphi:53491] *** End of error message ***
[delphi:53489] *** Process received signal ***
[delphi:53489] Signal: Segmentation fault (11)
[delphi:53489] Signal code: Address not mapped (1)
[delphi:53489] Failing at address: 0x10
[delphi:53489] [ 0] /lib64/libpthread.so.0(+0xf5d0)[0x7f115d8045d0]
[delphi:53489] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7f115cfa8080]
[delphi:53489] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x171ec)[0x7f115cfa81ec]
[delphi:53489] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstWriterOpen+0xc6)[0x7f115cf9eba6]
[delphi:53489] [ 4] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstWriterC2ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x167)[0x7f115ecbc827]
[delphi:53489] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x5f3)[0x7f115e9c3003]
[delphi:53489] [ 6] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7f115ed243d3]
[delphi:53489] [ 7] ./heatSimulation[0x40fb36]
[delphi:53489] [ 8] ./heatSimulation[0x40b4ef]
[delphi:53489] [ 9] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7f115d44a3d5]
[delphi:53489] [10] ./heatSimulation[0x40b71f]
[delphi:53489] *** End of error message ***
[delphi:53482] *** Process received signal ***
[delphi:53482] Signal: Segmentation fault (11)
[delphi:53482] Signal code: Address not mapped (1)
[delphi:53482] Failing at address: 0x10
[delphi:53482] [ 0] /lib64/libpthread.so.0(+0xf5d0)[0x7f63ceddf5d0]
[delphi:53482] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7f63ce583080]
[delphi:53482] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x171ec)[0x7f63ce5831ec]
[delphi:53482] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstWriterOpen+0xc6)[0x7f63ce579ba6]
[delphi:53482] [ 4] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstWriterC2ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x167)[0x7f63d0297827]
[delphi:53482] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x5f3)[0x7f63cff9e003]
[delphi:53482] [ 6] [delphi:53486] *** Process received signal ***
[delphi:53486] Signal: Segmentation fault (11)
[delphi:53486] Signal code: Address not mapped (1)
[delphi:53486] Failing at address: 0x10
/storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7f63d02ff3d3]
[delphi:53482] [ 7] ./heatSimulation[0x40fb36]
[delphi:53482] [ 8] ./heatSimulation[0x40b4ef]
[delphi:53482] [ 9] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7f63cea253d5]
[delphi:53482] [10] ./heatSimulation[0x40b71f]
[delphi:53482] *** End of error message ***
[delphi:53484] *** Process received signal ***
[delphi:53484] Signal: Segmentation fault (11)
[delphi:53484] Signal code: Address not mapped (1)
[delphi:53484] Failing at address: 0x10
[delphi:53486] [ 0] /lib64/libpthread.so.0(+0xf5d0)[0x7fe2f7e8b5d0]
[delphi:53486] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7fe2f762f080]
[delphi:53486] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x171ec)[0x7fe2f762f1ec]
[delphi:53486] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstWriterOpen+0xc6)[0x7fe2f7625ba6]
[delphi:53486] [ 4] [delphi:53487] *** Process received signal ***
[delphi:53487] Signal: Segmentation fault (11)
[delphi:53487] Signal code: Address not mapped (1)
[delphi:53487] Failing at address: 0x10
[delphi:53487] [ 0] [delphi:53496] *** Process received signal ***
[delphi:53496] Signal: Segmentation fault (11)
[delphi:53496] Signal code: Address not mapped (1)
[delphi:53496] Failing at address: 0x10
[delphi:53496] [ 0] [delphi:53498] *** Process received signal ***
[delphi:53498] Signal: Segmentation fault (11)
[delphi:53498] Signal code: Address not mapped (1)
[delphi:53498] Failing at address: 0x10
[delphi:53484] [ 0] /lib64/libpthread.so.0(+0xf5d0)[0x7fa4407215d0]
[delphi:53484] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7fa43fec5080]
[delphi:53484] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x171ec)[0x7fa43fec51ec]
[delphi:53484] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstWriterOpen+0xc6)[0x7fa43febbba6]
[delphi:53484] [ 4] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstWriterC2ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x167)[0x7fa441bd9827]
[delphi:53484] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x5f3)[0x7fa4418e0003]
[delphi:53484] [ 6] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7fa441c413d3]
[delphi:53484] [ 7] ./heatSimulation[0x40fb36]
[delphi:53484] [ 8] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstWriterC2ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x167)[0x7fe2f9343827]
[delphi:53486] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x5f3)[0x7fe2f904a003]
[delphi:53486] [ 6] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7fe2f93ab3d3]
[delphi:53486] [ 7] ./heatSimulation[0x40fb36]
[delphi:53486] [ 8] ./heatSimulation[0x40b4ef]
[delphi:53486] [ 9] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7fe2f7ad13d5]
[delphi:53486] [10] ./heatSimulation[0x40b71f]
[delphi:53486] *** End of error message ***
/lib64/libpthread.so.0(+0xf5d0)[0x7efcb0ff15d0]
[delphi:53487] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7efcb0795080]
[delphi:53487] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x171ec)[0x7efcb07951ec]
[delphi:53487] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstWriterOpen+0xc6)[0x7efcb078bba6]
[delphi:53487] [ 4] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstWriterC2ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x167)[0x7efcb24a9827]
[delphi:53487] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x5f3)[0x7efcb21b0003]
[delphi:53487] [ 6] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7efcb25113d3]
[delphi:53487] [ 7] ./heatSimulation[0x40fb36]
[delphi:53487] [ 8] ./heatSimulation[0x40b4ef]
[delphi:53487] [ 9] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7efcb0c373d5]
[delphi:53487] [10] ./heatSimulation[0x40b71f]
[delphi:53487] *** End of error message ***
/lib64/libpthread.so.0(+0xf5d0)[0x7fa144f785d0]
[delphi:53496] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7fa14471c080]
[delphi:53496] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x171ec)[0x7fa14471c1ec]
[delphi:53496] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstWriterOpen+0xc6)[0x7fa144712ba6]
[delphi:53496] [ 4] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstWriterC2ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x167)[0x7fa146430827]
[delphi:53496] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x5f3)[0x7fa146137003]
[delphi:53496] [ 6] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7fa1464983d3]
[delphi:53496] [ 7] ./heatSimulation[0x40fb36]
[delphi:53496] [ 8] ./heatSimulation[0x40b4ef]
[delphi:53496] [ 9] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7fa144bbe3d5]
[delphi:53496] [10] [delphi:53498] [ 0] /lib64/libpthread.so.0(+0xf5d0)[0x7f124180d5d0]
[delphi:53498] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7f1240fb1080]
[delphi:53498] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x172ff)[0x7f1240fb12ff]
[delphi:53498] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstReaderOpen+0xaa)[0x7f1240fa49fa]
[delphi:53498] [ 4] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstReaderC1ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x161)[0x7f1242cb2be1]
[delphi:53498] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x71e)[0x7f12429cc12e]
[delphi:53498] [ 6] ./heatSimulation[0x40b71f]
[delphi:53496] *** End of error message ***
./heatSimulation[0x40b4ef]
[delphi:53484] [ 9] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7fa4403673d5]
[delphi:53484] [10] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7f1242d2d3d3]
[delphi:53498] [ 7] ./heatAnalysis[0x40a827]
[delphi:53498] [ 8] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7f12414533d5]
[delphi:53498] [ 9] ./heatAnalysis[0x40ba5f]
[delphi:53498] *** End of error message ***
./heatSimulation[0x40b71f]
[delphi:53484] *** End of error message ***
[delphi:53499] *** Process received signal ***
[delphi:53499] Signal: Segmentation fault (11)
[delphi:53499] Signal code: Address not mapped (1)
[delphi:53499] Failing at address: 0x10
[delphi:53499] [ 0] /lib64/libpthread.so.0(+0xf5d0)[0x7f1b289265d0]
[delphi:53499] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7f1b280ca080]
[delphi:53499] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x172ff)[0x7f1b280ca2ff]
[delphi:53499] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstReaderOpen+0xaa)[0x7f1b280bd9fa]
[delphi:53499] [ 4] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstReaderC1ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x161)[0x7f1b29dcbbe1]
[delphi:53499] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x71e)[0x7f1b29ae512e]
[delphi:53499] [ 6] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7f1b29e463d3]
[delphi:53499] [ 7] ./heatAnalysis[0x40a827]
[delphi:53499] [ 8] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7f1b2856c3d5]
[delphi:53499] [ 9] ./heatAnalysis[0x40ba5f]
[delphi:53499] *** End of error message ***
[delphi:53485] *** Process received signal ***
[delphi:53485] Signal: Segmentation fault (11)
[delphi:53485] Signal code: Address not mapped (1)
[delphi:53485] Failing at address: 0x10
[delphi:53485] [ 0] /lib64/libpthread.so.0(+0xf5d0)[0x7fc7d7b995d0]
[delphi:53485] [ 1] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x17080)[0x7fc7d733d080]
[delphi:53485] [ 2] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(+0x171ec)[0x7fc7d733d1ec]
[delphi:53485] [ 3] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/../lib64/libadios2_sst.so.2(SstWriterOpen+0xc6)[0x7fc7d7333ba6]
[delphi:53485] [ 4] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core6engine9SstWriterC2ERNS0_2IOERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x167)[0x7fc7d9051827]
[delphi:53485] [ 5] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios24core2IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0x5f3)[0x7fc7d8d58003]
[delphi:53485] [ 6] /storage/users/khuck/src/ADIOS2/install_mpi/lib64/libadios2.so.2(_ZN6adios22IO4OpenERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEENS_4ModeEP19ompi_communicator_t+0xe3)[0x7fc7d90b93d3]
[delphi:53485] [ 7] ./heatSimulation[0x40fb36]
[delphi:53485] [ 8] ./heatSimulation[0x40b4ef]
[delphi:53485] [ 9] /lib64/libc.so.6(__libc_start_main+0xf5)[0x7fc7d77df3d5]
[delphi:53485] [10] ./heatSimulation[0x40b71f]
[delphi:53485] *** End of error message ***
--------------------------------------------------------------------------
Primary job terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun noticed that process rank 7 with PID 0 on node delphi exited on signal 11 (Segmentation fault).
--------------------------------------------------------------------------
```
And the backtrace from one of the ranks:
```
[khuck@delphi cpp]$ gdb ./heatSimulation core.56907
ImportError: No module named site
[khuck@delphi cpp]$ module unload python
[khuck@delphi cpp]$ gdb ./heatSimulation core.56907
GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-114.el7
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /storage/users/khuck/src/adiosvm/Tutorial/heat2d/cpp/heatSimulation...done.
[New LWP 56907]
[New LWP 56929]
[New LWP 57462]
[New LWP 56941]
[New LWP 57851]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
btCore was generated by `./heatSimulation sim.bp 4 4 64 64 100 10'.
Program terminated with signal 11, Segmentation fault.
#0 0x00007fef071c3080 in fi_ep_bind (flags=0, bfid=0x157b120, ep=0x0) at /usr/include/rdma/fi_endpoint.h:168
168 return ep->fid.ops->bind(&ep->fid, bfid, flags);
Missing separate debuginfos, use: debuginfo-install bzip2-libs-1.0.6-13.el7.x86_64 elfutils-libelf-0.172-2.el7.x86_64 elfutils-libs-0.172-2.el7.x86_64 infinipath-psm-3.3-26_g604758e_open.2.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-37.el7_6.x86_64 libattr-2.4.46-13.el7.x86_64 libcap-2.22-9.el7.x86_64 libcom_err-1.42.9-13.el7.x86_64 libfabric-1.6.1-2.el7.x86_64 libffi-3.0.13-18.el7.x86_64 libibverbs-17.2-3.el7.x86_64 libnl3-3.2.28-4.el7.x86_64 libpciaccess-0.14-1.el7.x86_64 libpsm2-10.3.58-1.el7.x86_64 librdmacm-17.2-3.el7.x86_64 libselinux-2.5-14.1.el7.x86_64 libsodium13-1.0.5-1.el7.x86_64 libuuid-2.23.2-59.el7_6.1.x86_64 numactl-libs-2.0.9-7.el7.x86_64 openpgm-5.2.122-2.el7.x86_64 pcre-8.32-17.el7.x86_64 systemd-libs-219-62.el7.x86_64 zeromq-4.1.4-5.el7.x86_64 zlib-1.2.7-18.el7.x86_64
(gdb) bt
#0 0x00007fef071c3080 in fi_ep_bind (flags=0, bfid=0x157b120, ep=0x0) at /usr/include/rdma/fi_endpoint.h:168
#1 init_fabric (fabric=0x1578c40, Params=<optimized out>)
at /home/users/khuck/src/ADIOS2/source/adios2/toolkit/sst/dp/rdma_dp.c:198
#2 0x00007fef071c31ec in RdmaInitWriter (Svcs=0x7fef073cbac0 <Svcs>, CP_Stream=0x155c420, Params=0x155c2f8)
at /home/users/khuck/src/ADIOS2/source/adios2/toolkit/sst/dp/rdma_dp.c:558
#3 0x00007fef071b9ba6 in SstWriterOpen (Name=Name@entry=0x155c3e0 "sim.bp", Params=Params@entry=0x155c2f8,
comm=comm@entry=0x155a710) at /home/users/khuck/src/ADIOS2/source/adios2/toolkit/sst/cp/cp_writer.c:1124
#4 0x00007fef08ed7827 in adios2::core::engine::SstWriter::SstWriter(adios2::core::IO&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode, ompi_communicator_t*) ()
at /home/users/khuck/src/ADIOS2/source/adios2/engine/sst/SstWriter.cpp:35
#5 0x00007fef08bde003 in construct<adios2::core::engine::SstWriter, adios2::core::IO&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode const&, ompi_communicator_t*&>
(this=<optimized out>, __p=0x155c230) at /storage/packages/gcc/8.1/include/c++/8.1.0/new:169
#6 construct<adios2::core::engine::SstWriter, adios2::core::IO&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode const&, ompi_communicator_t*&> (__a=...,
__p=0x155c230) at /storage/packages/gcc/8.1/include/c++/8.1.0/bits/alloc_traits.h:475
#7 _Sp_counted_ptr_inplace<adios2::core::IO&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode const&, ompi_communicator_t*&> (__a=..., this=0x155c220)
at /storage/packages/gcc/8.1/include/c++/8.1.0/bits/shared_ptr_base.h:549
#8 __shared_count<adios2::core::engine::SstWriter, std::allocator<adios2::core::engine::SstWriter>, adios2::core::IO&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode const&, ompi_communicator_t*&> (__a=..., this=<optimized out>)
at /storage/packages/gcc/8.1/include/c++/8.1.0/bits/shared_ptr_base.h:662
#9 __shared_ptr<std::allocator<adios2::core::engine::SstWriter>, adios2::core::IO&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode const&, ompi_communicator_t*&> (
__a=..., __tag=..., this=<optimized out>)
at /storage/packages/gcc/8.1/include/c++/8.1.0/bits/shared_ptr_base.h:1328
#10 shared_ptr<std::allocator<adios2::core::engine::SstWriter>, adios2::core::IO&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode const&, ompi_communicator_t*&> (
__a=..., __tag=..., this=<optimized out>)
at /storage/packages/gcc/8.1/include/c++/8.1.0/bits/shared_ptr.h:360
---Type <return> to continue, or q <return> to quit---
#11 allocate_shared<adios2::core::engine::SstWriter, std::allocator<adios2::core::engine::SstWriter>, adios2::core::IO&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode const&, ompi_communicator_t*&> (__a=...)
at /storage/packages/gcc/8.1/include/c++/8.1.0/bits/shared_ptr.h:707
#12 make_shared<adios2::core::engine::SstWriter, adios2::core::IO&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode const&, ompi_communicator_t*&> ()
at /storage/packages/gcc/8.1/include/c++/8.1.0/bits/shared_ptr.h:723
#13 adios2::core::IO::Open(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode, ompi_communicator_t*) () at /home/users/khuck/src/ADIOS2/source/adios2/core/IO.cpp:567
#14 0x00007fef08f3f3d3 in adios2::IO::Open(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, adios2::Mode, ompi_communicator_t*) ()
at /home/users/khuck/src/ADIOS2/bindings/CXX11/adios2/cxx11/IO.cpp:112
#15 0x000000000040fb36 in IO::IO(Settings const&, ompi_communicator_t*) () at simulation/IO_adios2.cpp:79
#16 0x000000000040b4ef in main () at simulation/heatSimulation.cpp:78
#17 0x00007fef076653d5 in __libc_start_main (main=0x40b320 <main>, argc=8, argv=0x7ffe942a12e8,
init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe942a12d8)
at ../csu/libc-start.c:266
#18 0x000000000040b71f in _start () at simulation/IO_adios2.cpp:118
```Eisenhauer, GregEisenhauer, Greghttps://code.ornl.gov/pnb/ADIOS2/-/issues/1710difficulties building rpm package for adios22019-10-01T11:48:04ZPodhorszki, Norbertdifficulties building rpm package for adios2*Created by: olesenm*
I was attempting to get an [ADIOS2 science package](https://build.opensuse.org/package/show/science/adios2) for openSUSE. I thought it could just be as simple as swapping out autoconfig for cmake, but ran into some...*Created by: olesenm*
I was attempting to get an [ADIOS2 science package](https://build.opensuse.org/package/show/science/adios2) for openSUSE. I thought it could just be as simple as swapping out autoconfig for cmake, but ran into some issues.
It is still a rough work-in-progress, but I've attached a tar file with specs etc.
The main issue seems to be with the different ideas of the file-system or build root.
The RPM build is within a BUILDROOT/ structure, which means that stuff like /usr/lib64/cmake/... are actually found below that.
I figured there must be a kitware guy (eg, @chuckatkins) who can resolve this in an instant.
[adios2-rpm-build.tar.gz](https://github.com/ornladios/ADIOS2/files/3560422/adios2-rpm-build.tar.gz)
https://code.ornl.gov/pnb/ADIOS2/-/issues/1705Python write api does not check for non-contiguous or non-c-layout numpy arrays2019-10-16T17:30:59ZPodhorszki, NorbertPython write api does not check for non-contiguous or non-c-layout numpy arrays*Created by: isosc*
Issue: Numpy arrays which are not contiguous C-ordered arrays are not properly understood by the write API, leading to missing or out-of-order data in ADIOS2. Currently can work around by making a c-ordered copy (whi...*Created by: isosc*
Issue: Numpy arrays which are not contiguous C-ordered arrays are not properly understood by the write API, leading to missing or out-of-order data in ADIOS2. Currently can work around by making a c-ordered copy (which is expensive for large arrays), but generally it seems like the python bindings should check order and handle appropriately.
Code example:
---
```python
from mpi4py import MPI
import adios2 as ad
import numpy as np
import sys
dd = np.array([[111,112,113,114],[121,122,123,124],[131,132,133,134]])
global_shape = dd.shape
local_shape = dd.shape
offset = [0,0]
print ("Original order:")
print (dd)
#Write using c order
with ad.open('c.bp','w', MPI.COMM_WORLD) as fh:
fh.write('myvar',np.copy(dd,'C'),global_shape,offset,local_shape)
with ad.open('c.bp','r', MPI.COMM_WORLD) as fh:
aa = fh.read('myvar')
print ("Written with c order:")
print (aa)
#write using fortran order
with ad.open('f.bp','w', MPI.COMM_WORLD) as fh:
fh.write('myvar',np.copy(dd,'F'),global_shape,offset,local_shape)
with ad.open('f.bp','r', MPI.COMM_WORLD) as fh:
aa = fh.read('myvar')
print ("Written with fortran order:")
print (aa)
```
---
Result:
Original order:
[[111 112 113 114]
[121 122 123 124]
[131 132 133 134]]
Written with c order:
[[111 112 113 114]
[121 122 123 124]
[131 132 133 134]]
Written with fortran order:
[[111 121 131 112]
[122 132 113 123]
[133 114 124 134]]
https://code.ornl.gov/pnb/ADIOS2/-/issues/1675Fail to build ADIOS2 in Bebop2019-09-03T18:30:40ZPodhorszki, NorbertFail to build ADIOS2 in Bebop*Created by: tongshu83*
$ module unload intel-mkl/2017.3.196-v7uuj6z
$ module load intel/17.0.4-74uvhji
$ module load intel-mpi/2017.3-dfphq6k
$ module load libpsm2/10.3-17
$ module load cmake/3.13.4-354d6wl
$ module load jdk/8u141...*Created by: tongshu83*
$ module unload intel-mkl/2017.3.196-v7uuj6z
$ module load intel/17.0.4-74uvhji
$ module load intel-mpi/2017.3-dfphq6k
$ module load libpsm2/10.3-17
$ module load cmake/3.13.4-354d6wl
$ module load jdk/8u141-b15-mopj6qr
$ module load tcl/8.6.6-x4wnbsg
$ module load bzip2/1.0.6-hcvyuh5
$ module load zlib/1.2.11-6632jqd
$ module load anaconda3/5.2.0
$ cd ADIOS2
$ mkdir build
$ cd build
$ cmake -DCMAKE_INSTALL_PREFIX=../../install/adios2 -DADIOS2_USE_Fortran=OFF ..
...
ADIOS2 build configuration:
ADIOS Version: 2.4.0.239
C++ Compiler : GNU 4.8.5
/usr/bin/c++
Installation prefix: /lcrc/project/PACC/tong/HPC_Autotuner/install/adios2
bin: bin
lib: lib64
include: include
cmake: lib64/cmake/adios2
python: lib64/python3.6/site-packages
Features:
Library Type: shared
Build Type: Release
Testing: ON
Build Options:
Blosc : OFF
BZip2 : ON
ZFP : OFF
SZ : OFF
MGARD : OFF
PNG : ON
MPI : ON
DataMan : OFF
Table : OFF
SSC : OFF
SST : ON
DataSpaces: OFF
ZeroMQ : OFF
HDF5 : OFF
Python : ON
Fortran : OFF
SysVShMem: ON
Profiling: ON
Endian_Reverse: OFF
RDMA Transport for Staging: Available
-- Configuring done
-- Generating done
$ make -j8
...
[ 48%] Linking CXX shared library ../../lib64/libadios2.so
[ 48%] Built target adios2
Scanning dependencies of target sst_conn_tool
Scanning dependencies of target TestADIOSInterfaceWrite
Scanning dependencies of target TestADIOSInterface
Scanning dependencies of target TestADIOSNoMpi
Scanning dependencies of target bpls
Scanning dependencies of target adios_reorganize
[ 48%] Building CXX object testing/adios2/interface/CMakeFiles/TestADIOSInterface.dir/TestADIOSInterface.cpp.o
[ 48%] Building C object source/adios2/toolkit/sst/util/CMakeFiles/sst_conn_tool.dir/sst_conn_tool.c.o
[ 48%] Building CXX object testing/adios2/interface/CMakeFiles/TestADIOSInterfaceWrite.dir/TestADIOSInterfaceWrite.cpp.o
[ 48%] Building CXX object testing/adios2/interface/CMakeFiles/TestADIOSNoMpi.dir/TestADIOSNoMpi.cpp.o
[ 49%] Building CXX object source/utils/CMakeFiles/bpls.dir/bpls/bpls.cpp.o
[ 50%] Building CXX object source/utils/CMakeFiles/adios_reorganize.dir/adios_reorganize/main.cpp.o
Scanning dependencies of target adios_iotest
[ 50%] Building CXX object source/utils/adios_iotest/CMakeFiles/adios_iotest.dir/settings.cpp.o
[ 51%] Linking C executable ../../../../../bin/sst_conn_tool
[ 51%] Building CXX object source/utils/adios_iotest/CMakeFiles/adios_iotest.dir/decomp.cpp.o
/usr/bin/ld: warning: libpsm_infinipath.so.1, needed by //usr/lib64/libfabric.so.1, not found (try using -rpath or -rpath-link)
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_fp_msg@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_get_parameters'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_isend'
../../../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_begin_read_from_memory'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_reply_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_info_query@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_getctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_num_devunits'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_send'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open_opts_get_defaults'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_ipeek_dequeue_multi@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_request_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_connect'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_cancel'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_am_register_handlers_2@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_close'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_ipeek'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_setctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_test'
../../../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_finish_read'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_irecv'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_iprobe'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_epid_lookup'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_register_handler'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_register_handlers'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open'
//usr/lib64/libfabric.so.1: undefined reference to `psm_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_get_string'
collect2: error: ld returned 1 exit status
make[2]: *** [bin/sst_conn_tool] Error 1
make[1]: *** [source/adios2/toolkit/sst/util/CMakeFiles/sst_conn_tool.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 51%] Building CXX object source/utils/CMakeFiles/adios_reorganize.dir/adios_reorganize/Reorganize.cpp.o
[ 51%] Building CXX object source/utils/adios_iotest/CMakeFiles/adios_iotest.dir/processConfig.cpp.o
[ 51%] Building CXX object source/utils/CMakeFiles/adios_reorganize.dir/Utils.cpp.o
[ 51%] Linking CXX executable ../../../bin/TestADIOSNoMpi
/usr/bin/ld: warning: libpsm_infinipath.so.1, needed by //usr/lib64/libfabric.so.1, not found (try using -rpath or -rpath-link)
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_fp_msg@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_get_parameters'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_isend'
../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_begin_read_from_memory'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_reply_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_info_query@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_getctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_num_devunits'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_send'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open_opts_get_defaults'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_ipeek_dequeue_multi@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_request_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_connect'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_cancel'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_am_register_handlers_2@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_close'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_ipeek'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_setctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_test'
../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_finish_read'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_irecv'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_iprobe'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_epid_lookup'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_register_handler'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_register_handlers'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open'
//usr/lib64/libfabric.so.1: undefined reference to `psm_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_get_string'
collect2: error: ld returned 1 exit status
make[2]: *** [bin/TestADIOSNoMpi] Error 1
make[1]: *** [testing/adios2/interface/CMakeFiles/TestADIOSNoMpi.dir/all] Error 2
[ 51%] Building CXX object source/utils/adios_iotest/CMakeFiles/adios_iotest.dir/ioGroup.cpp.o
Scanning dependencies of target adios2py
[ 51%] Building CXX object source/utils/CMakeFiles/bpls.dir/__/__/thirdparty/pugixml/pugixml/src/pugixml.cpp.o
[ 51%] Building CXX object bindings/Python/CMakeFiles/adios2py.dir/py11ADIOS.cpp.o
[ 51%] Building CXX object bindings/Python/CMakeFiles/adios2py.dir/py11IO.cpp.o
[ 52%] Linking CXX executable ../../bin/adios_reorganize
[ 52%] Linking CXX executable ../../../bin/TestADIOSInterfaceWrite
/usr/bin/ld: warning: libpsm_infinipath.so.1, needed by //usr/lib64/libfabric.so.1, not found (try using -rpath or -rpath-link)
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_fp_msg@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_get_parameters'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_isend'
../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_begin_read_from_memory'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_reply_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_info_query@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_getctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_num_devunits'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_send'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open_opts_get_defaults'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_ipeek_dequeue_multi@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_request_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_connect'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_cancel'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_am_register_handlers_2@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_close'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_ipeek'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_setctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_test'
../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_finish_read'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_irecv'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_iprobe'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_epid_lookup'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_register_handler'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_register_handlers'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open'
//usr/lib64/libfabric.so.1: undefined reference to `psm_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_get_string'
collect2: error: ld returned 1 exit status
make[2]: *** [bin/adios_reorganize] Error 1
make[1]: *** [source/utils/CMakeFiles/adios_reorganize.dir/all] Error 2
[ 53%] Building CXX object source/utils/adios_iotest/CMakeFiles/adios_iotest.dir/stream.cpp.o
/usr/bin/ld: warning: libpsm_infinipath.so.1, needed by //usr/lib64/libfabric.so.1, not found (try using -rpath or -rpath-link)
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_fp_msg@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_get_parameters'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_isend'
../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_begin_read_from_memory'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_reply_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_info_query@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_getctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_num_devunits'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_send'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open_opts_get_defaults'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_ipeek_dequeue_multi@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_request_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_connect'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_cancel'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_am_register_handlers_2@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_close'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_ipeek'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_setctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_test'
../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_finish_read'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_irecv'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_iprobe'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_epid_lookup'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_register_handler'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_register_handlers'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open'
//usr/lib64/libfabric.so.1: undefined reference to `psm_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_get_string'
collect2: error: ld returned 1 exit status
make[2]: *** [bin/TestADIOSInterfaceWrite] Error 1
make[1]: *** [testing/adios2/interface/CMakeFiles/TestADIOSInterfaceWrite.dir/all] Error 2
[ 53%] Building CXX object source/utils/adios_iotest/CMakeFiles/adios_iotest.dir/adiosStream.cpp.o
[ 53%] Building CXX object source/utils/adios_iotest/CMakeFiles/adios_iotest.dir/adios_iotest.cpp.o
[ 53%] Building CXX object bindings/Python/CMakeFiles/adios2py.dir/py11Variable.cpp.o
[ 53%] Linking CXX executable ../../../bin/TestADIOSInterface
[ 54%] Building CXX object bindings/Python/CMakeFiles/adios2py.dir/py11Attribute.cpp.o
/usr/bin/ld: warning: libpsm_infinipath.so.1, needed by //usr/lib64/libfabric.so.1, not found (try using -rpath or -rpath-link)
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_fp_msg@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_get_parameters'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_isend'
../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_begin_read_from_memory'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_reply_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_info_query@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_getctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_num_devunits'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_send'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open_opts_get_defaults'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_ipeek_dequeue_multi@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_request_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_connect'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_cancel'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_am_register_handlers_2@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_close'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_ipeek'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_setctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_test'
../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_finish_read'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_irecv'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_iprobe'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_epid_lookup'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_register_handler'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_register_handlers'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open'
//usr/lib64/libfabric.so.1: undefined reference to `psm_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_get_string'
collect2: error: ld returned 1 exit status
make[2]: *** [bin/TestADIOSInterface] Error 1
make[1]: *** [testing/adios2/interface/CMakeFiles/TestADIOSInterface.dir/all] Error 2
[ 54%] Building CXX object bindings/Python/CMakeFiles/adios2py.dir/py11Engine.cpp.o
[ 54%] Building CXX object bindings/Python/CMakeFiles/adios2py.dir/py11Operator.cpp.o
[ 54%] Building CXX object bindings/Python/CMakeFiles/adios2py.dir/py11File.cpp.o
[ 54%] Linking CXX executable ../../../bin/adios_iotest
/usr/bin/ld: warning: libpsm_infinipath.so.1, needed by //usr/lib64/libfabric.so.1, not found (try using -rpath or -rpath-link)
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_fp_msg@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_get_parameters'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_isend'
../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_begin_read_from_memory'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_reply_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_info_query@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_getctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_num_devunits'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_send'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open_opts_get_defaults'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_ipeek_dequeue_multi@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_request_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_connect'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_cancel'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_am_register_handlers_2@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_close'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_ipeek'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_setctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_test'
../../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_finish_read'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_irecv'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_iprobe'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_epid_lookup'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_register_handler'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_register_handlers'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open'
//usr/lib64/libfabric.so.1: undefined reference to `psm_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_get_string'
collect2: error: ld returned 1 exit status
make[2]: *** [bin/adios_iotest] Error 1
make[1]: *** [source/utils/adios_iotest/CMakeFiles/adios_iotest.dir/all] Error 2
[ 54%] Building CXX object bindings/Python/CMakeFiles/adios2py.dir/py11glue.cpp.o
[ 54%] Linking CXX executable ../../bin/bpls
/usr/bin/ld: warning: libpsm_infinipath.so.1, needed by //usr/lib64/libfabric.so.1, not found (try using -rpath or -rpath-link)
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_fp_msg@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_get_parameters'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_isend'
../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_begin_read_from_memory'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_reply_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_info_query@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_getctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_num_devunits'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_send'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open_opts_get_defaults'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_mq_ipeek_dequeue_multi@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_request_short'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_connect'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_cancel'
//usr/lib64/libfabric.so.1: undefined reference to `psm2_am_register_handlers_2@PSM2_1.0'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_close'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_ipeek'
//usr/lib64/libfabric.so.1: undefined reference to `psm_epaddr_setctxt'
//usr/lib64/libfabric.so.1: undefined reference to `psm_finalize'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_test'
../../lib64/libadios2.so.2.4.0: undefined reference to `png_image_finish_read'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_irecv'
//usr/lib64/libfabric.so.1: undefined reference to `psm_mq_iprobe'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_epid_lookup'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_register_handler'
//usr/lib64/libfabric.so.1: undefined reference to `psm_am_register_handlers'
//usr/lib64/libfabric.so.1: undefined reference to `psm_ep_open'
//usr/lib64/libfabric.so.1: undefined reference to `psm_init'
//usr/lib64/libfabric.so.1: undefined reference to `psm_error_get_string'
collect2: error: ld returned 1 exit status
make[2]: *** [bin/bpls] Error 1
make[1]: *** [source/utils/CMakeFiles/bpls.dir/all] Error 2
[ 55%] Linking CXX shared module ../../lib64/python3.6/site-packages/adios2.cpython-36m-x86_64-linux-gnu.so
[ 55%] Built target adios2py
make: *** [all] Error 2
[tshu@beboplogin2 HPC_Autotuner]$ vi build-adios2.sh
E575: viminfo: Illegal starting char in line: 0/time.txt
E575: viminfo: Illegal starting char in line: ^I"^I1^I0
Could you please let me know how to fix this issue? Thank you very much!
Eisenhauer, GregEisenhauer, Greghttps://code.ornl.gov/pnb/ADIOS2/-/issues/1665Reading Fortran data using python interface2019-08-09T21:33:40ZPodhorszki, NorbertReading Fortran data using python interface*Created by: germasch*
When reading data written by a Fortran code using python, indices end up being reversed:
Sample Fortran code (it's based on the included heatmap test)
```fortran
program TestBPWriteReadHeatMap2D
use mpi
...*Created by: germasch*
When reading data written by a Fortran code using python, indices end up being reversed:
Sample Fortran code (it's based on the included heatmap test)
```fortran
program TestBPWriteReadHeatMap2D
use mpi
use adios2
implicit none
type(adios2_adios) :: adios
type(adios2_io) :: ioPut
type(adios2_engine) :: bpWriter
type(adios2_variable) :: var
real(kind=8) :: temperature(0:4, 0:9)
integer(kind=8), parameter :: ishape(2) = (/5, 10/)
integer(kind=8), parameter :: istart(2) = (/0, 0/)
integer :: ierr
call mpi_init(ierr)
call adios2_init(adios, MPI_COMM_WORLD, adios2_debug_mode_on, ierr)
call random_number(temperature)
print*, 'sample temperature(2,8) =', temperature(2, 8)
call adios2_declare_io(ioPut, adios, 'HeatMapWrite', ierr)
call adios2_define_variable(var, ioPut, 'temperature', adios2_type_dp, &
2, ishape, istart, ishape, &
adios2_constant_dims, ierr)
call adios2_open(bpWriter, ioPut, 'HeatMap2D_f.bp', adios2_mode_write, &
ierr)
call adios2_put(bpWriter, var, temperature, ierr)
call adios2_close(bpWriter, ierr)
call adios2_finalize(adios, ierr)
call mpi_finalize(ierr)
end program TestBPWriteReadHeatMap2D
```
Output:
```sh
[kai@macbook build-fortran (pr/fix-mgard *)]$ bin/test_fortran
sample temperature(2,8) = 0.13062623044039723
```
Reading the bp file from Python:
```
import adios2
fh = adios2.open("/Users/kai/build/ADIOS2/build-fortran/HeatMap2D_f.bp", "r")
t = fh.read('temperature')
print(t[2, 8])
```
gives
```
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-10-cf0fcf0017a8> in <module>
2 fh = adios2.open("/Users/kai/build/ADIOS2/build-fortran/HeatMap2D_f.bp", "r")
3 t = fh.read('temperature')
----> 4 print(t[2, 8])
IndexError: index 8 is out of bounds for axis 1 with size 5
```
To access the Fortran data element `t(2, 8)` from Python, one has to reverse the index order:
```python
>>> print(t[8, 2])
0.13062623044039723
```
This is related to #1661 , but actually fixable without API additions.https://code.ornl.gov/pnb/ADIOS2/-/issues/1661data layout / BP-X2019-08-10T20:52:17ZPodhorszki, Norbertdata layout / BP-X*Created by: germasch*
This is somewhat BP-X related, but also a more generic API issue, so I figured I'll put the details here.
## Language-independent handling of row-major vs col-major data layout
Here's a proposal to increase ...*Created by: germasch*
This is somewhat BP-X related, but also a more generic API issue, so I figured I'll put the details here.
## Language-independent handling of row-major vs col-major data layout
Here's a proposal to increase flexibility in handling data layout while keeping the existing behavior / APIs unchanged.
### Rationale
Currently, the ADIOS2 API is built around the assumption that the language of the API bindings determines the data layout that the application is using, in particular Fortran/Matlab/R: column-major; otherwise: row-major (see `adiosSystem.cpp`). That covers most common applications. In particular reading and writing data from the same language works nicely. However, mixing languages or data layouts is more complicated.
When Fortran writes, say, a 400x200 (column-major) array, it will be presented in the C/C++ API as a 200x400 row-major array. In order to present the data as a row-major array, there are only two options: reverse the shape, or transpose the data. Since transposition is potentially expensive, ADIOS2 make the perfectly reasonable choice to instead reverse the dimensions.
However, the assumption that the language of the API determines the data layout used is not always valid. For example:
- The main part of a legacy code remains written in Fortran, hence it's using column-major data layout for its arrays. However, some parts of the code are rewritten in C++, e.g., in order to enable use of CUDA / Kokkos (this is currently happening for XGC). At this point, if one writes data using the adios2 C++ API, it makes the assumption that the data layout is row-major, even though it actually is not. This can be worked around on the application side by pretending that the column-data is row-major if the app reverses dims itself. However, one loses the information whether a dataset is actually row-major, or just pretending to be.
- Essentially the same issue happens in a pure C++ code that uses data structures that aren't (necessarily) row-major, like, e.g., xtensor or Kokkos Views. Again, it can be worked around by reversing dims on the application side, but the info what the real layout is gets lost.
- A general visualization app, say written in C++, sees a data set of size (200x400). It doesn't know whether that means there are really 200 points in x direction and 400 points in y direction, or whether it is looking at an actual 400x200 data set that had been written using the Fortran API. This is somewhat solved for the unique language->layout mapping case by #1573, though (a) the app has to go down to the block level to check the `IsReverseDims` flag and (b) the `IsReverseDims` flag doesn't directly tell the original data layout, but requires additional logic from the application. The viz app then has to reverse dims itself again to read data into a data structure using the original layout.
The visualization app still has no way of knowing whether the writing app had reversed the dims itself because it falls into either of the cases above.
### How relevant is this?
- XGC is going to a mixed Fortran / C++ model, where C++ is using col-major data structures. For now, writing the data is still handled in Fortran, so there is no actual issue yet.
- My particle-in-cell code (PSC) falls into the category of a C++ code using column-major data layout (for historic reasons), so I currently I'm passing fake (reversed) dims to ADIOS2 to make things work. (Actually, the same has to be done when using HDF5, but I think this is really a weakness of HDF5 which shouldn't be perpetuated.)
- @berkgeveci supported the usefulness of knowing row-major vs col-major in #1553.
### Proposed data format changes
BP3 / BP4 have global flags that indicate the host language, ie., assumed data layout. That's helpful, but having per-dataset granularity would be better. Per-dataset granualarity would be better, so one could write both row-major and col-major dataset into the same file. The API changes I'm proposing don't necessarily require changes to the data format, which might well be not possible at this point for compatibility reasons, but I think it'd be good to consider this for future evolutions of the data formats. One could use attributes to store the information as attributes given that existing mechanism, but I think it's a bit iffy since there is no distinction between user-defined and system-defined attributes, so there could be
conflicts if one were to do that.)
The existing BP3 / BP4 would support the additional API described below, but they would not support mixing row-major and col-major datasets in a single file.
### Proposed API
(I'm just making this up as I'm writing this. But I hope it'll give a useful basis for thinking about it.)
Each dataset (`Variable`) would have a `Layout` property associated with it. When creating/inquiring variable for writing/reading, the `Layout` property would be set to the current host language.
Add a `Variable::setLayout()` function that would allow the application to override the default layout. E.g., in C++ I could go say `myVar.setLayout(Layout::ColumnMajor)` to tell adios2 that what I'm passing to it will be laid out in ColumMajor. For now, adios2 would just revere the dims for me, writing the data while pretending it's the row-major layout that it's expecting. Ideally, adios2 would also record the original data layout, but that's data format dependent
(see above).
When reading, the same mechanism would apply. If I know the data I'll be reading is actually column-major, and my data structure expects the blob of data to be in column-major, I'll do a
`myVar.SetLayout(Layout::ColumnMajor)` first. If the actual data is not already columnn-major, adios2 would reverse dims for me (basically just like what currently happens when file language and API host language don't match, but it'd be based on the layout I'm telling, not the language I'm using, though in the default case nothing would change.)
Finally, add a `Variable::GetOriginalLayout()` function, which would for a given variable tell me what the original layout was when it was written. So a dataset written by Fortran would return "ColumnMajor", while a dataset written in C++ would return "RowMajor". That way, an application that uses a data structure that supports both row-major and col-major could load the data back into the appropriate data structure. without having to deal with either reversing dims or transposing data. Something like this:
```cxx
auto myVar = InquireVariable(...);
auto layout = myVar.GetOriginalLayout();
myVar.SetLayout(layout);
auto shape = myVar.Shape();
xt::xarray<double, xt::layout_type::dynamic> var;
if (layout == Layout::RowMajor) {
var = {shape, xt::layout_type::row_major};
} else {
var = {shape, xt::layout_type::column_major};
}
myVar.Get(var.data());
// no need to worry about data layout or reversed dims in the
// var we read from here on out, it'll just work :)
```
https://code.ornl.gov/pnb/ADIOS2/-/issues/1615Large number of data races in unit tests2019-07-30T18:23:35ZPodhorszki, NorbertLarge number of data races in unit tests*Created by: NAThompson*
In preparation for parallel reads, I added the following to the `CMakeLists.txt` and ran the unit tests:
```
if(CMAKE_BUILD_TYPE MATCHES "Debug")
if(CMAKE_CXX_COMPILER_ID MATCHES "^(AppleClang|Clang|GNU)"...*Created by: NAThompson*
In preparation for parallel reads, I added the following to the `CMakeLists.txt` and ran the unit tests:
```
if(CMAKE_BUILD_TYPE MATCHES "Debug")
if(CMAKE_CXX_COMPILER_ID MATCHES "^(AppleClang|Clang|GNU)")
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -g -O2 -Wfatal-errors -fsanitize=thread -fno-omit-frame-pointer")
endif()
endif()
```
A very large number of race conditions were detected. A few were in `pthread_create`, which arguably is bad, but not the bailiwick of ADIOS. But a large number of them are originating in ADIOS2. I have attached just one of these here, but many tests are afflicted by these problems.
[race.txt](https://github.com/ornladios/ADIOS2/files/3402662/race.txt)
https://code.ornl.gov/pnb/ADIOS2/-/issues/1576Joined arrays are not working properly anymore2019-07-30T20:23:00ZPodhorszki, NorbertJoined arrays are not working properly anymore*Created by: pnorbert*
examples/basics/joinedArray/joinedArray_write.cpp
The variable 'table' is supposed to be a global array, but it shows up as a bunch of local arrays now. Both BP3 and BP4.
```
$ mpirun -n 4 ./bin/joinedArra...*Created by: pnorbert*
examples/basics/joinedArray/joinedArray_write.cpp
The variable 'table' is supposed to be a global array, but it shows up as a bunch of local arrays now. Both BP3 and BP4.
```
$ mpirun -n 4 ./bin/joinedArray_write
$ ./bin/bpls -laD joinedArray.bp
double table 5*[4]*{__, 4} = 0 / 3.93
step 0:
block 0: [0:5, 0:3] = 0 / 0.53
block 1: [0:9, 0:3] = 1 / 1.93
block 2: [0:4, 0:3] = 2 / 2.43
block 3: [0:9, 0:3] = 3 / 3.93
step 1:
block 0: [0:5, 0:3] = 0 / 0.53
block 1: [0:9, 0:3] = 1 / 1.93
block 2: [0:4, 0:3] = 2 / 2.43
block 3: [0:9, 0:3] = 3 / 3.93
step 2:
block 0: [0:5, 0:3] = 0 / 0.53
block 1: [0:9, 0:3] = 1 / 1.93
block 2: [0:4, 0:3] = 2 / 2.43
block 3: [0:9, 0:3] = 3 / 3.93
step 3:
block 0: [0:5, 0:3] = 0 / 0.53
block 1: [0:9, 0:3] = 1 / 1.93
block 2: [0:4, 0:3] = 2 / 2.43
block 3: [0:9, 0:3] = 3 / 3.93
step 4:
block 0: [0:5, 0:3] = 0 / 0.53
block 1: [0:9, 0:3] = 1 / 1.93
block 2: [0:4, 0:3] = 2 / 2.43
block 3: [0:9, 0:3] = 3 / 3.93
```https://code.ornl.gov/pnb/ADIOS2/-/issues/1565Static build for ADIOS2 on Summit: Enet not found error during installion2019-07-19T18:35:24ZPodhorszki, NorbertStatic build for ADIOS2 on Summit: Enet not found error during installion*Created by: swatisgupta*
@eisenhauer
Hi,
The static build for ADIOS2 failed to install on Summit after compilation - It fails to find Enet. I used GNU compilers version 6.4.0. The output from make install can be found below.
...*Created by: swatisgupta*
@eisenhauer
Hi,
The static build for ADIOS2 failed to install on Summit after compilation - It fails to find Enet. I used GNU compilers version 6.4.0. The output from make install can be found below.
make install
[ 4%] Built target adios2sys_objects
[ 6%] Built target atl
[ 11%] Built target dill
[ 21%] Built target ffs
[ 22%] Built target docs
[ 26%] Built target enet
[ 37%] Built target EVPath
[ 38%] Built target cmudp
[ 39%] Built target cmselect
[ 40%] Built target cmsockets
[ 41%] Built target cmenet
[ 42%] Built target cmmulticast
[ 43%] Built target cmib
[ 44%] Built target taustubs
[ 48%] Built target sst
[ 81%] Built target adios2
[ 82%] Built target sst_conn_tool
[ 84%] Built target adios_reorganize
[ 85%] Built target bpls
[ 88%] Built target adios_iotest
[100%] Built target adios2_f
Install the project...
-- Install configuration: "Release"
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/common/ADIOSConfig.h
Pre-installation cleanup of CMake files
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/CMakeFindDependencyMacro.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindBZip2.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindBlosc.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindCrayDRC.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindHDF5.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindLIBFABRIC.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindMGARD.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindMPI.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindPkgConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindPythonFull.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindPythonModule.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindSZ.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindZFP.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindZeroMQ.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindBZip2.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindHDF5.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/fortranparam_mpi.f90.in
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/libver_mpi.c
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/libver_mpi.f90.in
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/mpiver.f90.in
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/test_mpi.c
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/test_mpi.cxx
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/test_mpi.f90.in
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/test_mpi_c.cxx
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindPkgConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/GoogleTest.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/CMakeFindDependencyMacro.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_atl.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-config.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-targets-release.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_dill.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-config-common.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-config.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-targets-release.cmake
-- Up-to-date: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindBinUtils.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindLibFFI.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_ffs.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-config.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-targets-release.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_enet.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/enet-config.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/enet-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/enet-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/enet-targets-release.cmake
-- Up-to-date: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindCERCSProject.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindIBVERBS.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindLIBFABRIC.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindNNTI.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindNVML.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindPkgConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/upstream
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/upstream/FindPkgConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_evpath.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmselect.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmsockets.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmudp.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmmulticast.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmenet.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmib.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathTargets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathTargets-release.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfigCommon.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfigVersion.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/common/ADIOSMacros.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/common/ADIOSTypes.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/common/ADIOSTypes.inl
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libtaustubs.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/toolkit/sst/SSTConfig.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_sst.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/bin/sst_conn_tool
-- Installing: /ccs/home/ssinghal/ADIOS2-install/bin/bpls
-- Installing: /ccs/home/ssinghal/ADIOS2-install/bin/adios_reorganize
-- Installing: /ccs/home/ssinghal/ADIOS2-install/bin/adios_iotest
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/coupling2.xml
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/coupling2_blocking_01_simple.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/coupling2_blocking_02_dump_result.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2.xml
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_01_simple.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_02_link.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_03_conditional.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_04_nonblocking.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_05_add_variables.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/wf_2_to_1.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/wf_2_to_1.xml
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_06_busy.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_f.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_engine_begin_step_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_parameters_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_functions_allocate_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_io_open_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_io_define_attribute_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_operator_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_functions_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_attribute_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_adios_init_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_variable_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_variable_min_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_io_define_variable_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_attribute_data_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_engine_put_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_variable_max_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_engine_get_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_adios_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_io_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_engine_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2_c.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_types.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_adios.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_io.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_variable.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_attribute.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_engine.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_operator.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/fstream/ADIOS2fstream.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/ADIOS.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/ADIOS.inl
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/IO.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Variable.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Attribute.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Engine.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Operator.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Types.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config-common.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-targets-release.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config.cmake
/tmp/tmp.bSbXtooDsS ~/ADIOS2/build
Configuring adios2-config dummy CMake project
-- The C compiler identification is GNU 6.4.0
-- The CXX compiler identification is GNU 6.4.0
-- Check for working C compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicc
-- Check for working C compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicxx
-- Check for working CXX compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicxx -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- The Fortran compiler identification is GNU 6.4.0
-- Check for working Fortran compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90
-- Check for working Fortran compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90 -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90 supports Fortran 90
-- Checking whether /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90 supports Fortran 90 -- yes
-- Found MPI_C: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicc (found version "3.1")
-- Found MPI_CXX: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicxx (found version "3.1")
-- Found MPI_Fortran: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90 (found version "3.1")
-- Found MPI: TRUE (found version "3.1")
-- Found atl: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-config.cmake (found suitable version "2.2.1", minimum required is "2.2.1")
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.27.1")
-- Checking for module 'libffi'
-- Found libffi, version 3.0.13
-- Found LibFFI: -lffi
-- Found dill: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-config.cmake (found version "2.4.0")
-- Found ffs: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-config.cmake (found suitable version "1.6.0", minimum required is "1.6.0")
-- Found EVPath: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfigCommon.cmake (found version "4.4.0")
CMake Error at /autofs/nccs-svm1_sw/summit/.swci/0-core/opt/spack/20180914/linux-rhel7-ppc64le/gcc-4.8.5/cmake-3.14.2-3zkrrk4chuq6wfhvxpmen2gzdpaoiorw/share/cmake-3.14/Modules/CMakeFindDependencyMacro.cmake:48 (find_package):
**Found package configuration file:
/ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfig.cmake
but it set EVPath_FOUND to FALSE so package "EVPath" is considered to be
NOT FOUND. Reason given by package:
The following imported targets are referenced, but are missing: enet::enet**
Call Stack (most recent call first):
/ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config-common.cmake:57 (find_dependency)
/ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config.cmake:29 (include)
CMakeLists.txt:5 (find_package)
-- Configuring incomplete, errors occurred!
See also "/tmp/tmp.bSbXtooDsS/CMakeFiles/CMakeOutput.log".
FailedEisenhauer, GregEisenhauer, Greghttps://code.ornl.gov/pnb/ADIOS2/-/issues/1558How do we build a serial application using ADIOS2 combined MPI/no-MPI library?2019-07-01T17:47:34ZPodhorszki, NorbertHow do we build a serial application using ADIOS2 combined MPI/no-MPI library?*Created by: pnorbert*
I am trying to build visit with the combined library, but it does not compile. It is using g++ without any MPI links. Including adios2.h, however, leads to including mpi.h, which is not found. Do we have a serial ...*Created by: pnorbert*
I am trying to build visit with the combined library, but it does not compile. It is using g++ without any MPI links. Including adios2.h, however, leads to including mpi.h, which is not found. Do we have a serial code test that shows how to build it with adios?
```
[ 93%] Building CXX object databases/ADIOS2/CMakeFiles/MADIOS2Database.dir/avtADIOS2FileFormat.C.o
cd /work/adios/visit3/build/databases/ADIOS2 &&
/usr/bin/g++ ... -c /work/adios/visit3/visit/src/databases/ADIOS2/avtADIOS2FileFormat.C
In file included from /opt/adios2/include/adios2/cxx11/ADIOS.h:18:0,
from /opt/adios2/include/adios2.h:18,
from /work/adios/visit3/visit/src/databases/ADIOS2/avtADIOS2BaseFileFormat.h:49,
from /work/adios/visit3/visit/src/databases/ADIOS2/avtADIOS2FileFormat.C:48:
/opt/adios2/include/adios2/cxx11/IO.h:20:17: fatal error: mpi.h: No such file or directory
```
Adding -UADIOS2_HAVE_MPI to the compile line did not help with this issue.
https://code.ornl.gov/pnb/ADIOS2/-/issues/1524summit anaconda build error2019-08-09T01:47:05ZPodhorszki, Norbertsummit anaconda build error*Created by: zeneofa*
Hi,
I am having problems trying to build adios2 on summit, using the anaconda environment. I seems that the adios2.cpython-36m-powerpc64le-linux-gnu.so file is not created all. I am building from the github mas...*Created by: zeneofa*
Hi,
I am having problems trying to build adios2 on summit, using the anaconda environment. I seems that the adios2.cpython-36m-powerpc64le-linux-gnu.so file is not created all. I am building from the github master branch
```
╰─[:)] % git rev-parse HEAD
cbaf8ca92b4550cad603522e6570f3cbf95acdba
```
The modules that I have loaded:
```
Currently Loaded Modules:
1) hsi/5.0.2.p5 3) lsf-tools/2.0 5) DefApps 7) python/3.6.6-anaconda3-5.3.0 9) cmake/3.14.2 11) magma/2.3.0
2) xalt/1.1.3 4) darshan-runtime/3.1.7 6) cuda/10.1.105 8) gcc/6.4.0 10) spectrum-mpi/10.3.0.0-20190419
```
I use the following command to build
```
mkdir adios2-build
cd adios2-build
cmake -DCMAKE_C_COMPILER=${OMPI_CC} -DCMAKE_CXX_COMPILER=${OMPI_CXX} -DCMAKE_INSTALL_PREFIX=~/software/adios2 -DADIOS2_USE_Fortran=OFF -DADIOS2_USE_ZeroMQ=OFF -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DADIOS2_USE_SST=OFF .. 2>&1 | tee cmake.configure.adios2.log
```
After this I run
```
make -j 1 2>&1 | tee make.adios2.log
```
which then errors with:
```
[ 38%] Building CXX object bindings/Python/CMakeFiles/adios2py.dir/py11glue.cpp.o
[ 39%] Linking CXX shared module ../../lib64/python3.6/site-packages/adios2.cpython-36m-powerpc64le-linux-gnu.so
lto1: internal compiler error: invalid line in the resolution file
0x101d225b lto_resolution_read
/sw/summit/gcc/6.4.0/src/gcc-6.4.0/gcc/lto/lto.c:1912
0x101d225b lto_file_read
/sw/summit/gcc/6.4.0/src/gcc-6.4.0/gcc/lto/lto.c:2092
0x101d225b read_cgraph_and_symbols
/sw/summit/gcc/6.4.0/src/gcc-6.4.0/gcc/lto/lto.c:2806
0x101d225b lto_main()
/sw/summit/gcc/6.4.0/src/gcc-6.4.0/gcc/lto/lto.c:3310
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
lto-wrapper: fatal error: /sw/summit/gcc/6.4.0/bin/g++ returned 1 exit status
compilation terminated.
/usr/bin/ld: error: lto-wrapper failed
/usr/bin/sha1sum: ../../lib64/python3.6/site-packages/adios2.cpython-36m-powerpc64le-linux-gnu.so: No such file or directory
collect2: error: ld returned 1 exit status
make[2]: *** [lib64/python3.6/site-packages/adios2.cpython-36m-powerpc64le-linux-gnu.so] Error 1
make[1]: *** [bindings/Python/CMakeFiles/adios2py.dir/all] Error 2
make: *** [all] Error 2
```
I have loaded the output logs on gist here: https://gist.github.com/zeneofa/9c6d8ccb102a8c21f45032dfce29846a
This seems to be anaconda specific, as when I use the standard python module I do not get the lto error.
```
module unload python/3.6.6-anaconda3-5.3.0
module load python/3.7.0
```
This is independent of python version, using the anaconda 3.7 version also fails.
Any help would be much appreciated. Thanks in advance.
Phttps://code.ornl.gov/pnb/ADIOS2/-/issues/1540Python bindings behave poorly with long-running C++ calls2019-06-24T15:34:46ZEisenhauer, GregPython bindings behave poorly with long-running C++ callsThis is a a follow-on to issue #1491. The generic problem is that Python wants to handle interrupt behaviour like ^C in its own way. To that end, it installs its own signal handlers, and rather than interrupting a long running native C...This is a a follow-on to issue #1491. The generic problem is that Python wants to handle interrupt behaviour like ^C in its own way. To that end, it installs its own signal handlers, and rather than interrupting a long running native C++ call it will catch the signal and then not run a handler until the C++ call returns and Python is once again in control. This means that ADIOS2 calls that can block for long periods of time (which are not uncommon in staging) are essentially uninterruptible and difficult to kill, perhaps requiring a "kill -9" on Linux or its equivalent. While #1491 was about SST reader-side open behaviour, the same thing can occur in any staging method whose reader-side doesn't time-out, where writer-side requires a rendezvous on open (RendezvousReaderCount>=1 in SST, where BeginStep can block indefinitely, where writer Close() must block until data is drained, etc. One approach to addressing this would be to modify the Python bindings to use a small timeout on things like reader-side Open(), then calling Open() in a Python-level loop until it succeeds or reaches the longer timeout value. This would allow a ^C to interrupt and Python to handle it. However, this technique is not applicable to other situations (writer-side Open(), Close() blocking, etc.). So the broader problem might require a different approach.https://code.ornl.gov/pnb/ADIOS2/-/issues/1481failure on building ADIOS22019-10-15T23:40:04ZPodhorszki, Norbertfailure on building ADIOS2*Created by: tongshu83*
I failed to build ADIOS2 in bebop. Could you please help check the issue? Thank you very much!
The building procedure is as follows.
module unload intel-mkl/2017.3.196-v7uuj6z
module load intel/17.0.4-74uvhj...*Created by: tongshu83*
I failed to build ADIOS2 in bebop. Could you please help check the issue? Thank you very much!
The building procedure is as follows.
module unload intel-mkl/2017.3.196-v7uuj6z
module load intel/17.0.4-74uvhji
module load intel-mpi/2017.3-dfphq6k
module load libpsm2/10.3-17
module load cmake/3.12.2-4zllpyo
module load jdk/8u141-b15-mopj6qr
module load tcl/8.6.6-x4wnbsg
module load bzip2/1.0.6-hcvyuh5
module load zlib/1.2.11-6632jqd
export ROOT=$PWD/install
mkdir -pv $ROOT
rm -fv Anaconda3-2019.03-Linux-x86_64.sh
wget -q https://repo.anaconda.com/archive/Anaconda3-2019.03-Linux-x86_64.sh
sh Anaconda3-2019.03-Linux-x86_64.sh -b -p $ROOT/anaconda3
export PATH=$ROOT/anaconda3/bin:$PATH
conda create -n codar python=3.7
export CONDA_HOME=$ROOT/anaconda3
export PATH=$CONDA_HOME/envs/codar/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_HOME/envs/codar/lib
git clone https://github.com/ornladios/ADIOS2.git
cd ADIOS2
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=$ROOT/adios2 ..
make -j8
...
[ 68%] Building Fortran object testing/adios2/engine/staging-common/CMakeFiles/TestCommonRead_f.dir/TestCommonReadF.F90.o
/lcrc/project/PACC/tong/HPC_Autotuner/ADIOS2/testing/adios2/engine/staging-common/TestCommonReadF.F90:10.6:
use mpi
1
Fatal Error: File 'mpi.mod' opened at (1) is not a GNU Fortran module file
make[2]: *** [testing/adios2/engine/staging-common/CMakeFiles/TestCommonRead_f.dir/TestCommonReadF.F90.o] Error 1
make[1]: *** [testing/adios2/engine/staging-common/CMakeFiles/TestCommonRead_f.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 68%] Linking CXX executable ../../../../bin/TestInlineWriteRead
[ 68%] Built target TestInlineWriteRead
[ 68%] Linking CXX executable ../../../../bin/TestInSituMPIFunctionAssignPeers
[ 68%] Built target TestInSituMPIFunctionAssignPeers
[ 68%] Linking CXX executable ../../../../bin/TestEngineCommon
[ 68%] Built target TestEngineCommon
[ 68%] Linking CXX executable ../../../../bin/TestCommonWriteAttrs
[ 68%] Built target TestCommonWriteAttrs
[ 68%] Linking CXX executable ../../../../bin/TestStagingMPMD
[ 68%] Built target TestStagingMPMD
[ 68%] Linking CXX executable ../../../../bin/TestBPWriteReadLocalVariablesSel
[ 68%] Built target TestBPWriteReadLocalVariablesSel
[ 68%] Built target adios2py
make: *** [all] Error 2
https://code.ornl.gov/pnb/ADIOS2/-/issues/1500add inConfigFile option to declareIO in fortran 2019-06-24T18:26:21ZPodhorszki, Norbertadd inConfigFile option to declareIO in fortran *Created by: guj*
Would be nice to have in Fortran:
When initiating adios2 from xml config,
the declare_io function should make sure IO names are in the config file.
(or have a way to check) *Created by: guj*
Would be nice to have in Fortran:
When initiating adios2 from xml config,
the declare_io function should make sure IO names are in the config file.
(or have a way to check) https://code.ornl.gov/pnb/ADIOS2/-/issues/1486Blosc Transform2019-10-07T22:46:19ZPodhorszki, NorbertBlosc Transform*Created by: ax3l*
Hi,
opening since I did not find an issue on it. Are we still planning to add a [blosc](https://github.com/Blosc/c-blosc) transform again to ADIOS2?
We are using it all the time in PIConGPU as parallel compresso...*Created by: ax3l*
Hi,
opening since I did not find an issue on it. Are we still planning to add a [blosc](https://github.com/Blosc/c-blosc) transform again to ADIOS2?
We are using it all the time in PIConGPU as parallel compressor (https://arxiv.org/abs/1706.00522) and like the modern methods it implements as a meta-compressor (e.g. zstd and bitshuffle pre-conditioners) as well.
I think to remember we talked last time if we want to implement (thread/OpenMP) parallelization of transformation steps in general.https://code.ornl.gov/pnb/ADIOS2/-/issues/1482Documentation and better error message for span support2019-06-07T13:56:56ZPodhorszki, NorbertDocumentation and better error message for span support*Created by: keichi*
[Documentation](https://adios2.readthedocs.io/en/latest/engines/engines.html) says:
> See Supported Engines for engines that support the span feature (e.g. BP3).
However, [Supported Engines](https://adios2.rea...*Created by: keichi*
[Documentation](https://adios2.readthedocs.io/en/latest/engines/engines.html) says:
> See Supported Engines for engines that support the span feature (e.g. BP3).
However, [Supported Engines](https://adios2.readthedocs.io/en/latest/engines/engines.html) does not mention if an engine supports spans.
In addition, if you try to use spans with an engine without span support, it will throw a runtime error:
```
what(): ERROR: Engine derived class SstWriter doesn't implement function DoPut
```
This error message does not mention about spans and might be confusing for end users.https://code.ornl.gov/pnb/ADIOS2/-/issues/1468Multi-block read/write using InSituMPI or SST/FFS corrupts data2019-07-17T04:09:30ZPodhorszki, NorbertMulti-block read/write using InSituMPI or SST/FFS corrupts data*Created by: keichi*
Please build and run [this pipeline](https://gist.github.com/keichi/b9888afcf32443a916266540e9bde38d/9c5e4c98eb6cec56eac4c7b93009edf78e0f5c01) to reproduce. The test is essentially a stripped-down version of `testin...*Created by: keichi*
Please build and run [this pipeline](https://gist.github.com/keichi/b9888afcf32443a916266540e9bde38d/9c5e4c98eb6cec56eac4c7b93009edf78e0f5c01) to reproduce. The test is essentially a stripped-down version of `testing/adios2/engine/bp/TestBPWriteMultiblockRead.cpp`. If I run it using BPFile or SST/BP, it works fine. But if I run it using InSituMPI or SST/FFS, the data received on the reader side is corrupted.
## BPFile
```
$ ./writer
$ ./reader
Shape: 12
Count: 12
Received u is: 0 1 2 3 4 5 6 7 8 9 10 11
```
## InSituMPI
Single-block write + Multi-block read:
```
$ mpirun -n 1 ./writer : -n 1 ./reader
Shape: 12
Count: 12
Received u is: 0 0 0 0 0 0 0 0 0 9 10 11
```
Multi-block write + Multi-block read:
```
$ mpirun -n 1 ./writer : -n 1 ./reader
Shape: 12
Count: 12
Received u is: 0 0 0 0 0 0 0 0 0 0 1 2
```
Single-block write + Single-block read and Multi-block write + Single-block read:
Works.
## SST/FFS
Multi-block write + Multi-block read:
```
$ mpirun -n 1 ./writer : -n 1 ./reader
Shape: 12
Count: 12
Received u is: 0 0 0 0 0 0 0 0 0 9 10 11
```
Multi-block write + Single-block read:
```
$ mpirun -n 1 ./writer : -n 1 ./reader
Shape: 12
Count: 12
Received u is: 0 0 0 0 0 0 0 0 0 9 10 11
```
Single-block write + Single-block read and Single-block write + Multi-block read:
Works.
## SST/BP
Works with all combinations.https://code.ornl.gov/pnb/ADIOS2/-/issues/1458fortran error code2019-05-28T18:54:21ZPodhorszki, Norbertfortran error code*Created by: guj*
Please try a simple change in this file: examples/hello/bpFWriteCRead/FReader.f90:
sel_start = (/ 10, 2 /)
instead of
sel_start = (/ 0, 2 /)
and compile.
The bin/FReader expects to read the file written by...*Created by: guj*
Please try a simple change in this file: examples/hello/bpFWriteCRead/FReader.f90:
sel_start = (/ 10, 2 /)
instead of
sel_start = (/ 0, 2 /)
and compile.
The bin/FReader expects to read the file written by bin/CppWriter
you can see the ierr is 0 from calls of:
adios2_set_selection()
adios2_get()
An error shall be returned from at least one of them.
Thanks,
- Junmin