mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-19 12:03:02 -04:00
sys-cluster/adios2: new package, add 2.8.1
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
1
sys-cluster/adios2/Manifest
Normal file
1
sys-cluster/adios2/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST adios2-2.8.1.gh.tar.gz 5747375 BLAKE2B 1c2b2845db90be83fc911f53724ab8a72aca93562720a03c05084f61611e3247525160a00810c9f492cd9743e70ac7ad3db601771905a4ab53d089b943971416 SHA512 50001f73318a4deb63a487a817f0b151904f39bd3d9d3d0a04fe77e4323f639b625472fb82b32702fdfc990bf765aff65793ca6817f2798a5cf4b6c72f9a38d7
|
||||
131
sys-cluster/adios2/adios2-2.8.1.ebuild
Normal file
131
sys-cluster/adios2/adios2-2.8.1.ebuild
Normal file
@@ -0,0 +1,131 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
FORTRAN_NEEDED="fortran"
|
||||
MYPN="${PN^^}"
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
|
||||
inherit cmake python-single-r1 fortran-2
|
||||
|
||||
DESCRIPTION="Next generation of ADIOS developed in the Exascale Computing Program"
|
||||
HOMEPAGE="
|
||||
https://csmd.ornl.gov/software/adios2
|
||||
https://github.com/ornladios/adios2
|
||||
"
|
||||
SRC_URI="https://github.com/ornladios/${MYPN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
|
||||
S="${WORKDIR}/${MYPN}-${PV}"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="blosc bzip2 endian-reverse examples fortran hdf5 mpi png profile python sodium sst szip test zeromq zfp"
|
||||
|
||||
RDEPEND="
|
||||
dev-cpp/nlohmann_json
|
||||
dev-cpp/yaml-cpp:=
|
||||
dev-libs/atl
|
||||
dev-libs/dill
|
||||
>dev-libs/ffs-1.6.0
|
||||
dev-libs/kwsys:=
|
||||
dev-libs/perfstubs:=[timers]
|
||||
dev-libs/pugixml
|
||||
net-libs/enet
|
||||
>sys-cluster/evpath-4.5.0
|
||||
|
||||
blosc? ( dev-libs/c-blosc:= )
|
||||
bzip2? ( app-arch/bzip2 )
|
||||
hdf5? ( sci-libs/hdf5:=[mpi=] )
|
||||
mpi? ( virtual/mpi[cxx] )
|
||||
png? ( media-libs/libpng:= )
|
||||
python? (
|
||||
${PYTHON_DEPS}
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/numpy[${PYTHON_USEDEP}]
|
||||
dev-python/pybind11[${PYTHON_USEDEP}]
|
||||
')
|
||||
mpi? ( $(python_gen_cond_dep 'dev-python/mpi4py[${PYTHON_USEDEP}]') )
|
||||
)
|
||||
sodium? ( dev-libs/libsodium:= )
|
||||
sst? ( sys-block/libfabric:= )
|
||||
szip? ( virtual/szip )
|
||||
zeromq? ( net-libs/zeromq:= )
|
||||
zfp? ( dev-libs/zfp )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
test? ( dev-cpp/gtest )
|
||||
"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-system-libs.patch"
|
||||
"${FILESDIR}/${P}-sandbox.patch"
|
||||
)
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
pkg_setup() {
|
||||
use fortran && fortran-2_pkg_setup
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_SHARED_LIBS=ON
|
||||
-DADIOS2_USE_BP5=OFF
|
||||
-DADIOS2_USE_CUDA=OFF
|
||||
-DADIOS2_USE_DataMan=OFF
|
||||
-DADIOS2_USE_DataSpaces=OFF
|
||||
-DADIOS2_USE_EXTERNAL_ATL=ON
|
||||
-DADIOS2_USE_EXTERNAL_DEPENDENCIES=ON
|
||||
-DADIOS2_USE_EXTERNAL_DILL=ON
|
||||
-DADIOS2_USE_EXTERNAL_ENET=ON
|
||||
-DADIOS2_USE_EXTERNAL_FFS=ON
|
||||
-DADIOS2_USE_EXTERNAL_EVPATH=ON
|
||||
-DADIOS2_USE_EXTERNAL_GTEST=ON
|
||||
-DADIOS2_USE_EXTERNAL_NLOHMANN_JSON=ON
|
||||
-DADIOS2_USE_EXTERNAL_PUGIXML=ON
|
||||
-DADIOS2_USE_EXTERNAL_PYBIND11=ON
|
||||
-DADIOS2_USE_EXTERNAL_YAMLCPP=ON
|
||||
-DADIOS2_USE_IME=OFF
|
||||
-DADIOS2_USE_LIBPRESSIO=OFF
|
||||
-DADIOS2_USE_MGARD=OFF
|
||||
|
||||
-DADIOS2_BUILD_EXAMPLES="$(usex examples)"
|
||||
-DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL="$(usex examples)"
|
||||
-DADIOS2_USE_Blosc="$(usex blosc)"
|
||||
-DADIOS2_USE_BZip2="$(usex bzip2)"
|
||||
-DADIOS2_USE_Endian_Reverse="$(usex endian-reverse)"
|
||||
-DADIOS2_USE_Fortran="$(usex fortran)"
|
||||
-DADIOS2_USE_HDF5="$(usex hdf5)"
|
||||
-DADIOS2_USE_MPI="$(usex mpi)"
|
||||
-DADIOS2_USE_PNG="$(usex png)"
|
||||
-DADIOS2_USE_Profiling="$(usex profile)"
|
||||
-DADIOS2_USE_Python="$(usex python)"
|
||||
-DADIOS2_USE_Sodium="$(usex sodium)"
|
||||
-DADIOS2_USE_SST="$(usex sst)"
|
||||
-DADIOS2_USE_SZ="$(usex szip)"
|
||||
-DADIOS2_USE_ZeroMQ="$(usex zeromq)"
|
||||
-DADIOS2_USE_ZFP="$(usex zfp)"
|
||||
-DBUILD_TESTING=$(usex test)
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
rm -r thirdparty/{atl,dill,enet,EVPath,ffs,GTest,KWSys,mingw-w64,pugixml,pybind11,yaml-cpp} || die
|
||||
rm -r thirdparty/nlohmann_json/nlohmann_json_wrapper/single_include || die
|
||||
rm -r thirdparty/perfstubs/perfstubs || die
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
dodoc ReadMe.md
|
||||
}
|
||||
12
sys-cluster/adios2/files/adios2-2.8.1-sandbox.patch
Normal file
12
sys-cluster/adios2/files/adios2-2.8.1-sandbox.patch
Normal file
@@ -0,0 +1,12 @@
|
||||
--- a/cmake/install/pre/CMakeLists.txt
|
||||
+++ b/cmake/install/pre/CMakeLists.txt
|
||||
@@ -1,9 +1,3 @@
|
||||
-install(CODE "
|
||||
- message(\"Pre-installation cleanup of CMake files\")
|
||||
- file(REMOVE_RECURSE \"${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_CMAKEDIR}\")
|
||||
-"
|
||||
- COMPONENT adios2_core-development
|
||||
-)
|
||||
file(GLOB ADIOS2_MODULE_FILES
|
||||
"${ADIOS2_SOURCE_DIR}/cmake/Find*.cmake"
|
||||
"${ADIOS2_SOURCE_DIR}/cmake/CMake*.cmake"
|
||||
307
sys-cluster/adios2/files/adios2-2.8.1-system-libs.patch
Normal file
307
sys-cluster/adios2/files/adios2-2.8.1-system-libs.patch
Normal file
@@ -0,0 +1,307 @@
|
||||
--- a/source/adios2/CMakeLists.txt
|
||||
+++ b/source/adios2/CMakeLists.txt
|
||||
@@ -127,7 +127,7 @@
|
||||
$<BUILD_INTERFACE:${ADIOS2_SOURCE_DIR}/source>
|
||||
$<BUILD_INTERFACE:${ADIOS2_BINARY_DIR}/source>
|
||||
)
|
||||
-target_link_libraries(adios2_core PRIVATE adios2sys_interface adios2::thirdparty::pugixml
|
||||
+target_link_libraries(adios2_core PRIVATE -lkwsys adios2::thirdparty::pugixml
|
||||
adios2::thirdparty::yaml-cpp adios2::thirdparty::nlohmann_json adios2::thirdparty::perfstubs-interface)
|
||||
target_link_libraries(adios2_core PUBLIC ${CMAKE_THREAD_LIBS_INIT})
|
||||
target_compile_features(adios2_core PUBLIC "$<BUILD_INTERFACE:${ADIOS2_CXX11_FEATURES}>")
|
||||
@@ -151,7 +151,7 @@
|
||||
toolkit/format/bp5/BP5Serializer.cpp
|
||||
toolkit/format/bp5/BP5Deserializer.cpp toolkit/format/bp5/BP5Deserializer.tcc
|
||||
)
|
||||
- target_link_libraries(adios2_core PRIVATE ffs::ffs)
|
||||
+ target_link_libraries(adios2_core PRIVATE ffs)
|
||||
endif()
|
||||
|
||||
if(ADIOS2_HAVE_DAOS)
|
||||
--- a/source/adios2/core/ADIOS.cpp
|
||||
+++ b/source/adios2/core/ADIOS.cpp
|
||||
@@ -19,7 +19,7 @@
|
||||
#include "adios2/helper/adiosCommDummy.h"
|
||||
#include "adios2/helper/adiosFunctions.h" //InquireKey, BroadcastFile
|
||||
#include "adios2/operator/OperatorFactory.h"
|
||||
-#include <adios2sys/SystemTools.hxx>
|
||||
+#include <kwsys/SystemTools.hxx>
|
||||
|
||||
#include <adios2-perfstubs-interface.h>
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
#endif
|
||||
if (!configFile.empty())
|
||||
{
|
||||
- if (!adios2sys::SystemTools::FileExists(configFile))
|
||||
+ if (!kwsys::SystemTools::FileExists(configFile))
|
||||
{
|
||||
helper::Throw<std::logic_error>("Core", "ADIOS", "ADIOS",
|
||||
"config file " + configFile +
|
||||
--- a/source/adios2/core/IO.cpp
|
||||
+++ b/source/adios2/core/IO.cpp
|
||||
@@ -39,7 +39,7 @@
|
||||
#include "adios2/helper/adiosComm.h"
|
||||
#include "adios2/helper/adiosFunctions.h" //BuildParametersMap
|
||||
#include "adios2/helper/adiosString.h"
|
||||
-#include <adios2sys/SystemTools.hxx> // FileIsDirectory()
|
||||
+#include <kwsys/SystemTools.hxx> // FileIsDirectory()
|
||||
|
||||
#ifdef ADIOS2_HAVE_DATAMAN // external dependencies
|
||||
#include "adios2/engine/dataman/DataManReader.h"
|
||||
@@ -559,13 +559,13 @@
|
||||
else if ((mode_to_use == Mode::Read) ||
|
||||
(mode_to_use == Mode::ReadRandomAccess))
|
||||
{
|
||||
- if (adios2sys::SystemTools::FileIsDirectory(name))
|
||||
+ if (kwsys::SystemTools::FileIsDirectory(name))
|
||||
{
|
||||
char v = helper::BPVersion(name, comm, m_TransportsParameters);
|
||||
engineTypeLC = "bp";
|
||||
engineTypeLC.push_back(v);
|
||||
}
|
||||
- else if (adios2sys::SystemTools::FileIsDirectory(name + ".tier0"))
|
||||
+ else if (kwsys::SystemTools::FileIsDirectory(name + ".tier0"))
|
||||
{
|
||||
engineTypeLC = "mhs";
|
||||
}
|
||||
--- a/source/adios2/helper/adiosDynamicBinder.cpp
|
||||
+++ b/source/adios2/helper/adiosDynamicBinder.cpp
|
||||
@@ -18,8 +18,8 @@
|
||||
#include <stdexcept> // for runtime_error
|
||||
#include <vector> // for vector
|
||||
|
||||
-#include <adios2sys/DynamicLoader.hxx>
|
||||
-#include <adios2sys/SystemTools.hxx>
|
||||
+#include <kwsys/DynamicLoader.hxx>
|
||||
+#include <kwsys/SystemTools.hxx>
|
||||
|
||||
namespace adios2
|
||||
{
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
struct DynamicBinder::Impl
|
||||
{
|
||||
- adios2sys::DynamicLoader::LibraryHandle m_LibraryHandle;
|
||||
+ kwsys::DynamicLoader::LibraryHandle m_LibraryHandle;
|
||||
};
|
||||
|
||||
DynamicBinder::DynamicBinder(std::string libName) : DynamicBinder(libName, "")
|
||||
@@ -76,14 +76,14 @@
|
||||
// ConvertToOutputPath() will change slashes if we're running on
|
||||
// a Windows system
|
||||
fileName =
|
||||
- adios2sys::SystemTools::ConvertToOutputPath(fileName);
|
||||
+ kwsys::SystemTools::ConvertToOutputPath(fileName);
|
||||
}
|
||||
else
|
||||
{
|
||||
fileName = prefix + libName + suffix;
|
||||
}
|
||||
m_Impl->m_LibraryHandle =
|
||||
- adios2sys::DynamicLoader::OpenLibrary(fileName);
|
||||
+ kwsys::DynamicLoader::OpenLibrary(fileName);
|
||||
searchedLibs.push_back(fileName);
|
||||
if (m_Impl->m_LibraryHandle)
|
||||
{
|
||||
@@ -110,13 +110,13 @@
|
||||
|
||||
DynamicBinder::~DynamicBinder()
|
||||
{
|
||||
- adios2sys::DynamicLoader::CloseLibrary(m_Impl->m_LibraryHandle);
|
||||
+ kwsys::DynamicLoader::CloseLibrary(m_Impl->m_LibraryHandle);
|
||||
}
|
||||
|
||||
DynamicBinder::VoidSymbolPointer
|
||||
DynamicBinder::GetSymbol(std::string symbolName)
|
||||
{
|
||||
- return adios2sys::DynamicLoader::GetSymbolAddress(m_Impl->m_LibraryHandle,
|
||||
+ return kwsys::DynamicLoader::GetSymbolAddress(m_Impl->m_LibraryHandle,
|
||||
symbolName);
|
||||
}
|
||||
|
||||
--- a/source/adios2/helper/adiosPluginManager.cpp
|
||||
+++ b/source/adios2/helper/adiosPluginManager.cpp
|
||||
@@ -17,7 +17,7 @@
|
||||
#include "adios2/helper/adiosLog.h"
|
||||
#include "adios2/helper/adiosString.h"
|
||||
|
||||
-#include <adios2sys/SystemTools.hxx>
|
||||
+#include <kwsys/SystemTools.hxx>
|
||||
|
||||
#include <memory>
|
||||
#include <stdexcept>
|
||||
@@ -110,13 +110,13 @@
|
||||
}
|
||||
|
||||
std::string allPluginPaths;
|
||||
- adios2sys::SystemTools::GetEnv(pluginEnvVarName, allPluginPaths);
|
||||
+ kwsys::SystemTools::GetEnv(pluginEnvVarName, allPluginPaths);
|
||||
if (allPluginPaths.empty())
|
||||
{
|
||||
return OpenPlugin(pluginName, pluginLibrary, "");
|
||||
}
|
||||
auto pathsSplit =
|
||||
- adios2sys::SystemTools::SplitString(allPluginPaths, ':', false);
|
||||
+ kwsys::SystemTools::SplitString(allPluginPaths, ':', false);
|
||||
|
||||
bool loaded = false;
|
||||
auto pathIt = pathsSplit.begin();
|
||||
--- a/source/adios2/helper/adiosSystem.cpp
|
||||
+++ b/source/adios2/helper/adiosSystem.cpp
|
||||
@@ -13,7 +13,7 @@
|
||||
#include <stdexcept> // std::runtime_error, std::exception
|
||||
#include <system_error>
|
||||
|
||||
-#include <adios2sys/SystemTools.hxx>
|
||||
+#include <kwsys/SystemTools.hxx>
|
||||
|
||||
#include "adios2/common/ADIOSTypes.h"
|
||||
#include "adios2/helper/adiosComm.h"
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
bool CreateDirectory(const std::string &fullPath) noexcept
|
||||
{
|
||||
- return static_cast<bool>(adios2sys::SystemTools::MakeDirectory(fullPath));
|
||||
+ return static_cast<bool>(kwsys::SystemTools::MakeDirectory(fullPath));
|
||||
}
|
||||
|
||||
bool IsLittleEndian() noexcept
|
||||
@@ -168,7 +168,7 @@
|
||||
if (!comm.Rank())
|
||||
{
|
||||
std::string mmdFileName = name + PathSeparator + "mmd.0";
|
||||
- if (adios2sys::SystemTools::PathExists(mmdFileName))
|
||||
+ if (kwsys::SystemTools::PathExists(mmdFileName))
|
||||
{
|
||||
version = '5';
|
||||
}
|
||||
--- a/source/adios2/operator/plugin/PluginOperator.cpp
|
||||
+++ b/source/adios2/operator/plugin/PluginOperator.cpp
|
||||
@@ -21,7 +21,7 @@
|
||||
#include "adios2/helper/adiosPluginManager.h"
|
||||
#include "adios2/helper/adiosString.h"
|
||||
|
||||
-#include <adios2sys/SystemTools.hxx>
|
||||
+#include <kwsys/SystemTools.hxx>
|
||||
|
||||
namespace adios2
|
||||
{
|
||||
--- a/source/utils/bpls/bpls.cpp
|
||||
+++ b/source/utils/bpls/bpls.cpp
|
||||
@@ -57,8 +57,8 @@
|
||||
|
||||
#include "adios2/helper/adiosString.h" // EndsWith
|
||||
#include "adios2/helper/adiosSystem.h" //isHDF5File
|
||||
-#include <adios2sys/CommandLineArguments.hxx>
|
||||
-#include <adios2sys/SystemTools.hxx>
|
||||
+#include <kwsys/CommandLineArguments.hxx>
|
||||
+#include <kwsys/SystemTools.hxx>
|
||||
#include <pugixml.hpp>
|
||||
|
||||
namespace adios2
|
||||
@@ -202,8 +202,8 @@
|
||||
bool option_help_was_called = false;
|
||||
int optioncb_help(const char *argument, const char *value, void *call_data)
|
||||
{
|
||||
- // adios2sys::CommandLineArguments *arg =
|
||||
- // static_cast<adios2sys::CommandLineArguments *>(call_data);
|
||||
+ // kwsys::CommandLineArguments *arg =
|
||||
+ // static_cast<kwsys::CommandLineArguments *>(call_data);
|
||||
// printf("%s\n", arg->GetHelp());
|
||||
display_help();
|
||||
option_help_was_called = true;
|
||||
@@ -431,7 +431,7 @@
|
||||
|
||||
void introspect_file(const char *filename) noexcept
|
||||
{
|
||||
- if (adios2sys::SystemTools::FileIsDirectory(filename))
|
||||
+ if (kwsys::SystemTools::FileIsDirectory(filename))
|
||||
{
|
||||
if (!introspectAsBPDir(filename))
|
||||
{
|
||||
@@ -460,7 +460,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
-int process_unused_args(adios2sys::CommandLineArguments &arg)
|
||||
+int process_unused_args(kwsys::CommandLineArguments &arg)
|
||||
{
|
||||
int nuargs;
|
||||
char **uargs;
|
||||
@@ -541,9 +541,9 @@
|
||||
|
||||
init_globals();
|
||||
|
||||
- adios2sys::CommandLineArguments arg;
|
||||
+ kwsys::CommandLineArguments arg;
|
||||
arg.Initialize(argc, argv);
|
||||
- typedef adios2sys::CommandLineArguments argT;
|
||||
+ typedef kwsys::CommandLineArguments argT;
|
||||
arg.StoreUnusedArguments(true);
|
||||
arg.AddCallback("-v", argT::NO_ARGUMENT, optioncb_verbose, nullptr, "");
|
||||
arg.AddCallback("--verbose", argT::NO_ARGUMENT, optioncb_verbose, nullptr,
|
||||
@@ -1521,7 +1521,7 @@
|
||||
if (verbose > 1)
|
||||
printf("\nADIOS Open: read header info from %s\n", path);
|
||||
|
||||
- if (!adios2sys::SystemTools::FileExists(path))
|
||||
+ if (!kwsys::SystemTools::FileExists(path))
|
||||
{
|
||||
fprintf(stderr, "\nError: input path %s does not exist\n", path);
|
||||
return 4;
|
||||
--- a/source/utils/CMakeLists.txt
|
||||
+++ b/source/utils/CMakeLists.txt
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
# BPLS
|
||||
add_executable(bpls ./bpls/bpls.cpp)
|
||||
-target_link_libraries(bpls adios2_core adios2sys adios2::thirdparty::pugixml)
|
||||
+target_link_libraries(bpls adios2_core -lkwsys adios2::thirdparty::pugixml)
|
||||
target_include_directories(bpls PRIVATE ${PROJECT_BINARY_DIR})
|
||||
set_property(TARGET bpls PROPERTY OUTPUT_NAME bpls${ADIOS2_EXECUTABLE_SUFFIX})
|
||||
install(TARGETS bpls EXPORT adios2
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
# BPSPLIT
|
||||
#add_executable(bpsplit ./bpsplit/bpsplit.cpp)
|
||||
-#target_link_libraries(bpsplit adios2::cxx11 adios2sys_interface adios2::thirdparty::pugixml)
|
||||
+#target_link_libraries(bpsplit adios2::cxx11 -lkwsys adios2::thirdparty::pugixml)
|
||||
#install(TARGETS bpsplit EXPORT adios2
|
||||
# RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
#)
|
||||
--- a/thirdparty/CMakeLists.txt
|
||||
+++ b/thirdparty/CMakeLists.txt
|
||||
@@ -33,8 +33,6 @@
|
||||
option(ADIOS2_USE_EXTERNAL_YAMLCPP
|
||||
"Use an externally supplied yaml-cpp library" "${ADIOS2_USE_EXTERNAL_DEPENDENCIES}")
|
||||
|
||||
-add_subdirectory(KWSys)
|
||||
-
|
||||
add_subdirectory(perfstubs)
|
||||
adios2_add_thirdparty_target(perfstubs-interface perfstubs-interface)
|
||||
|
||||
--- a/thirdparty/perfstubs/CMakeLists.txt
|
||||
+++ b/thirdparty/perfstubs/CMakeLists.txt
|
||||
@@ -1,12 +1,3 @@
|
||||
-message_start_thirdparty()
|
||||
-
|
||||
-if (NOT WIN32 AND BUILD_SHARED_LIBS AND ADIOS2_HAVE_Profiling)
|
||||
- set(PERFSTUBS_USE_TIMERS ON CACHE INTERNAL "")
|
||||
- add_subdirectory(perfstubs)
|
||||
-else()
|
||||
- set(PERFSTUBS_USE_TIMERS OFF CACHE INTERNAL "")
|
||||
-endif()
|
||||
-
|
||||
add_library(perfstubs-interface INTERFACE)
|
||||
|
||||
configure_file(
|
||||
@@ -19,7 +10,6 @@
|
||||
)
|
||||
|
||||
if (PERFSTUBS_USE_TIMERS)
|
||||
+ find_package(perfstubs REQUIRED)
|
||||
target_link_libraries(perfstubs-interface INTERFACE perfstubs)
|
||||
endif()
|
||||
-
|
||||
-message_end_thirdparty()
|
||||
46
sys-cluster/adios2/metadata.xml
Normal file
46
sys-cluster/adios2/metadata.xml
Normal file
@@ -0,0 +1,46 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>lssndrbarbieri@gmail.com</email>
|
||||
<name>Alessandro Barbieri</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<bugs-to>https://github.com/ornladios/ADIOS2/issues</bugs-to>
|
||||
<remote-id type="github">ornladios/ADIOS2</remote-id>
|
||||
</upstream>
|
||||
<longdescription lang="en">
|
||||
This is ADIOS2: The Adaptable Input/Output (I/O) System.
|
||||
|
||||
ADIOS2 is developed as part of the United States Department of Energy's Exascale Computing Project. It is a framework for scientific data I/O to publish and subscribe to data when and where required.
|
||||
|
||||
ADIOS2 transports data as groups of self-describing variables and attributes across different media types (such as files, wide-area-networks, and remote direct memory access) using a common application programming interface for all transport modes. ADIOS2 can be used on supercomputers, cloud systems, and personal computers.
|
||||
|
||||
ADIOS2 focuses on:
|
||||
|
||||
Performance I/O scalability in high performance computing (HPC) applications.
|
||||
Adaptability unified interfaces to allow for several modes of transport (files, memory-to-memory)
|
||||
Ease of Use two-level application programming interface (APIs)
|
||||
|
||||
Full APIs for HPC applications: C++11, Fortran 90, C 99, Python 2 and 3
|
||||
Simplified High-Level APIs for data analysis: Python 2 and 3, C++11, Matlab
|
||||
|
||||
In addition, ADIOS2 APIs are based on:
|
||||
|
||||
MPI Although ADIOS2 is MPI-based, it can also be used in non-MPI serial code.
|
||||
|
||||
Data Groups ADIOS2 favors a deferred/prefetch/grouped variables transport mode by default to maximize data-per-request ratios. Sync mode, one variable at a time, is treated as the special case.
|
||||
|
||||
Data Steps ADIOS2 follows the actual production/consumption of data using an I/O “steps” abstraction removing the need to manage extra indexing information.
|
||||
|
||||
Data Engines ADIOS2 Engine abstraction allows for reusing the APIs for different transport modes removing the need for drastic code changes.
|
||||
</longdescription>
|
||||
<use>
|
||||
<flag name="blosc">Enable support for Blosc transforms</flag>
|
||||
<flag name="endian-reverse">Enable support for Little/Big Endian Interoperability</flag>
|
||||
<flag name="sodium">Enable support for Sodium for encryption</flag>
|
||||
<flag name="sst">Enable support for SST</flag>
|
||||
<flag name="zeromq">Enable support for ZeroMQ</flag>
|
||||
<flag name="zfp">Enable support for ZFP transforms</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
Reference in New Issue
Block a user