Skip to content

Commit be2ee58

Browse files
authored
Merge pull request #5 from hpc-io/develop
Add benchmark code, reduce compile warnings, and fix issues with HDF5 1.14.5
2 parents 6930d6d + 99e578f commit be2ee58

File tree

11 files changed

+868
-159
lines changed

11 files changed

+868
-159
lines changed

.github/workflows/clang-format-check.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ jobs:
77
runs-on: ubuntu-latest
88
if: "!contains(github.event.head_commit.message, 'skip-ci')"
99
steps:
10-
- uses: actions/checkout@v2
10+
- uses: actions/[email protected]
11+
1112
- name: Run clang-format style check for C programs.
12-
uses: DoozyX/clang-format-lint-action@v0.11
13+
uses: DoozyX/clang-format-lint-action@v0.18.2
1314
with:
1415
source: '.'
1516
extensions: 'c,h,cpp,hpp'
1617
clangFormatVersion: 10
1718
style: file
18-
# exclude: './config'

.github/workflows/clang-format-fix.yml

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,45 @@
1-
name: clang-format Commit Chanages
1+
# NOTE: This action requires write permissions to be set in your GitHub
2+
# repo/fork for it to be able to commit changes.
3+
#
4+
# This is currently enabled via:
5+
#
6+
# settings > Actions > General > Workflow permissions
7+
#
8+
# which you will need to set to "Read and write permissions"
9+
#
10+
name: clang-format Commit Changes
211
on:
312
workflow_dispatch:
413
push:
14+
paths-ignore:
15+
- '**.md'
16+
- '**.txt'
17+
- 'docs/**'
18+
19+
permissions:
20+
contents: write
21+
522
jobs:
623
formatting-check:
724
name: Commit Format Changes
825
runs-on: ubuntu-latest
926
if: "!contains(github.event.head_commit.message, 'skip-ci')"
1027
permissions:
11-
contents: write # In order to allow EndBug/add-and-commit to commit changes
28+
contents: write # In order to allow EndBug/add-and-commit to commit changes
1229
steps:
13-
- uses: actions/checkout@v3
30+
- uses: actions/[email protected]
31+
1432
- name: Fix C formatting issues detected by clang-format
15-
uses: DoozyX/clang-format-lint-action@v0.13
33+
uses: DoozyX/clang-format-lint-action@v0.18.2
1634
with:
1735
source: '.'
1836
extensions: 'c,h,cpp,hpp'
1937
clangFormatVersion: 10
2038
inplace: True
2139
style: file
2240
# exclude: './config '
23-
- uses: EndBug/add-and-commit@v9
41+
42+
- uses: EndBug/add-and-commit@a94899bca583c204427a224a7af87c02f9b325d5 # v9.1.4
2443
with:
2544
author_name: github-actions
2645
author_email: github-actions[bot]@users.noreply.github.com

