-
Notifications
You must be signed in to change notification settings - Fork 68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issue 1324 netcdf parallel #1388
Merged
Merged
Changes from all commits
Commits
Show all changes
49 commits
Select commit
Hold shift + click to select a range
c203c67
working on build first, added pnetcdf
doutriaux1 6836aa7
setting up build to enable parallel NetCDF
doutriaux1 9de63c8
new conf file to use mpi
doutriaux1 558d921
had to upgrade our netcdf distribution
doutriaux1 5591fff
pyopenssl issues
doutriaux1 30ddfdb
pycparser files
doutriaux1 9fe77b4
first pass at splitting between pnetcdf and regular netcdf4 api calls…
doutriaux1 607e641
correct md5 for cython
doutriaux1 0b888b5
adding begining of a test
doutriaux1 3aa7b54
when file was already here but not readable (like a bad write before)
doutriaux1 fa55207
can't using mpi if shuffle/deflate so turn them off
doutriaux1 2852538
we cannot write mpi if defalte on/off
doutriaux1 afb597a
looks like sometimes processors would remove
doutriaux1 bb2f037
starting to split write bit over all mpi available
doutriaux1 b471baf
getting there but still not getting starts ok
doutriaux1 7e35912
actually it was a bad idea to try to split write over ranks
doutriaux1 99060f7
new test/example files
doutriaux1 15a82c9
getting there with switch to pnetcdf api
doutriaux1 f3fd3e0
got mpi to use indep data mode
doutriaux1 8bd0ea7
got it to compile again when no PARALLEL macro (i.e. like before)
doutriaux1 e33f05a
made sure (???) if not PARALLEL then use same calls as before
doutriaux1 13ba0bb
removed useless extra layer of call cdsm2_nc funcs
doutriaux1 98ae516
restored setup.py to use PARALLEL
doutriaux1 ec223c8
one last set of ncmpi func that was left
doutriaux1 f02a993
cleaned up fprintf statements
doutriaux1 20ecb58
unlimited dimension is not compatible with //
doutriaux1 7b4bfcf
correct arguments for nc_open_par
doutriaux1 467e6c6
following recommendation of NetCDF support group
doutriaux1 2d30664
removed pnetcdf
doutriaux1 3b4fcb8
will not create missing value attribute if no missing value
doutriaux1 71a7d41
removing ncredef ncendef
doutriaux1 5b6c9b3
now you can write 0D variables
doutriaux1 7fe229e
tweaks to get pyopenssl going on rhea
doutriaux1 2efad59
removed debug print statements
doutriaux1 1cee7d3
cleaning up a bit CMakeList.txt
doutriaux1 7387ea0
newer scipy
doutriaux1 0077894
@painter1 noticed we couldn't write unlimited dim anymore
doutriaux1 6438eab
test1 was failing because wrong test on use of //
doutriaux1 77fa625
switched NetCDF build to CMake
doutriaux1 7fed9ef
let cdms2 write attribute starting with _
doutriaux1 19bf6e9
copy/pasting that I thought had been fixed before
doutriaux1 ac1819d
another attribute starting with _ that need to be in reserved list
doutriaux1 8d40166
removed print statements
doutriaux1 166a598
created keyword for switching define mode nc on/off
doutriaux1 bf5368d
Merge remote branch 'me/cdms2_define_mode_switch' into issue_1324_net…
doutriaux1 c83f5e4
use define mode can be turned off
doutriaux1 b7f1a56
Produces netcdf4 files by default
doutriaux1 40cf745
Revert "switched NetCDF build to CMake"
doutriaux1 4465053
should fix vcs errors (does on rhea except for pix diff)
doutriaux1 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
set(cffi_deps ${pip_pkg} ${six_pkg} ${ffi_pkg}) | ||
set(CFFI_deps ${pip_pkg} ${six_pkg} ${ffi_pkg} ${pycparser_pkg} ) |
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 |
---|---|---|
@@ -1,10 +1,10 @@ | ||
set(CYTHON_MAJOR 0) | ||
set(CYTHON_MINOR 21) | ||
set(CYTHON_PATCH 2) | ||
set(CYTHON_VERSION ${CYTHON_MAJOR}.${CYTHON_MINOR}.${CYTHON_PATCH}) | ||
set(CYTHON_MINOR 22) | ||
set(CYTHON_PATCH ) | ||
set(CYTHON_VERSION ${CYTHON_MAJOR}.${CYTHON_MINOR}) | ||
set(CYTHON_URL ${LLNL_URL} ) | ||
set(CYTHON_GZ Cython-${CYTHON_VERSION}.tar.gz) | ||
set(CYTHON_MD5 d21adb870c75680dc857cd05d41046a4) | ||
set(CYTHON_MD5 e67b03e8b3667c8e4e7c774ef2e2b638) | ||
set(CYTHON_SOURCE ${CYTHON_URL}/${CYTHON_GZ}) | ||
|
||
add_cdat_package_dependent(Cython "" "" OFF "CDAT_BUILD_LEAN" OFF) |
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 |
---|---|---|
@@ -1 +1,4 @@ | ||
set(HDF5_deps ${pkgconfig_pkg} ${libxml2_pkg} ${libxslt_pkg} ${zlib_pkg}) | ||
if (CDAT_BUILD_PARALLEL) | ||
list(APPEND HDF5_deps ${mpi_pkg}) | ||
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
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 |
---|---|---|
@@ -1 +1,4 @@ | ||
set(NetCDF_deps ${pkgconfig_pkg} ${hdf5_pkg} ${curl_pkg} ${zlib_pkg} ${jpeg_pkg} ) | ||
if (CDAT_BUILD_PARALLEL) | ||
list(APPEND NetCDF_deps ${mpi_pkg} ) | ||
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
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 @@ | ||
set(PNETCDF_deps ${pkgconfig_pkg} ${mpi_pkg}) |
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,17 @@ | ||
set(pnetcdf_source "${CMAKE_CURRENT_BINARY_DIR}/build/pnetcdf") | ||
set(pnetcdf_install "${cdat_EXTERNALS}") | ||
set(pnetcdf_configure_args "--with-mpi=${cdat_EXTERNALS}") | ||
set(pnetcdf_additional_cflags "-fPIC") | ||
|
||
ExternalProject_Add(PNETCDF | ||
LIST_SEPARATOR ^^ | ||
DOWNLOAD_DIR ${CDAT_PACKAGE_CACHE_DIR} | ||
SOURCE_DIR ${pnetcdf_source} | ||
INSTALL_DIR ${pnetcdf_install} | ||
URL ${PNETCDF_URL}/${PNETCDF_GZ} | ||
URL_MD5 ${PNETCDF_MD5} | ||
BUILD_IN_SOURCE 1 | ||
CONFIGURE_COMMAND ${CMAKE_COMMAND} -DADDITIONAL_CFLAGS=${pnetcdf_additional_cflags} -DINSTALL_DIR=<INSTALL_DIR> -DWORKING_DIR=<SOURCE_DIR> -D CONFIGURE_ARGS=${pnetcdf_configure_args} -P ${cdat_CMAKE_BINARY_DIR}/cdat_configure_step.cmake | ||
DEPENDS ${PNETCDF_deps} | ||
${ep_log_options} | ||
) |
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,13 @@ | ||
set(PNETCDF_MAJOR_SRC 1) | ||
set(PNETCDF_MINOR_SRC 6) | ||
set(PNETCDF_PATCH_SRC 0) | ||
set(PNETCDF_URL ${LLNL_URL}) | ||
set(PNETCDF_GZ parallel-netcdf-${PNETCDF_MAJOR_SRC}.${PNETCDF_MINOR_SRC}.${PNETCDF_PATCH_SRC}.tar.gz) | ||
set(PNETCDF_MD5 4893a50ddcd487a312c64383bdeb2631) | ||
|
||
set (nm PNETCDF) | ||
string(TOUPPER ${nm} uc_nm) | ||
set(${uc_nm}_VERSION ${${nm}_MAJOR_SRC}.${${nm}_MINOR_SRC}.${${nm}_PATCH_SRC}) | ||
set(PNETCDF_SOURCE ${PNETCDF_URL}/${PNETCDF_GZ}) | ||
|
||
add_cdat_package(PNETCDF "" "" OFF) |
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 @@ | ||
set(PYCPARSER_deps ${python_pkg} ${pip_pkg}) |
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,6 @@ | ||
|
||
# create an external project to install MyProxyClient, | ||
# and configure and build it | ||
set(nm PYCPARSER) | ||
|
||
include(pipinstaller) |
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,10 @@ | ||
set(PYCPARSER_MAJOR_SRC 2) | ||
set(PYCPARSER_MINOR_SRC 13) | ||
set(PYCPARSER_PATCH_SRC ) | ||
|
||
set(PYCPARSER_VERSION ${PYCPARSER_MAJOR_SRC}.${PYCPARSER_MINOR_SRC}) | ||
set(PYCPARSER_GZ pycparser-${PYCPARSER_VERSION}.tar.gz) | ||
set(PYCPARSER_SOURCE ${LLNL_URL}/${PYCPARSER_GZ}) | ||
set(PYCPARSER_MD5 e4fe1a2d341b22e25da0d22f034ef32f ) | ||
|
||
add_cdat_package_dependent(PYCPARSER "" "" ON "CDAT_BUILD_LEAN" OFF) |
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 |
---|---|---|
@@ -1 +1 @@ | ||
set(PYOPENSSL_deps ${python_pkg} ${pip_pkg}) | ||
set(PYOPENSSL_deps ${python_pkg} ${pip_pkg} ${six_pkg} ${cryptography_pkg} ${cffi_pkg} ${ffi_pkg} ${pycparser_pkg} ) |
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,21 @@ | ||
set(ENV{PKG_CONFIG_PATH} "@cdat_EXTERNALS@/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig:$ENV{PKG_CONFIG_PATH}") | ||
set(ENV{PKG_CONFIG} "@cdat_PKG_CONFIG_EXECUTABLE@") | ||
|
||
include(@cdat_CMAKE_BINARY_DIR@/cdat_common_environment.cmake) | ||
|
||
set(ENV{CC} mpicc) | ||
|
||
message("CONFIGURE_ARGS IS ${CONFIGURE_ARGS}") | ||
message("LD_ARGS IS $ENV{@LIBRARY_PATH@}") | ||
message("CFLAGS : $ENV{CFLAGS}") | ||
|
||
execute_process( | ||
COMMAND env CC=$ENV{CC} CFLAGS=$ENV{CFLAGS} LD_LIBRARY_PATH=$ENV{@LIBRARY_PATH@} DYLD_FALLBACK_LIBRARY_PATH=$ENV{@LIBRARY_PATH@} @LIBRARY_PATH@=$ENV{@LIBRARY_PATH@} PKG_CONFIG=$ENV{PKG_CONFIG} PKG_CONFIG_PATH=$ENV{PKG_CONFIG_PATH} sh configure --prefix=${INSTALL_DIR} ${CONFIGURE_ARGS} | ||
WORKING_DIRECTORY "${WORKING_DIR}" | ||
RESULT_VARIABLE res) | ||
|
||
if(NOT ${res} EQUAL 0) | ||
message("Config Errors detected: \n${CDAT_OUT}\n${CDAT_ERR}") | ||
message(FATAL_ERROR "Error in config") | ||
endif() | ||
message("Config succeeded.") |
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
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please take out this debug messages
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 thanks for spotting and reviewing!