-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #201 from HDFGroup/hari/pr176
Replaces #176
- Loading branch information
Showing
31 changed files
with
1,970 additions
and
57 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
project(MPIIOAdapter VERSION 0.1.0) | ||
|
||
# include directories for mpiio headers | ||
include_directories(${CMAKE_SOURCE_DIR}/adapter/include) | ||
|
||
# MPIIO src code. We only include mpiio.cc as it includes other cc to reduce compilation time. | ||
set(MPIIO_ADAPTER_SRC mpiio.cc) | ||
|
||
# Only mpiio.h is the public adapter. | ||
set(MPIIO_ADAPTER_PUBLIC_HEADER ${CMAKE_SOURCE_DIR}/adapter/include/hermes/adapter/mpiio.h) | ||
# Private headers | ||
set(MPIIO_ADAPTER_PRIVATE_HEADER ${CMAKE_CURRENT_SOURCE_DIR}/metadata_manager.h | ||
${CMAKE_CURRENT_SOURCE_DIR}/mapper/mapper_factory.h | ||
${CMAKE_CURRENT_SOURCE_DIR}/mapper/abstract_mapper.h | ||
${CMAKE_CURRENT_SOURCE_DIR}/mapper/balanced_mapper.h | ||
${CMAKE_CURRENT_SOURCE_DIR}/common/datastructures.h | ||
${CMAKE_CURRENT_SOURCE_DIR}/common/enumerations.h | ||
${CMAKE_CURRENT_SOURCE_DIR}/common/constants.h) | ||
|
||
set(MPIIO_INTERNAL_ADAPTER_SRC ${CMAKE_CURRENT_SOURCE_DIR}/metadata_manager.cc | ||
${CMAKE_CURRENT_SOURCE_DIR}/mapper/balanced_mapper.cc) | ||
|
||
# Add library hermes_mpiio | ||
add_library(hermes_mpiio SHARED ${MPIIO_ADAPTER_PRIVATE_HEADER} ${MPIIO_ADAPTER_PUBLIC_HEADER} ${MPIIO_ADAPTER_SRC}) | ||
add_dependencies(hermes_mpiio hermes) | ||
target_link_libraries(hermes_mpiio hermes MPI::MPI_CXX) | ||
|
||
add_library(hermes_mpiio_internal SHARED ${MPIIO_ADAPTER_PRIVATE_HEADER} ${MPIIO_ADAPTER_PUBLIC_HEADER} ${MPIIO_INTERNAL_ADAPTER_SRC}) | ||
add_dependencies(hermes_mpiio_internal hermes) | ||
target_link_libraries(hermes_mpiio_internal hermes MPI::MPI_CXX) | ||
|
||
#----------------------------------------------------------------------------- | ||
# Add Target(s) to CMake Install | ||
#----------------------------------------------------------------------------- | ||
install( | ||
TARGETS | ||
hermes_mpiio | ||
EXPORT | ||
${HERMES_EXPORTED_TARGETS} | ||
LIBRARY DESTINATION ${HERMES_INSTALL_LIB_DIR} | ||
ARCHIVE DESTINATION ${HERMES_INSTALL_LIB_DIR} | ||
RUNTIME DESTINATION ${HERMES_INSTALL_BIN_DIR} | ||
) | ||
#----------------------------------------------------------------------------- | ||
# Add Target(s) to Coverage | ||
#----------------------------------------------------------------------------- | ||
if(HERMES_ENABLE_COVERAGE) | ||
set_coverage_flags(hermes_mpiio) | ||
endif() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * | ||
* Distributed under BSD 3-Clause license. * | ||
* Copyright by The HDF Group. * | ||
* Copyright by the Illinois Institute of Technology. * | ||
* All rights reserved. * | ||
* * | ||
* This file is part of Hermes. The full Hermes copyright notice, including * | ||
* terms governing use, modification, and redistribution, is contained in * | ||
* the COPYING file, which can be found at the top directory. If you do not * | ||
* have access to the file, you may request a copy from help@hdfgroup.org. * | ||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ | ||
|
||
#ifndef HERMES_MPIIO_COMMON_CONSTANTS_H | ||
#define HERMES_MPIIO_COMMON_CONSTANTS_H | ||
|
||
/** | ||
* Standard header | ||
*/ | ||
|
||
/** | ||
* Dependent library header | ||
*/ | ||
|
||
/** | ||
* Internal header | ||
*/ | ||
#include <hermes/adapter/mpiio/common/enumerations.h> | ||
|
||
/** | ||
* Constants file for MPIIO adapter. | ||
*/ | ||
using hermes::adapter::mpiio::MapperType; | ||
|
||
/** | ||
* Which mapper to be used by MPIIO adapter. | ||
*/ | ||
const MapperType kMapperType = MapperType::BALANCED; | ||
/** | ||
* Define kPageSize for balanced mapping. | ||
*/ | ||
const size_t kPageSize = 1024 * 1024; | ||
/** | ||
* String delimiter | ||
*/ | ||
const char kStringDelimiter = '#'; | ||
|
||
#endif // HERMES_MPIIO_COMMON_CONSTANTS_H |
Oops, something went wrong.