.github/workflows/linux.yml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,14 @@ jobs:
4040
run: |
4141
sudo apt-get update
4242
sudo apt-get install libtool
43-
sudo apt install cmake
43+
sudo apt install cmake uuid-dev
4444
# hdf5
45-
git clone https://github.com/HDFGroup/hdf5.git
46-
# libfabric 1.12.1
47-
wget https://github.com/ofiwg/libfabric/archive/refs/tags/v1.12.1.tar.gz
48-
tar xf v1.12.1.tar.gz
45+
wget https://github.com/HDFGroup/hdf5/releases/download/hdf5_1.14.5/hdf5-1.14.5.tar.gz
46+
tar xzf hdf5-1.14.5.tar.gz
47+
mv hdf5-1.14.5 hdf5
48+
# libfabric 1.20.1
49+
wget https://github.com/ofiwg/libfabric/archive/refs/tags/v1.20.1.tar.gz
50+
tar xf v1.20.1.tar.gz
4951
# mercury
5052
git clone https://github.com/mercury-hpc/mercury.git --recursive
5153
# mpi
@@ -66,15 +68,14 @@ jobs:
6668
export HDF5_LIBRARY=$mydir/hdf5/install/lib/libhdf5.so
6769
export VOL_DIR=$mydir/vol-pdc
6870
export MERCURY_DIR=$mydir/mercury/install
69-
export LIBFABRIC_DIR=$mydir/libfabric-1.12.1/install
71+
export LIBFABRIC_DIR=$mydir/libfabric-1.20.1/install
7072
export PDC_DIR=$mydir/pdc/install
7173
export LD_LIBRARY_PATH="$LIBFABRIC_DIR/lib:$MERCURY_DIR/lib:$PDC_DIR/lib:$VOL_DIR/install/lib:$LD_LIBRARY_PATH"
7274
export PATH="$LIBFABRIC_DIR/include:$LIBFABRIC_DIR/lib:$MERCURY_DIR/include:$MERCURY_DIR/lib:$PATH"
7375
7476
# Compile HDF5
7577
mkdir $HDF5_DIR
7678
cd hdf5
77-
git checkout hdf5-1_14_1-2
7879
export HDF5_LIBTOOL=/usr/bin/libtoolize
7980
./autogen.sh
8081
./configure CC=mpicc --prefix=$HDF5_DIR --enable-parallel --disable-tests --disable-hl --disable-fortran
@@ -92,7 +93,7 @@ jobs:
9293
# Compile Mercury
9394
mkdir $MERCURY_DIR
9495
cd $MERCURY_DIR
95-
git checkout v2.1.0
96+
git checkout v2.2.0
9697
cmake ../ -DCMAKE_C_COMPILER=gcc -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=ON -DNA_USE_OFI=ON -DNA_USE_SM=OFF -DMERCURY_USE_CHECKSUMS=OFF
9798
make -j2 && sudo make install
9899
ctest
@@ -117,7 +118,7 @@ jobs:
117118
118119
# Run test
119120
mpirun -N 1 -n 1 -c 1 $PDC_DIR/bin/pdc_server.exe &
120-
mpirun -N 1 -n 1 -c 1 ./bin/h5pdc_vpicio test
121+
mpirun -N 1 -n 1 -c 1 ./bin/vpicio test
121122
mpirun -N 1 -n 1 -c 1 $PDC_DIR/bin/close_server
122123
123124
- name: Setup tmate session

CMakeLists.txt

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/src)
224224
#-----------------------------------------------------------------------------
225225
# Examples
226226
#-----------------------------------------------------------------------------
227-
option(BUILD_EXAMPLES "Build examples." OFF)
227+
option(BUILD_EXAMPLES "Build examples." ON)
228228
if(BUILD_EXAMPLES)
229229
# BuildExamples.cmake builds the examples as a separate project. This ensures
230230
# that examples can be built by themselves as well as avoiding pollution of
@@ -233,13 +233,15 @@ if(BUILD_EXAMPLES)
233233
set(examples
234234
vpicio
235235
vpicio_open
236+
vpicio_batch
237+
bdcatsio_batch
236238
)
237239

238240
foreach (example ${examples})
239-
add_executable (h5pdc_${example}
240-
${CMAKE_CURRENT_SOURCE_DIR}/examples/h5pdc_${example}.c
241+
add_executable (${example}
242+
${CMAKE_CURRENT_SOURCE_DIR}/examples/${example}.c
241243
)
242-
target_link_libraries(h5pdc_${example} hdf5_vol_pdc)
244+
target_link_libraries(${example} hdf5_vol_pdc)
243245
endforeach()
244246
endif()
245247

@@ -300,8 +302,10 @@ install(
300302

301303
install(
302304
FILES
303-
${HDF5_VOL_PDC_BINARY_DIR}/bin/h5pdc_vpicio
304-
${HDF5_VOL_PDC_BINARY_DIR}/bin/h5pdc_vpicio_open
305+
${HDF5_VOL_PDC_BINARY_DIR}/bin/vpicio
306+
${HDF5_VOL_PDC_BINARY_DIR}/bin/vpicio_batch
307+
${HDF5_VOL_PDC_BINARY_DIR}/bin/vpicio_open
308+
${HDF5_VOL_PDC_BINARY_DIR}/bin/bdcatsio_batch
305309
DESTINATION
306310
${CMAKE_INSTALL_PREFIX}/bin
307311
)

examples/CMakeLists.txt

Lines changed: 0 additions & 31 deletions
This file was deleted.

0 commit comments

Comments
 (0)