Skip to content
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

gasnet based parcelport #6230

Merged
merged 338 commits into from
Oct 14, 2023
Merged
Show file tree
Hide file tree
Changes from 46 commits
Commits
Show all changes
338 commits
Select commit Hold shift + click to select a range
c231558
added cancellation token
Jun 4, 2023
67ac542
added unseq support
Jun 4, 2023
dd488ca
fixed unused error
Jun 4, 2023
1811f81
unedd parameter
Jun 4, 2023
100690c
enable if else error to be fixed
Jun 5, 2023
9a4b989
cf
Jun 5, 2023
83adffc
unused param
Jun 5, 2023
b354e87
customisation point for loop_with_cleanup
Jun 7, 2023
7d9e1eb
fixed ambiguos funtion error
Jun 7, 2023
d32c15d
fixed template and typename mismatch
Jun 7, 2023
aaa8f0e
template arguments were not provided in certain cases
Jun 7, 2023
002ca19
added concept to resolve ambiguity
Jun 7, 2023
442e1d8
fixed ambiguity using concepts
Jun 7, 2023
1af6fd7
fixed inspect and include errors
Jun 7, 2023
4d6107f
used hpx::parallel::util::transfer for uninit_copy
Jun 9, 2023
7a8dc58
try in constexpr function fixed
Jun 9, 2023
3fe0b6b
fixed missing includes
Jun 9, 2023
89b739c
variable name
Jun 9, 2023
ad9bda0
changed concept
Jun 9, 2023
9f5b1cd
fixed concept ambiguity
Jun 9, 2023
ba6878c
fixes extra free which happens during tests
Jun 10, 2023
33d2598
fixed bug
Jun 10, 2023
c7a1bd1
manual unrolling causing errors
Jun 10, 2023
a50008e
uninit default construct
Jun 11, 2023
0d5c1d9
added another call overload to loop_with_cleanup_n
Jun 11, 2023
648d613
clang-format
Jun 11, 2023
89dc707
fixed concept
Jun 11, 2023
110f1d6
fixed error from test which hass seninal not convertible to iterable …
Jun 13, 2023
f0d580a
unused variable fixed
Jun 13, 2023
82cc7c1
uninit move
Jun 14, 2023
7e6ff88
uninit value construct
Jun 15, 2023
1be8420
uninit fill
Jun 15, 2023
d425df9
removed commented out code
Jun 15, 2023
269aff6
reeplaced try catch loops with loop_with_cleanup
Jul 16, 2023
866bd46
changed variable name
Jul 16, 2023
894b93a
namespace errors
Jul 16, 2023
14ece10
fixed template errors
Jul 17, 2023
25f6e3d
cf
Johan511 Jul 17, 2023
9999e5a
removed unused vars
Johan511 Jul 17, 2023
cc10353
requested changes
Johan511 Jul 24, 2023
315887b
unseq dispatch psuhed to tag_invoke stage
Johan511 Jul 28, 2023
109c95b
loop with cleanup moved to tag fallback invoke
Johan511 Aug 2, 2023
6d3dbfa
removed tokens
Johan511 Aug 5, 2023
6964b85
Adding release notes page for next release
hkaiser May 7, 2023
3d69141
Adding zero-copy support on the receiving end of the TCP parcel port
hkaiser Apr 30, 2023
656f8a4
Adding hpx.parcels.zero_copy_receive_optimization configuration key
hkaiser May 2, 2023
3852974
Merge changes from #5910
hkaiser May 5, 2023
e1a296c
Modernize more modules (levels 12-16)
hkaiser May 8, 2023
96ad127
Remove unnecessary README.rst files
dimitraka Apr 13, 2023
d6645a3
Making sure mutex in locking_hook base stays alive
hkaiser May 11, 2023
9dd1fba
Fixing startup issues in global barrier synchronization
hkaiser May 12, 2023
50de2b1
Preparing V1.9.1 release
hkaiser May 22, 2023
ba44587
Fix docs build warning: title overline too short
dimitraka May 11, 2023
6f9ca1f
Resolve gcc problems on Windows
hkaiser May 19, 2023
8eb2c6c
Remove duplicate headers, instead generate those on demand
hkaiser May 21, 2023
4d64e6c
Cleaning up #includes in hpx/ folder
hkaiser Apr 10, 2023
ee13eba
Re-enable tests
G-071 May 18, 2023
8677562
Fix compute architecture and drop kepler
G-071 May 18, 2023
e88ae85
Revert "Re-enable tests"
G-071 May 18, 2023
0eb3008
Remove broken node for testing
G-071 May 18, 2023
4595abf
Temporarily switch to rocm/4
G-071 May 19, 2023
430c1b1
Revert "Temporarily switch to rocm/4"
G-071 May 23, 2023
8e5bc55
Increase test timeout
G-071 May 24, 2023
9a53790
Revert "Increase test timeout"
G-071 May 27, 2023
b5ccb3a
Cmake Tests: Delete operator check for size_t arg
SAtacker May 25, 2023
e062de5
Fix clang format formatting for Clang format 11
SAtacker May 26, 2023
75d7147
Resolving merge conflicts
hkaiser Jun 15, 2023
1b1cf55
Add openmp tasks migration guide
dimitraka Jun 1, 2023
5c05502
Update release notes
hkaiser Jun 19, 2023
5ca73bc
Fixing problems reported by clang-15
hkaiser Jun 14, 2023
2d15803
Fixing problems reported by gcc-13
hkaiser Jun 14, 2023
32c7568
Fixing various feature tests
hkaiser Jun 18, 2023
667cb6e
Adding user supplied on_finalize
hkaiser Jun 26, 2023
b08bdac
Initial hardcoded version
G-071 Jun 19, 2023
0d9a705
Cleanup
G-071 Jun 19, 2023
bc31b53
Fix unused parameter warning
G-071 Jun 21, 2023
c38dcc2
Fix assert
G-071 Jun 27, 2023
ff37ae0
Remove superfluous cudaSetDevice
G-071 Jun 27, 2023
66febef
Put event pool singleton access definition in src
G-071 Jun 28, 2023
34d4cf5
Final patch release additions
Aug 4, 2023
ed4ca47
Fixing linker problem on FreeBSD
hkaiser Aug 5, 2023
4ed7564
Generate git tag if needed but it is not available
hkaiser Aug 10, 2023
cde5d8f
Ensure hpx_main is a proper thread_function
Pansysk75 Aug 11, 2023
8b42155
Add regression test for hpx_main exit callbacks
Pansysk75 Aug 11, 2023
3f969e1
Don't register components if in local mode
hkaiser Aug 18, 2023
d8223bb
Fixing cyclic dependencies
hkaiser Aug 11, 2023
439ff28
Fixing test failure
hkaiser Aug 18, 2023
f028559
Adding POSITION_INDEPENDENT_CODE=ON to all HPX targets
hkaiser Aug 19, 2023
b97d698
Adapting build system for CMake V3.27
hkaiser Jul 19, 2023
6bf30d4
Fixing HIP builder
hkaiser Aug 19, 2023
2a1937e
Remove obsolete and broken Daint builders
hkaiser Aug 19, 2023
7e527d0
Making sure changed number of counts is propagated to executor
hkaiser Jul 25, 2023
25f2bed
Fixing test scheduler_priority_check
hkaiser Aug 20, 2023
a8cc2af
Cleanup previous patch adapting to CMake V3.27
hkaiser Aug 20, 2023
a36d655
More fixes for CMake V3.27
hkaiser Aug 24, 2023
f0ccebb
Modernize modules in level 17 and 18
hkaiser May 14, 2023
b54c97f
Add MPI migration guide
dimitraka Jul 13, 2023
d15eb18
Add MPI_Gather doc
dimitraka Aug 1, 2023
9325b21
Add scatter and gather doc
dimitraka Aug 23, 2023
54ad817
Add MPI_Allgather doc
dimitraka Aug 24, 2023
c3d3c98
Add MPI_Allreduce doc
dimitraka Aug 24, 2023
ac67290
Add MPI_Alltoall doc
dimitraka Aug 24, 2023
cca1f0f
Listing HPX_WITH_GIT_BRANCH and HPX_WITH_GIT_TAG only if those are de…
hkaiser Aug 28, 2023
cadad95
More tweaks to listing CMake variables
hkaiser Aug 28, 2023
f8c439a
Investigating partitioned_vector problems
hkaiser Oct 22, 2022
0884a80
Fixing codacy badge
hkaiser Aug 29, 2023
88911f1
More codacy badge changes
hkaiser Aug 29, 2023
fedf160
Adding local work stealing scheduler that is based on message passing…
hkaiser Nov 25, 2019
c227cb2
Fixing race during destruction of hpx::thread
hkaiser Jan 17, 2023
c8d09ed
Fixing merge conflicts, revert changes to thread exit callbacks
hkaiser Jan 27, 2023
3ecb7bd
Fixing use of sliding semaphore
hkaiser Aug 21, 2023
53db943
Cleaning up implementation
hkaiser Aug 21, 2023
083048c
Reapply necessary fixes to scheduler
hkaiser Aug 28, 2023
5d01676
Remove aurianer, biddisco, and msimberg from codeowners
msimberg Aug 31, 2023
75c3299
Fix shared_future_continuation_order regression test
Pansysk75 Sep 1, 2023
d796e17
Fixing HPX_CURRENT_SOURCE_LOCATION when std::source_location exists
hkaiser Aug 31, 2023
84a3411
Bump actions/checkout from 3 to 4
dependabot[bot] Sep 4, 2023
15f3f7e
similar type detection
isidorostsa Aug 18, 2023
0b5aa31
is_relocatable_from
isidorostsa Aug 18, 2023
8166924
relocate_at algorithm
isidorostsa Aug 18, 2023
de953f8
uninitialized_relocate algorithm
isidorostsa Aug 18, 2023
0faba80
tests
isidorostsa Aug 18, 2023
e2b5e80
remove commented code
isidorostsa Aug 18, 2023
42126fe
reject failing destroy_at types
isidorostsa Aug 18, 2023
228e48c
move to namespace experimental
isidorostsa Aug 18, 2023
8e2e89c
make relocate's format like relocate_at
isidorostsa Aug 19, 2023
bbe9dc8
relocate test
isidorostsa Aug 19, 2023
9d496a5
clang-format and comments
isidorostsa Aug 19, 2023
e31a972
remove whitespaces for inspect
isidorostsa Aug 19, 2023
df7cd75
fix fail test
isidorostsa Aug 23, 2023
baf6170
& and && are nor triv. rel.
isidorostsa Aug 23, 2023
9288e0c
unneeded void cast
isidorostsa Aug 23, 2023
a2106c6
addition to a test
isidorostsa Aug 23, 2023
2dda850
only objects are relocatable
isidorostsa Aug 23, 2023
401f116
comment correction
isidorostsa Aug 23, 2023
4c323a0
clang-format
isidorostsa Aug 23, 2023
76ca730
template arg name size -> N
isidorostsa Aug 23, 2023
876c719
decay -> remove_cv
isidorostsa Aug 24, 2023
a474cce
is_relocatable_from
isidorostsa Aug 18, 2023
4c438f9
only objects are relocatable
isidorostsa Aug 23, 2023
01f0f36
Add MPI_Barrier docs
dimitraka Aug 30, 2023
3f5f871
Add MPI_Bcast docs
dimitraka Aug 30, 2023
f73a588
Add MPI_Exscan docs
dimitraka Aug 30, 2023
3a8353a
Add MPI_Scan docs
dimitraka Aug 30, 2023
b3c92f5
Add MPI_Reduce docs
dimitraka Aug 30, 2023
543ce40
Update MPI-HPX table
dimitraka Sep 7, 2023
169b8de
Log alive hpx threads on exit
Pansysk75 Sep 1, 2023
fe79f05
Fix for thread logging on exit
Pansysk75 Sep 2, 2023
2cbf38f
Adding basic logging to collective operations
hkaiser Aug 24, 2023
c24319d
Add coverage testing on Jenkins
Pansysk75 Sep 1, 2023
2319e4f
Update coverage info in README
Pansysk75 Sep 9, 2023
bdeff91
Fixing formatting
hkaiser Sep 10, 2023
26d0df2
changed chat link to discord
Johan511 Sep 11, 2023
7e3cc67
added cpp slack channel
Johan511 Sep 11, 2023
f0e8a37
Make coverage work with Jenkins Github Branch Source plugin
Pansysk75 Sep 16, 2023
38b4707
Cleanup Jenkins scripts
Pansysk75 Sep 16, 2023
2c89c1c
Fix missing links for header files
dimitraka Sep 21, 2023
e2bf58b
Enable using std::reference_wrapper with executor parameters
hkaiser Sep 21, 2023
96e1945
initial import of gasnet parcelport
Apr 30, 2023
960528e
clean compile
Jun 25, 2023
f1bf4c3
fixed potential nullptr issue
ct-clmsn Sep 25, 2023
6773638
fixed gasnet cmake
ct-clmsn Sep 26, 2023
9e89f2a
file changes not being registered
ct-clmsn Sep 26, 2023
c0504d1
Merge branch 'master' into gasnet-pp
ct-clmsn Sep 26, 2023
ac74ff0
Fix header file links
dimitraka Sep 28, 2023
e016a23
Fix broken links docs
dimitraka Sep 28, 2023
35063d2
Fixed matrix multiplication example output
knuedd Sep 27, 2023
43de88c
Fix CMake find_library for HWLOC
Pansysk75 Sep 27, 2023
b8c272c
Fix HPX-APEX cmake integration
srinivasyadav18 Sep 1, 2023
ae9bf00
Add -DHPX_WITH_FETCH_APEX=ON to CI builder scripts
srinivasyadav18 Sep 16, 2023
6bca250
Fix formatting issues and add missing define
srinivasyadav18 Sep 19, 2023
c454a06
initial import of gasnet parcelport
Apr 30, 2023
b259cb3
clean compile
Jun 25, 2023
50fb541
Adding gasnet parcelport to CI builders
ct-clmsn Sep 30, 2023
75fb15f
Fixing HPX compilation errors
ct-clmsn Sep 30, 2023
751ec46
Fixing HPX compilation errors
hkaiser Jul 14, 2023
db4696d
Futures attempt to execute threads directly if those have not started…
hkaiser Jul 25, 2021
c62fc1a
Working around the need to use a lock during thread creation
hkaiser Jul 11, 2023
027b1a3
Fix race condition
Pansysk75 Jul 20, 2023
9393b56
move as buffers when data type is trivially copyable
Jun 3, 2023
61e7bbc
added cancellation token
Jun 4, 2023
79bd6fa
fixed unused error
Jun 4, 2023
b6857d4
customisation point for loop_with_cleanup
Jun 7, 2023
9dd52cc
fixed template and typename mismatch
Jun 7, 2023
a282086
fixed ambiguity using concepts
Jun 7, 2023
2502620
fixed concept
Jun 11, 2023
1b234da
fixed error from test which hass seninal not convertible to iterable …
Jun 13, 2023
f8e52e2
reeplaced try catch loops with loop_with_cleanup
Jul 16, 2023
b14f6d1
namespace errors
Jul 16, 2023
efa48dc
fixed template errors
Jul 17, 2023
080d41c
unseq dispatch psuhed to tag_invoke stage
Johan511 Jul 28, 2023
1afe2bd
Remove unnecessary README.rst files
dimitraka Apr 13, 2023
0ffaeb2
Preparing V1.9.1 release
hkaiser May 22, 2023
1e01519
Resolve gcc problems on Windows
hkaiser May 19, 2023
d6d0955
Remove duplicate headers, instead generate those on demand
hkaiser May 21, 2023
b1bff0e
Cleaning up #includes in hpx/ folder
hkaiser Apr 10, 2023
1350bb5
Adapting build system for CMake V3.27
hkaiser Jul 19, 2023
c7ab744
Remove obsolete and broken Daint builders
hkaiser Aug 19, 2023
9466730
Cleanup previous patch adapting to CMake V3.27
hkaiser Aug 20, 2023
a932827
More fixes for CMake V3.27
hkaiser Aug 24, 2023
69a2e55
Add scatter and gather doc
dimitraka Aug 23, 2023
afd942c
Add MPI_Alltoall doc
dimitraka Aug 24, 2023
12b3053
Adding local work stealing scheduler that is based on message passing…
hkaiser Nov 25, 2019
25e075d
Fixing merge conflicts, revert changes to thread exit callbacks
hkaiser Jan 27, 2023
7f9931a
tests
isidorostsa Aug 18, 2023
f42f11f
Add MPI_Barrier docs
dimitraka Aug 30, 2023
a463053
Add coverage testing on Jenkins
Pansysk75 Sep 1, 2023
217dd47
changed chat link to discord
Johan511 Sep 11, 2023
29c6c21
Fix missing links for header files
dimitraka Sep 21, 2023
ee0548e
fixed gasnet cmake
ct-clmsn Sep 26, 2023
ff2ea4f
file changes not being registered
ct-clmsn Sep 26, 2023
9b178ab
fixed rebase issue with gasnet
ct-clmsn Sep 30, 2023
d8777d1
updated
ct-clmsn Sep 30, 2023
38d3c9c
fixing build issues caused by rebase
ct-clmsn Sep 30, 2023
80efa66
clangformatting
ct-clmsn Sep 30, 2023
0c6172c
formatting fixes
ct-clmsn Sep 30, 2023
a9a1a88
several additional fixes caused by an error in rebase
ct-clmsn Sep 30, 2023
bdf9202
fixed formatting issue caused by rebase
ct-clmsn Sep 30, 2023
910bef0
rm'd rebase files that are not in main anymore
ct-clmsn Sep 30, 2023
cb9982b
cmake-format applied
ct-clmsn Sep 30, 2023
d3da8c1
cmake-format fixes
ct-clmsn Sep 30, 2023
3c2d3cb
Applying @isidorostsa's patch
hkaiser Sep 30, 2023
70d132e
Re-enable gasnet parcelport for clang based builders
hkaiser Sep 30, 2023
54add8b
Adding conduits to gasnet testers
hkaiser Sep 30, 2023
bdb906b
updated with ofi/ucx search when fetch is turned on; removed ibv cond…
ct-clmsn Oct 1, 2023
3b49ab8
updated builders for clang 12,13,14,15 and gcc 10,12,13
ct-clmsn Oct 1, 2023
488715d
updated builders PKG_CONFIG_PATH to point to the correct location; sh…
ct-clmsn Oct 1, 2023
0d3f086
added pkgconfig search path
ct-clmsn Oct 2, 2023
24da04f
potential fix for gnu-autotools/gasnet build
ct-clmsn Oct 4, 2023
3bb4257
several fixes for cmake/autotool support
ct-clmsn Oct 4, 2023
20b1540
several fixes for cmake/autotool support
ct-clmsn Oct 4, 2023
ce07069
several fixes for cmake/autotool support
ct-clmsn Oct 4, 2023
d6c01ac
several fixes for cmake/autotool support
ct-clmsn Oct 4, 2023
3e41ea6
modified file search
ct-clmsn Oct 5, 2023
d678302
modified file search
ct-clmsn Oct 5, 2023
607dba6
modifications for builder
ct-clmsn Oct 10, 2023
95bd6d8
modifications for builder
ct-clmsn Oct 10, 2023
a839e2a
updated build scripts and environment variables
ct-clmsn Oct 10, 2023
080937d
fixes for linking issues in ctest/builder scripts
ct-clmsn Oct 10, 2023
cf7e885
reformatted unit test cmakefile
ct-clmsn Oct 10, 2023
c6e640c
attempt to correct linking issue in builder/ctest
ct-clmsn Oct 10, 2023
eb169ea
changing builders to test against udp conduit
ct-clmsn Oct 10, 2023
8efadc1
changing builders to test against udp conduit
ct-clmsn Oct 10, 2023
cc0240b
added 'maybe unused'
ct-clmsn Oct 12, 2023
0f875bf
fixed MPI_CC detection issue
ct-clmsn Oct 13, 2023
4f1a3d9
added maybe_unused
ct-clmsn Oct 13, 2023
cd8ed99
added maybe_unused
ct-clmsn Oct 13, 2023
e25d25a
possible mpi_cc fix
ct-clmsn Oct 13, 2023
13d5de4
possible testscript fix
ct-clmsn Oct 13, 2023
8e457dd
cmake format issue resolved
ct-clmsn Oct 13, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .cmake-format.py
Original file line number Diff line number Diff line change
Expand Up @@ -393,7 +393,8 @@
'RUN_SERIAL',
'NO_PARCELPORT_TCP',
'NO_PARCELPORT_LCI',
'NO_PARCELPORT_MPI'],
'NO_PARCELPORT_MPI',
'NO_PARCELPORT_GASNET'],
'nargs': '2+'}},
'add_hpx_source_group': { 'kwargs': { 'CLASS': 1,
'NAME': 1,
Expand Down
2 changes: 2 additions & 0 deletions .jenkins/lsu/env-clang-11.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ module load boost/1.73.0-${build_type,,}
module load hwloc
module load openmpi
module load pwrapi/1.1.1
# module load gasnet/2023.3.0

export HPXRUN_RUNWRAPPER=srun
export CXX_STD="17"
Expand All @@ -23,6 +24,7 @@ configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_LCI=ON"
configure_extra_options+=" -DHPX_WITH_FETCH_LCI=ON"
# configure_extra_options+=" -DHPX_WITH_PARCELPORT_GASNET=ON"
configure_extra_options+=" -DHPX_WITH_LOGGING=OFF"

# The pwrapi library still needs to be set up properly on rostam
Expand Down
2 changes: 2 additions & 0 deletions .jenkins/lsu/env-clang-12.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ module load boost/1.75.0-${build_type,,}
module load hwloc
module load openmpi
module load pwrapi/1.1.1
# module load gasnet/2023.3.0

export HPXRUN_RUNWRAPPER=srun
export CXX_STD="20"
Expand All @@ -24,6 +25,7 @@ configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_LCI=ON"
configure_extra_options+=" -DHPX_WITH_FETCH_LCI=ON"
# configure_extra_options+=" -DHPX_WITH_PARCELPORT_GASNET=ON"
configure_extra_options+=" -DHPX_WITH_LOGGING=OFF"

# The pwrapi library still needs to be set up properly on rostam
Expand Down
2 changes: 2 additions & 0 deletions .jenkins/lsu/env-clang-13.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ module load boost/1.78.0-${build_type,,}
module load hwloc
module load openmpi
module load pwrapi/1.1.1
# module load gasnet/2023.3.0

export HPXRUN_RUNWRAPPER=srun
export CXX_STD="17"
Expand All @@ -24,6 +25,7 @@ configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_LCI=ON"
configure_extra_options+=" -DHPX_WITH_FETCH_LCI=ON"
# configure_extra_options+=" -DHPX_WITH_PARCELPORT_GASNET=ON"
configure_extra_options+=" -DHPX_WITH_LOGGING=OFF"

# The pwrapi library still needs to be set up properly on rostam
Expand Down
2 changes: 2 additions & 0 deletions .jenkins/lsu/env-clang-14.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ module load boost/1.79.0-${build_type,,}
module load hwloc
module load openmpi
module load pwrapi/1.1.1
# module load gasnet/2023.3.0

export HPXRUN_RUNWRAPPER=srun
export CXX_STD="20"
Expand All @@ -24,6 +25,7 @@ configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_LCI=ON"
configure_extra_options+=" -DHPX_WITH_FETCH_LCI=ON"
# configure_extra_options+=" -DHPX_WITH_PARCELPORT_GASNET=ON"
configure_extra_options+=" -DHPX_WITH_LOGGING=OFF"
configure_extra_options+=" -DHPX_WITH_DATAPAR_BACKEND=EVE"
configure_extra_options+=" -DHPX_WITH_FETCH_EVE=ON"
Expand Down
2 changes: 2 additions & 0 deletions .jenkins/lsu/env-clang-15.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ module load boost/1.82.0-${build_type,,}
module load hwloc
module load openmpi
module load pwrapi/1.1.1
# module load gasnet/2023.3.0

export HPXRUN_RUNWRAPPER=srun
export CXX_STD="20"
Expand All @@ -24,6 +25,7 @@ configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_LCI=ON"
configure_extra_options+=" -DHPX_WITH_FETCH_LCI=ON"
# configure_extra_options+=" -DHPX_WITH_PARCELPORT_GASNET=ON"
configure_extra_options+=" -DHPX_WITH_LOGGING=OFF"
configure_extra_options+=" -DHPX_WITH_DATAPAR_BACKEND=EVE"
configure_extra_options+=" -DHPX_WITH_FETCH_EVE=ON"
Expand Down
2 changes: 2 additions & 0 deletions .jenkins/lsu/env-gcc-10.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ module load boost/1.75.0-${build_type,,}
module load hwloc
module load openmpi
module load pwrapi/1.1.1
module load gasnet/2023.3.0

export HPXRUN_RUNWRAPPER=srun
export CXX_STD="17"
Expand All @@ -24,6 +25,7 @@ configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_LCI=ON"
configure_extra_options+=" -DHPX_WITH_FETCH_LCI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_GASNET=ON"

# The pwrapi library still needs to be set up properly on rostam
# configure_extra_options+=" -DHPX_WITH_POWER_COUNTER=ON"
2 changes: 2 additions & 0 deletions .jenkins/lsu/env-gcc-12.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ module load boost/1.80.0-${build_type,,}
module load hwloc
module load openmpi
module load pwrapi/1.1.1
module load gasnet/2023.3.0

export HPXRUN_RUNWRAPPER=srun
export CXX_STD="20"
Expand All @@ -23,6 +24,7 @@ configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_LCI=ON"
configure_extra_options+=" -DHPX_WITH_FETCH_LCI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_GASNET=ON"
configure_extra_options+=" -DHPX_WITH_DATAPAR_BACKEND=EVE"
configure_extra_options+=" -DHPX_WITH_FETCH_EVE=ON"
configure_extra_options+=" -DHPX_WITH_EVE_TAG=main"
Expand Down
2 changes: 2 additions & 0 deletions .jenkins/lsu/env-gcc-13.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ module load boost/1.82.0-${build_type,,}
module load hwloc
module load openmpi
module load pwrapi/1.1.1
module load gasnet/2023.3.0

export HPXRUN_RUNWRAPPER=srun
export CXX_STD="20"
Expand All @@ -23,6 +24,7 @@ configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_LCI=ON"
configure_extra_options+=" -DHPX_WITH_FETCH_LCI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_GASNET=ON"
configure_extra_options+=" -DHPX_WITH_DATAPAR_BACKEND=EVE"
configure_extra_options+=" -DHPX_WITH_FETCH_EVE=ON"
configure_extra_options+=" -DHPX_WITH_EVE_TAG=main"
Expand Down
2 changes: 2 additions & 0 deletions .jenkins/lsu/env-gcc-9.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ module load boost/1.73.0-${build_type,,}
module load hwloc
module load openmpi
module load pwrapi/1.1.1
module load gasnet/2023.3.0

export HPXRUN_RUNWRAPPER=srun
export CXX_STD="17"
Expand All @@ -23,6 +24,7 @@ configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_LCI=ON"
configure_extra_options+=" -DHPX_WITH_FETCH_LCI=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_GASNET=ON"

# The pwrapi library still needs to be set up properly on rostam
# configure_extra_options+=" -DHPX_WITH_POWER_COUNTER=ON"
29 changes: 26 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1143,6 +1143,19 @@ if(HPX_WITH_NETWORKING)
ADVANCED
)

hpx_option(
HPX_WITH_PARCELPORT_GASNET BOOL "Enable the GASNET based parcelport." OFF
CATEGORY "Parcelport"
)
if(HPX_WITH_PARCELPORT_GASNET)
hpx_add_config_define(HPX_HAVE_PARCELPORT_GASNET)
hpx_option(
HPX_WITH_PARCELPORT_GASNET_CONDUIT STRING
"Define which conduit to use for the gasnet parcelport" "udp"
STRINGS "smp;udp;mpi;ofi;ucx;ibv"
)
endif()

hpx_option(
HPX_WITH_PARCELPORT_TCP BOOL "Enable the TCP based parcelport." ON
CATEGORY "Parcelport"
Expand Down Expand Up @@ -1180,7 +1193,10 @@ else(HPX_WITH_NETWORKING)
)
endif(HPX_WITH_NETWORKING)

if((HPX_WITH_NETWORKING AND HPX_WITH_PARCELPORT_MPI) OR HPX_WITH_ASYNC_MPI)
if((HPX_WITH_NETWORKING AND HPX_WITH_PARCELPORT_MPI)
OR HPX_WITH_ASYNC_MPI
OR ("${HPX_WITH_PARCELPORT_GASNET_CONDUIT}" STREQUAL "mpi")
)
# mpi parcelport settings
hpx_option(
HPX_WITH_PARCELPORT_MPI_ENV
Expand Down Expand Up @@ -2125,13 +2141,20 @@ add_hpx_library_headers_noglob(hpx_external)
# Setup plugins (set here cause if we include it inside plugins, it will not be
# defined in src/CMakeLists.txt where we call add_static_parcelports)
include(HPX_SetupMPI) # must come before APEX
if((HPX_WITH_NETWORKING AND HPX_WITH_PARCELPORT_MPI) OR HPX_WITH_ASYNC_MPI)
if((HPX_WITH_NETWORKING AND HPX_WITH_PARCELPORT_MPI)
OR HPX_WITH_ASYNC_MPI
OR ("${HPX_WITH_PARCELPORT_GASNET_CONDUIT}" STREQUAL "mpi")
)
hpx_setup_mpi()
endif()
include(HPX_SetupLCI)
if(HPX_WITH_NETWORKING AND HPX_WITH_PARCELPORT_LCI)
include(HPX_SetupLCI)
hpx_setup_lci()
endif()
if(HPX_WITH_NETWORKING AND HPX_WITH_PARCELPORT_GASNET)
include(HPX_SetupGasnet)
hpx_setup_gasnet()
endif()

# Setup packages and subprojects
include(HPX_SetupSYCL)
Expand Down
26 changes: 25 additions & 1 deletion cmake/HPX_AddTest.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

function(add_hpx_test category name)
set(options FAILURE_EXPECTED RUN_SERIAL NO_PARCELPORT_TCP NO_PARCELPORT_MPI
NO_PARCELPORT_LCI
NO_PARCELPORT_LCI NO_PARCELPORT_GASNET
)
set(one_value_args EXECUTABLE LOCALITIES THREADS_PER_LOCALITY TIMEOUT
RUNWRAPPER
Expand Down Expand Up @@ -172,6 +172,30 @@ function(add_hpx_test category name)
endif()
endif()
endif()
if(HPX_WITH_PARCELPORT_GASNET AND NOT ${name}_NO_PARCELPORT_GASNET)
set(_add_test FALSE)
if(DEFINED ${name}_PARCELPORTS)
set(PP_FOUND -1)
list(FIND ${name}_PARCELPORTS "gasnet" PP_FOUND)
if(NOT PP_FOUND EQUAL -1)
set(_add_test TRUE)
endif()
else()
set(_add_test TRUE)
endif()
if(_add_test)
set(_full_name "${category}.distributed.gasnet.${name}")
add_test(NAME "${_full_name}" COMMAND ${cmd} "-p" "gasnet" "-r"
"gasnet" ${args}
)
set_tests_properties("${_full_name}" PROPERTIES RUN_SERIAL TRUE)
if(${name}_TIMEOUT)
set_tests_properties(
"${_full_name}" PROPERTIES TIMEOUT ${${name}_TIMEOUT}
)
endif()
endif()
endif()
if(HPX_WITH_PARCELPORT_TCP AND NOT ${${name}_NO_PARCELPORT_TCP})
set(_add_test FALSE)
if(DEFINED ${name}_PARCELPORTS)
Expand Down
Loading