Skip to content

Commit

Permalink
Merge branch 'master' into campaign-manager
Browse files Browse the repository at this point in the history
* master:
  Have HDF5 write raise error if operator(s) requested (ornladios#3951)
  fix for ASAN issue related to JoinedDimArray handling in BP5 deserializer (ornladios#3963)
  New operator MDR, for refactoring floating point arrays using MGARD's new MDR extension. (ornladios#3826)
  restricted http transport from windows builds.
  XMLConfigTest: Add RemoveIO test
  adios2::core::ADIOS: Initialize new IO objects with config file
  removed unsused variable
  Update readme for heat transfer example with new location and build instructions
  Ignore tests with defects for now
  Adapt libfabric dataplane of SST to Cray CXI provider (ornladios#3672)
  ci: fix path to lsan suppressions, fix broken gh status post
  Use adios2_mode_readRandomAccess in matlab open to make it work for BP5 (ornladios#3956)
  Add Global Array Capabilities and Limitations
  Add Section for Anatomy of an ADIOS Program
  Enable Shell-Check for gh-actions scripts
  Enable Shell-Check for circle CI scripts
  Enable Shell-Check for tau contract scripts
  Enable Shell-Check for scorpio contract scripts
  Enable Shell-Check for lammps contract scripts
  Delete VTK code in examples
  Fix MATLAB bindings for MacOS (ornladios#3950)
  Set the compiler for the Kokkos DataMan example to what is used to build Kokkos
  Fix the HIP architecture CMAKE variable (ornladios#3931)
  perfstubs 2023-11-27 (845d0702) (ornladios#3944)
  Revert "Only rank 0 should print the initialization message in perfstub"
  Formatting
  Formatting
  Revision
  Added buffered data receive in the client side.
  A socket version of HTTP connector. Proxy server host is hardwired to "localhost" and port to 9999 Remote bpls: bpls -E bp4 -T "Library=HTTP" /remote_path/myVector_cpp.bp -d bpInts
  • Loading branch information
pnorbert committed Dec 12, 2023
2 parents 92f5bd6 + d192f27 commit 4d33f87
Show file tree
Hide file tree
Showing 94 changed files with 3,497 additions and 2,706 deletions.
4 changes: 4 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@ defaults: &defaults
steps:
- checkout:
path: source
- run:
# https://discuss.circleci.com/t/circle-working-directory-doesnt-expand/17007
name: "Fix CIRCLE_WORKING_DIRECTORY"
command: echo 'CIRCLE_WORKING_DIRECTORY="${CIRCLE_WORKING_DIRECTORY/#\~/$HOME}"' >> $BASH_ENV
- run:
name: CDash
command: bash source/scripts/ci/circle/postCDashStatus.sh
Expand Down
21 changes: 0 additions & 21 deletions .shellcheck_exclude_paths
Original file line number Diff line number Diff line change
@@ -1,9 +1,3 @@
scripts/ci/circle/postCDashStatus.sh
scripts/ci/circle/run.sh
scripts/ci/gh-actions/check-branch-name.sh
scripts/ci/gh-actions/get-changed-files.sh
scripts/ci/gh-actions/macos-setup.sh
scripts/ci/gh-actions/run.sh
scripts/ci/scripts/github-prs-to-gitlab.sh
scripts/ci/scripts/run-clang-format.sh
scripts/ci/scripts/run-flake8.sh
Expand All @@ -15,18 +9,3 @@ scripts/developer/setup.sh
scripts/docker/setup-user.sh
scripts/runconf/runconf.sh
scripts/runconf/runconf_olcf.sh
testing/contract/lammps/build.sh
testing/contract/lammps/config.sh
testing/contract/lammps/install.sh
testing/contract/lammps/setup.sh
testing/contract/lammps/test.sh
testing/contract/scorpio/build.sh
testing/contract/scorpio/config.sh
testing/contract/scorpio/install.sh
testing/contract/scorpio/setup.sh
testing/contract/scorpio/test.sh
testing/contract/tau/build.sh
testing/contract/tau/config.sh
testing/contract/tau/install.sh
testing/contract/tau/setup.sh
testing/contract/tau/test.sh
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ if(ADIOS2_HAVE_CUDA OR ADIOS2_HAVE_Kokkos_CUDA)
endif()

if(NOT DEFINED CMAKE_HIP_ARCHITECTURES AND DEFINED Kokkos_HIP_ARCHITECTURES)
set(CMAKE_HIP_ARCHITECTURES Kokkos_HIP_ARCHITECTURES)
set(CMAKE_HIP_ARCHITECTURES ${Kokkos_HIP_ARCHITECTURES})
endif()

if(ADIOS2_HAVE_MPI)
Expand Down Expand Up @@ -244,7 +244,7 @@ endif()

set(ADIOS2_CONFIG_OPTS
DataMan DataSpaces HDF5 HDF5_VOL MHS SST Fortran MPI Python Blosc2 BZip2
LIBPRESSIO MGARD PNG SZ ZFP DAOS IME O_DIRECT Sodium Catalyst SysVShMem UCX
LIBPRESSIO MGARD MGARD_MDR PNG SZ ZFP DAOS IME O_DIRECT Sodium Catalyst SysVShMem UCX
ZeroMQ Profiling Endian_Reverse Derived_Variable AWSSDK GPU_Support CUDA Kokkos
Kokkos_CUDA Kokkos_HIP Kokkos_SYCL Campaign
)
Expand Down
175 changes: 175 additions & 0 deletions CTestConfig.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,178 @@ set(CTEST_DROP_SITE "open.cdash.org")
set(CTEST_DROP_LOCATION "/submit.php?project=ADIOS")
set(CTEST_DROP_SITE_CDASH TRUE)
set(MEMORYCHECK_SUPPRESSIONS_FILE ${CMAKE_SOURCE_DIR}/scripts/dashboard/nightly/valgrind-suppressions.txt)

# Ignore tests that are currently failing, remove tests here as they are fixed
list(APPEND CTEST_CUSTOM_MEMCHECK_IGNORE
Bindings.C.ADIOS2_C_API.ADIOS2BPWriteTypes.Serial
Bindings.C.BPWriteReadMultiblockCC.ZeroSizeBlocks.Serial
Engine.BP.*/BPAppendAfterStepsP.Test/*.BP5.Serial
Engine.BP.*/BPChangingShapeWithinStep.MultiBlock/*.BP5.Serial
Engine.BP.*/BPParameterSelectStepsP.Read/*.BP5.Serial
Engine.BP.*/BPReadMultithreadedTestP.ReadFile/*.BP5.Serial
Engine.BP.*/BPStepsFileGlobalArrayParameters.EveryOtherStep/*.BP5.Serial
Engine.BP.*/BPStepsFileGlobalArrayReaders.EveryStep/*.BP5.Serial
Engine.BP.*/BPStepsFileGlobalArrayReaders.NewVarPerStep/*.BP5.Serial
Engine.BP.*/BPStepsFileLocalArrayParameters.EveryOtherStep/*.BP5.Serial
Engine.BP.*/BPStepsFileLocalArrayReaders.EveryStep/*.BP5.Serial
Engine.BP.*/BPStepsFileLocalArrayReaders.NewVarPerStep/*.BP5.Serial
Engine.BP.BPChangingShape.BPWriteReadShape2D.BP5.Serial
Engine.BP.BPLargeMetadata.ManyLongStrings.BP5.Serial
Engine.BP.BPWriteAppendReadTestADIOS2.ADIOS2BPWriteAppendRead2D2x4.BP5.Serial
Engine.BP.BPWriteAppendReadTestADIOS2.ADIOS2BPWriteAppendReadAggregate.BP5.Serial
Engine.BP.BPWriteAppendReadTestADIOS2.ADIOS2BPWriteAppendReadVaryingAggregation.BP5.Serial
Engine.BP.BPWriteMultiblockReadTest.ADIOS2BPWriteMultiblockRead1D8.BP5.Serial
Engine.BP.BPWriteMultiblockReadTest.ADIOS2BPWriteMultiblockRead2D2x4.BP5.Serial
Engine.BP.BPWriteMultiblockReadTest.ADIOS2BPWriteMultiblockRead2D4x2.BP5.Serial
Engine.BP.BPWriteMultiblockReadTest.ADIOS2BPWriteRead1D8ZeroBlock.BP5.Serial
Engine.BP.BPWriteReadAsStreamTestADIOS2.ReaderWriterDefineVariable.BP5.Serial
Engine.BP.BPWriteReadAttributes.BPWriteReadSingleTypesVar.BP5.Serial
Engine.BP.BPWriteReadAttributes.WriteReadArrayTypes.BP5.Serial
Engine.BP.BPWriteReadAttributes.WriteReadArrayTypesVar.BP5.Serial
Engine.BP.BPWriteReadAttributes.WriteReadSingleTypes.BP5.Serial
Engine.BP.BPWriteReadAttributes.WriteReadStreamVarp.BP5.Serial
Engine.BP.BPWriteReadAttributeTestMultirank.ADIOS2BPWriteReadArrayTypes.BP5.Serial
Engine.BP.BPWriteReadBlockInfo.BPWriteReadBlockInfo1D8_C.BP3.Serial
Engine.BP.BPWriteReadBlockInfo.BPWriteReadBlockInfo1D8_C.BP4.Serial
Engine.BP.BPWriteReadBlockInfo.BPWriteReadBlockInfo1D8_C.BP5.Serial
Engine.BP.BPWriteReadBlockInfo.BPWriteReadBlockInfo1D8.BP5.Serial
Engine.BP.BPWriteReadBlockInfo.BPWriteReadBlockInfo2D2x4.BP5.Serial
Engine.BP.BPWriteReadLocalVariables.ADIOS2BPWriteReadLocal1DAllSteps.BP5.Serial
Engine.BP.BPWriteReadLocalVariables.ADIOS2BPWriteReadLocal1DBlockInfo.BP5.Serial
Engine.BP.BPWriteReadLocalVariables.ADIOS2BPWriteReadLocal2DChangeCount.BP3.Serial
Engine.BP.BPWriteReadLocalVariables.ADIOS2BPWriteReadLocal2DChangeCount.BP4.Serial
Engine.BP.BPWriteReadLocalVariables.ADIOS2BPWriteReadLocal2DChangeCount.BP5.Serial
Engine.BP.BPWriteReadLocalVariablesSel.BPWriteReadLocal1DAllStepsSel.BP5.Serial
Engine.BP.BPWriteReadLocalVariablesSelHighLevel.BPWriteReadLocal1DAllStepsSel.BP5.Serial
Engine.BP.BPWriteReadMultiblockTest.ADIOS2BPWriteReadMultiblock1D8.BP5.Serial
Engine.BP.BPWriteReadMultiblockTest.ADIOS2BPWriteReadMultiblock2D2x4.BP5.Serial
Engine.BP.BPWriteReadMultiblockTest.ADIOS2BPWriteReadMultiblock2D4x2.BP5.Serial
Engine.BP.BPWriteReadMultiblockTest.MultiblockNullBlocks.BP5.Serial
Engine.BP.BPWriteReadMultiblockTest.MultiblockPerformDataWrite.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead10D2x2.Async.BP5.EWS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead10D2x2.Async.BP5.EWS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead10D2x2.Async.BP5.TLS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead10D2x2.Async.BP5.TLS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead10D2x2.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead1D8.Async.BP5.EWS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead1D8.Async.BP5.EWS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead1D8.Async.BP5.TLS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead1D8.Async.BP5.TLS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead1D8.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D2x4.Async.BP5.EWS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D2x4.Async.BP5.EWS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D2x4.Async.BP5.TLS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D2x4.Async.BP5.TLS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D2x4.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_MultiStepsOverflow.Async.BP5.EWS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_MultiStepsOverflow.Async.BP5.EWS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_MultiStepsOverflow.Async.BP5.TLS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_MultiStepsOverflow.Async.BP5.TLS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_MultiStepsOverflow.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_ReadMultiSteps.Async.BP5.EWS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_ReadMultiSteps.Async.BP5.EWS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_ReadMultiSteps.Async.BP5.TLS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_ReadMultiSteps.Async.BP5.TLS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2_ReadMultiSteps.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2.Async.BP5.EWS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2.Async.BP5.EWS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2.Async.BP5.TLS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2.Async.BP5.TLS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ADIOS2BPWriteRead2D4x2.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2.GetDeferredInClose.Async.BP5.EWS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.GetDeferredInClose.Async.BP5.EWS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.GetDeferredInClose.Async.BP5.TLS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.GetDeferredInClose.Async.BP5.TLS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.GetDeferredInClose.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2.ReadStartCount.Async.BP5.EWS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ReadStartCount.Async.BP5.EWS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ReadStartCount.Async.BP5.TLS.Guided.Serial
Engine.BP.BPWriteReadTestADIOS2.ReadStartCount.Async.BP5.TLS.Naive.Serial
Engine.BP.BPWriteReadTestADIOS2.ReadStartCount.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2fstream.ADIOS2BPWriteRead1D8.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2fstream.ADIOS2BPWriteRead2D2x4.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2fstream.ADIOS2BPWriteRead2D4x2_MultiStepsOverflow.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2fstream.ADIOS2BPWriteRead2D4x2_ReadMultiSteps.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2fstream.ADIOS2BPWriteRead2D4x2.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2stdio.ADIOS2BPWriteRead1D8.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2stdio.ADIOS2BPWriteRead2D2x4.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2stdio.ADIOS2BPWriteRead2D4x2_MultiStepsOverflow.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2stdio.ADIOS2BPWriteRead2D4x2_ReadMultiSteps.BP5.Serial
Engine.BP.BPWriteReadTestADIOS2stdio.ADIOS2BPWriteRead2D4x2.BP5.Serial
Engine.BP.BPWriteReadVector.ADIOS2BPWriteRead1D8.BP5.Serial
Engine.BP.BPWriteReadVector.ADIOS2BPWriteRead2D2x4.BP5.Serial
Engine.BP.BPWriteReadVector.ADIOS2BPWriteRead2D4x2.BP5.Serial
Engine.BP.BPWriteReadVector.ADIOS2BPWriteReadVector2D4x2_MultiSteps.BP5.Serial
Engine.BPEngineTest.ZfpComplex.Serial
Engine.SST.SstWriteFails.InvalidBeginStep.Serial
Engine.SST.SstWriteFails.InvalidPut.Serial
Engine.Staging.TestThreads.Basic.SST.BP.Serial
Engine.Staging.TestThreads.Basic.SST.FFS.Serial
Interface.ADIOS2_CXX11_API_Selection.MemorySelectionComplex.BPfile.Serial
Interface.ADIOS2_CXX11_API_Selection.MemorySelectionReadStart.BPfile.Serial
Remote.BPWriteMemorySelectionRead.FileRemote
Remote.BPWriteMemorySelectionRead.GetRemote
Remote.BPWriteReadADIOS2stdio.GetRemote
remoteServerCleanup
remoteServerSetup
Staging.1x1.Attrs.BP5
Staging.1x1.Attrs.CommMin.BP.SST
Staging.1x1.Attrs.CommMin.BP5.SST
Staging.1x1.CommMin.BP.SST
Staging.1x1.CommMin.BP5.SST
Staging.1x1.ForcePreload.CommMin.BP.SST
Staging.1x1.ForcePreload.CommMin.BP5.SST
Staging.1x1.Local2.CommMin.BP.SST
Staging.1x1.Local2.CommMin.BP5.SST
Staging.1x1.LocalMultiblock.CommMin.BP.SST
Staging.1x1.LocalMultiblock.CommMin.BP5.SST
Staging.1x1.ModAttrs.BP5
Staging.1x1.ModAttrs.CommMin.BP.SST
Staging.1x1.ModAttrs.CommMin.BP5.SST
Staging.1x1.NoPreload.CommMin.BP.SST
Staging.1x1.NoPreload.CommMin.BP5.SST
Staging.1x1.SstRUDP.CommMin.BP.SST
Staging.1x1.SstRUDP.CommMin.BP5.SST
Staging.1x1Joined.BP5
Staging.1x1Joined.CommMin.BP5.SST
Staging.1x1LockGeometry.CommMin.BP.SST
Staging.1x1LockGeometry.CommMin.BP5.SST
Staging.1x1Struct.BP5
Staging.1x1Struct.CommMin.BP5.SST
Staging.1x1VarDestruction.CommMin.BP.SST
Staging.1x1VarDestruction.CommMin.BP5.SST
Staging.AllToAllDistribution.1x1x3.CommMin.BP.SST
Staging.AllToAllDistribution.1x1x3.CommMin.BP5.SST
Staging.DiscardWriter.1x1.CommMin.BP.SST
Staging.DiscardWriter.1x1.CommMin.BP5.SST
Staging.LatestReader.1x1.CommMin.BP.SST
Staging.LatestReader.1x1.CommMin.BP5.SST
Staging.LatestReaderHold.1x1.CommMin.BP.SST
Staging.LatestReaderHold.1x1.CommMin.BP5.SST
Staging.OnDemandSingle.1x1.CommMin.BP.SST
Staging.OnDemandSingle.1x1.CommMin.BP5.SST
Staging.RoundRobinDistribution.1x1x3.CommMin.BP.SST
Staging.RoundRobinDistribution.1x1x3.CommMin.BP5.SST
Staging.TimeoutReader.1x1.CommMin.BP.SST
Staging.TimeoutReader.1x1.CommMin.BP5.SST
Staging.WriteMemorySelectionRead.1x1.CommMin.BP.SST
Staging.WriteMemorySelectionRead.1x1.CommMin.BP5.SST
Staging.ZFPCompression.1x1.CommMin.BP.SST
Staging.ZFPCompression.1x1.CommMin.BP5.SST
Staging.ZFPCompression.3x5.CommMin.BP.SST
Staging.ZFPCompression.3x5.CommMin.BP5.SST
Utils.ChangingShape.AlternatingStepsAndChangingShapeVar.Dump
Utils.ChangingShape.AlternatingStepsVarSelection.Dump
Utils.ChangingShape.ChangingShapeVarOneStep.Dump
Utils.ChangingShape.Dump
Utils.ChangingShape.FixedShapeVarTooManySteps.Dump
Utils.ChangingShape.Screen
Utils.CWriter
Utils.CWriter.Bpls.Al.Dump
Utils.CWriter.Bpls.h.Dump
Utils.CWriter.Bpls.la.Dump
Utils.CWriter.Bpls.la.Screen
Utils.CWriter.Bpls.ldDav.Dump
Utils.CWriter.Bpls.ldDavvv.Dump
Utils.CWriter.Bpls.ldvarI16.Dump
)
2 changes: 1 addition & 1 deletion bindings/C/adios2/c/adios2_c_adios.h
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ adios2_adios *adios2_init_config_mpi(const char *config_file, MPI_Comm comm);

#else
#define adios2_init() adios2_init_serial()
#define adios2_init_config(config_file) adios2_init_config_seria(config_file)
#define adios2_init_config(config_file) adios2_init_config_serial(config_file)
#endif

/**
Expand Down
14 changes: 14 additions & 0 deletions bindings/CXX11/adios2/cxx11/Variable.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,13 @@ namespace adios2
} \
\
template <> \
void Variable<T>::SetAccuracy(const adios2::Accuracy &a) \
{ \
helper::CheckForNullptr(m_Variable, "in call to Variable<T>::SetAccuracy"); \
m_Variable->SetAccuracy(a); \
} \
\
template <> \
size_t Variable<T>::SelectionSize() const \
{ \
helper::CheckForNullptr(m_Variable, "in call to Variable<T>::SelectionSize"); \
Expand Down Expand Up @@ -219,6 +226,13 @@ namespace adios2
} \
\
template <> \
adios2::Accuracy Variable<T>::GetAccuracy() \
{ \
helper::CheckForNullptr(m_Variable, "in call to Variable<T>::GetAccuracy"); \
return m_Variable->GetAccuracy(); \
} \
\
template <> \
std::vector<std::vector<typename Variable<T>::Info>> Variable<T>::AllStepsBlocksInfo() \
{ \
return DoAllStepsBlocksInfo(); \
Expand Down
13 changes: 13 additions & 0 deletions bindings/CXX11/adios2/cxx11/Variable.h
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,12 @@ class Variable
*/
void SetStepSelection(const adios2::Box<size_t> &stepSelection);

/**
* Sets the requested accuracy for the next read operation.
* The actual accuracy after the read is provided in GetAccuracy()
*/
void SetAccuracy(const adios2::Accuracy &a);

/**
* Returns the number of elements required for pre-allocation based on
* current count and stepsCount
Expand Down Expand Up @@ -335,6 +341,13 @@ class Variable
*/
T Max(const size_t step = adios2::DefaultSizeT) const;

/**
* Get the provided accuracy for the last read operation.
* Most operations provide data as it was written, meaning that
* error is reported as 0.0
*/
adios2::Accuracy GetAccuracy();

/** Contains block information for a particular Variable<T> */
struct Info
{
Expand Down
10 changes: 10 additions & 0 deletions bindings/Matlab/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,16 @@ MEXLIBS="LDFLAGS=${ADIOS_LIBS}"
ADIOS_INC=-I${ADIOS_DIR}/include
ADIOS_LIBS=`${ADIOS_DIR}/bin/adios2-config --c-libs`

### MacOS - example using homebrew installed ADIOS2 and Xcode 15 clang
### 1) Install homebrew (https://brew.sh/) and Xcode (App Store)
### 2) brew install adios2
### OR
### 2) Compile Adios2 from scratch and update ADIOS_DIR below to match install directory
#ADIOS_DIR=/opt/homebrew/opt/adios2
#ADIOS_INC=-I${ADIOS_DIR}/include
#ADIOS_LIBS=-Wl,-rpath,${ADIOS_DIR}/lib -shared -L${ADIOS_DIR}/lib -ladios2_c -ladios2_core
#MEXLIBS="LDFLAGS=${ADIOS_LIBS}"


MEXOPTS=-largeArrayDims -DDEBUG CFLAGS="-g -std=c99 -fPIC -O0"
default:
Expand Down
4 changes: 2 additions & 2 deletions bindings/Matlab/adiosopenc.c
Original file line number Diff line number Diff line change
Expand Up @@ -140,9 +140,9 @@ void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])

/********************************************************/
/* Open ADIOS file now and get variables and attributes */
adiosobj = adios2_init(false);
adiosobj = adios2_init_serial();
group = adios2_declare_io(adiosobj, "matlabiogroup"); // name is arbitrary
fp = adios2_open(group, fname, adios2_mode_read);
fp = adios2_open(group, fname, adios2_mode_readRandomAccess);
if (fp == NULL)
{
mexErrMsgIdAndTxt("MATLAB:adiosopenc:open", "Opening the file failed\n");
Expand Down
12 changes: 12 additions & 0 deletions cmake/DetectOptions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -175,13 +175,17 @@ if(TARGET LibPressio::libpressio)
endif()

# MGARD
set(ADIOS2_HAVE_MGARD_MDR FALSE)
if(ADIOS2_USE_MGARD STREQUAL AUTO)
find_package(mgard CONFIG)
elseif(ADIOS2_USE_MGARD)
find_package(mgard REQUIRED CONFIG)
endif()
if(mgard_FOUND)
set(ADIOS2_HAVE_MGARD TRUE)
if(MGARD_ENABLE_MDR)
set(ADIOS2_HAVE_MGARD_MDR TRUE)
endif()
endif()

# PNG
Expand Down Expand Up @@ -450,6 +454,14 @@ if(ADIOS2_USE_SST AND NOT WIN32)
if(CrayDRC_FOUND)
set(ADIOS2_SST_HAVE_CRAY_DRC TRUE)
endif()

try_compile(ADIOS2_SST_HAVE_CRAY_CXI
${ADIOS2_BINARY_DIR}/check_libfabric_cxi
${ADIOS2_SOURCE_DIR}/cmake/check_libfabric_cxi.c
CMAKE_FLAGS
"-DINCLUDE_DIRECTORIES=${LIBFABRIC_INCLUDE_DIRS}"
"-DLINK_DIRECTORIES=${LIBFABRIC_LIBRARIES}")
message(STATUS "Libfabric support for the HPE CXI provider: ${ADIOS2_SST_HAVE_CRAY_CXI}")
endif()
if(ADIOS2_HAVE_MPI)
set(CMAKE_REQUIRED_LIBRARIES "MPI::MPI_C;Threads::Threads")
Expand Down
5 changes: 5 additions & 0 deletions cmake/check_libfabric_cxi.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#include <stdbool.h>
#include <rdma/fabric.h>
#include <rdma/fi_cxi_ext.h>

int main() {}
Loading

0 comments on commit 4d33f87

Please sign in to comment.