Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into release
Browse files Browse the repository at this point in the history
  • Loading branch information
aurianer committed Aug 14, 2020
2 parents a78ab52 + 148ffaa commit e5b1032
Show file tree
Hide file tree
Showing 310 changed files with 21,012 additions and 4,992 deletions.
1 change: 1 addition & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,7 @@ jobs:
-DHPX_WITH_SPINLOCK_DEADLOCK_DETECTION=On \
-DCMAKE_EXPORT_COMPILE_COMMANDS=On \
-DHPX_WITH_DOCUMENTATION=On \
-DHPX_WITH_LIBCDS=ON=On \
-DHPX_WITH_DOCUMENTATION_OUTPUT_FORMATS="${DOCUMENTATION_OUTPUT_FORMATS}"
- persist_to_workspace:
root: /hpx
Expand Down
13 changes: 12 additions & 1 deletion .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<!-- Copyright (c) 2014-2017 Hartmut Kaiser -->
<!-- Copyright (c) 2014-2020 Hartmut Kaiser -->
<!-- -->
<!-- SPDX-License-Identifier: BSL-1.0 -->
<!-- Distributed under the Boost Software License, Version 1.0. (See accompanying -->
Expand All @@ -12,6 +12,11 @@ Great to have you here. There are a few ways you can help make HPX better!
This page describes how you can get yourself involved with the development of
HPX. Here are some easy things to do.

All of the HPX development and the related discussions happen through the
[Github ticket system](https://github.com/STEllAR-GROUP/hpx/issues). We are
looking forward to contributions submitted through the usual Github process,
i.e. pull requests.

The easiest ways to get in contact with us are listed here:

* Mailing list: [[email protected]](email:[email protected]), [[email protected]](email:[email protected])
Expand Down Expand Up @@ -129,6 +134,12 @@ A few additional ones:

Community is an important part of all we do.

* The HPX project is a meritocratic, consensus-based community project. Anyone
with an interest in the project can join the community, contribute to the
project design and participate in the decision making process.
`This document <http://hpx.stellar-group.org/documents/governance/>`_ describes
how that participation takes place and how to set about earning merit within
the project community.
* You can help us answer questions our users have by being around on IRC
(#ste||ar on irc.freenode.net) or by chiming in on the
[users mailing list](email:[email protected])
Expand Down
2 changes: 1 addition & 1 deletion .jenkins/cscs/ctest.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

cmake_minimum_required(VERSION 3.1 FATAL_ERROR)

set(CTEST_TEST_TIMEOUT 120)
set(CTEST_TEST_TIMEOUT 300)
set(CTEST_BUILD_PARALLELISM 20)
set(CTEST_TEST_PARALLELISM 4)
set(CTEST_CMAKE_GENERATOR Ninja)
Expand Down
1 change: 1 addition & 0 deletions .jenkins/cscs/env-clang-apex.sh
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ configure_extra_options+=" -DHPX_WITH_DEPRECATION_WARNINGS=OFF"
configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS=ON"
configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_SPINLOCK_DEADLOCK_DETECTION=ON"
configure_extra_options+=" -DHPX_WITH_LIBCDS=ON"
configure_extra_options+=" -DHPX_WITH_APEX=ON"
configure_extra_options+=" -DHPX_WITH_PAPI=ON"
configure_extra_options+=" -DAPEX_WITH_PAPI=ON"
Expand Down
2 changes: 1 addition & 1 deletion .jenkins/lsu/Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ pipeline {
axes {
axis {
name 'configuration_name'
values 'gcc-8', 'gcc-9', 'clang-7', 'clang-8', 'clang-9', 'gcc-10-cuda-11'
values 'gcc-8', 'gcc-9', 'clang-7', 'clang-8', 'clang-9', 'gcc-9-cuda-11'
}
axis {
name 'build_type'
Expand Down
2 changes: 1 addition & 1 deletion .jenkins/lsu/ctest.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

cmake_minimum_required(VERSION 3.1 FATAL_ERROR)

set(CTEST_TEST_TIMEOUT 120)
set(CTEST_TEST_TIMEOUT 300)
set(CTEST_BUILD_PARALLELISM 20)
set(CTEST_TEST_PARALLELISM 4)
set(CTEST_CMAKE_GENERATOR Ninja)
Expand Down
2 changes: 1 addition & 1 deletion .jenkins/lsu/entry.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ sbatch \
--job-name="jenkins-hpx-${configuration_name_with_build_type}" \
--nodes="${configuration_slurm_num_nodes}" \
--partition="${configuration_slurm_partition}" \
--time="03:00:00" \
--time="06:00:00" \
--output="jenkins-hpx-${configuration_name_with_build_type}.out" \
--error="jenkins-hpx-${configuration_name_with_build_type}.err" \
--wait .jenkins/lsu/batch.sh
Expand Down
1 change: 1 addition & 0 deletions .jenkins/lsu/env-clang-7.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,4 @@ configure_extra_options+=" -DHPX_WITH_DEPRECATION_WARNINGS=OFF"
configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS=ON"
configure_extra_options+=" -DHPX_WITH_COMPILER_WARNINGS_AS_ERRORS=ON"
configure_extra_options+=" -DHPX_WITH_PARCELPORT_MPI=ON"
configure_extra_options+=" -DHPX_WITH_DYNAMIC_HPX_MAIN=OFF"
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,4 @@ configure_extra_options+=" -DHPX_WITH_NETWORKING=OFF"
configure_extra_options+=" -DHPX_WITH_DISTRIBUTED_RUNTIME=OFF"
configure_extra_options+=" -DHPX_WITH_LOGGING=OFF"
configure_extra_options+=" -DHPX_WITH_ASYNC_MPI=ON"
configure_extra_options+=" -DNVCC_FLAGS=-arch=sm_35"
2 changes: 1 addition & 1 deletion .jenkins/lsu/slurm-configuration-clang-7.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

configuration_slurm_partition="medusa"
configuration_slurm_partition="medusa,marvin"
configuration_slurm_num_nodes="1"
2 changes: 1 addition & 1 deletion .jenkins/lsu/slurm-configuration-clang-8.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

configuration_slurm_partition="medusa"
configuration_slurm_partition="medusa,marvin"
configuration_slurm_num_nodes="1"
2 changes: 1 addition & 1 deletion .jenkins/lsu/slurm-configuration-clang-9.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

configuration_slurm_partition="medusa"
configuration_slurm_partition="medusa,marvin"
configuration_slurm_num_nodes="1"
2 changes: 1 addition & 1 deletion .jenkins/lsu/slurm-configuration-gcc-8.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

configuration_slurm_partition="marvin"
configuration_slurm_partition="medusa,marvin"
configuration_slurm_num_nodes="1"
2 changes: 1 addition & 1 deletion .jenkins/lsu/slurm-configuration-gcc-9.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

configuration_slurm_partition="marvin"
configuration_slurm_partition="medusa,marvin"
configuration_slurm_num_nodes="1"
33 changes: 30 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -194,8 +194,10 @@ hpx_option(
HPX_WITH_DEPRECATION_WARNINGS BOOL
"Enable warnings for deprecated facilities. (default: ON)" ON ADVANCED
)

if(HPX_WITH_DEPRECATION_WARNINGS)
hpx_add_config_define(HPX_HAVE_DEPRECATION_WARNINGS)
# enable deprecation warnings globally
hpx_add_config_cond_define(HPX_HAVE_DEPRECATION_WARNINGS 1)
endif()

# Generic build options
Expand Down Expand Up @@ -342,6 +344,31 @@ if(HPX_WITH_UNITY_BUILD AND (CMAKE_VERSION VERSION_LESS "3.16"))
hpx_error("HPX_WITH_UNITY_BUILD=ON but this requires CMake 3.16 or newer.")
endif()

# ##############################################################################
# Dynamic hpx_main
# ##############################################################################

set(HPX_WITH_DYNAMIC_HPX_MAIN_DEFAULT OFF)
if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux" OR APPLE)
set(HPX_WITH_DYNAMIC_HPX_MAIN_DEFAULT ON)
endif()

hpx_option(
HPX_WITH_DYNAMIC_HPX_MAIN
BOOL
"Enable dynamic overload of system ``main()`` (Linux and Apple only, default: ON)"
${HPX_WITH_DYNAMIC_HPX_MAIN_DEFAULT}
ADVANCED
)
if(HPX_WITH_DYNAMIC_HPX_MAIN)
if(NOT HPX_WITH_DYNAMIC_HPX_MAIN_DEFAULT)
hpx_error(
"HPX_WITH_DYNAMIC_HPX_MAIN was set to ON, but the option is only available on Linux and Apple (this is \"${CMAKE_SYSTEM_NAME}\")."
)
endif()
hpx_add_config_define(HPX_HAVE_DYNAMIC_HPX_MAIN)
endif()

# ##############################################################################
# Some platforms do not support dynamic linking. Enable this to link all
# libraries statically. This also changes some of the internals of HPX related
Expand Down Expand Up @@ -943,8 +970,8 @@ if(HPX_WITH_LIBCDS)
https://github.com/STEllAR-GROUP/libcds CATEGORY "Thread Manager" ADVANCED
)
hpx_option(
HPX_WITH_LIBCDS_GIT_TAG STRING "Define the LibCDS git tag to use."
hpx-thread CATEGORY "Thread Manager" ADVANCED
HPX_WITH_LIBCDS_GIT_TAG STRING "Define the LibCDS git tag to use." hpx-1.5
CATEGORY "Thread Manager" ADVANCED
)
include(HPX_SetupLibCDS)
if(NOT libcds_POPULATED)
Expand Down
3 changes: 2 additions & 1 deletion cmake/HPX_AddTest.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,8 @@ function(add_hpx_test category name)

if(${HPX_WITH_PARALLEL_TESTS_BIND_NONE}
AND NOT run_serial
AND ${name}_LOCALITIES STREQUAL "1"
AND NOT "${name}_RUNWRAPPER"
AND (${name}_LOCALITIES STREQUAL "1" OR NOT ${HPX_WITH_NETWORKING})
)
set(args ${args} "--hpx:bind=none")
endif()
Expand Down
2 changes: 1 addition & 1 deletion cmake/HPX_GeneratePackage.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ install(
if(NOT MSVC)
add_library(hpx_pkgconfig_application INTERFACE)
target_link_libraries(
hpx_pkgconfig_application INTERFACE hpx hpx_init hpx_wrap
hpx_pkgconfig_application INTERFACE hpx hpx_wrap hpx_init
)
target_compile_definitions(
hpx_pkgconfig_application INTERFACE HPX_APPLICATION_EXPORTS
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,22 +31,22 @@ void test(T minval, T maxval)
{
std::vector<char> buffer;

hpx::serialization::output_archive oarchive(buffer,
hpx::serialization::disable_data_chunking);
hpx::serialization::output_archive oarchive(
buffer, hpx::serialization::disable_data_chunking);

std::size_t sz = static_cast<std::size_t>(maxval-minval);
std::size_t sz = static_cast<std::size_t>(maxval - minval);

hpx::partitioned_vector<T> os(sz);
os.register_as("test_vector");
hpx::parallel::fill(
hpx::fill(
hpx::parallel::execution::par, std::begin(os), std::end(os), 42);

oarchive << os;

hpx::serialization::input_archive iarchive(buffer);

hpx::partitioned_vector<T> is(os.size());
hpx::parallel::fill(
hpx::fill(
hpx::parallel::execution::par, std::begin(is), std::end(is), 0);

iarchive >> is;
Expand Down Expand Up @@ -85,4 +85,3 @@ int main()

return hpx::util::report_errors();
}

2 changes: 1 addition & 1 deletion components/iostreams/include/hpx/include/iostreams.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
#include <hpx/config.hpp>
#include <hpx/iostream.hpp>

#if defined(HPX_HAVE_DEPRECATION_WARNINGS)
#if (HPX_HAVE_DEPRECATION_WARNINGS != 0)
#if defined(HPX_MSVC)
#pragma message("The header hpx/include/iostreams.hpp is deprecated, \
please include hpx/iostream.hpp instead")
Expand Down
2 changes: 2 additions & 0 deletions docs/sphinx/contributing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ collection of useful information related to |hpx| development.

.. toctree::

contributing/contributing
contributing/governance
contributing/release_procedure
contributing/testing_hpx
contributing/docker_image
Expand Down
19 changes: 19 additions & 0 deletions docs/sphinx/contributing/contributing.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
..
Copyright (C) 2020 Hartmut Kaiser
SPDX-License-Identifier: BSL-1.0
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

.. _contributing:

=====================
Contributing to |hpx|
=====================

The main source of information to understand the process of how to contribute
to HPX can be found in
`this document <https://github.com/STEllAR-GROUP/hpx/blob/master/.github/CONTRIBUTING.md>`_.
This is a living document that is constantly updated with relevant information.


20 changes: 20 additions & 0 deletions docs/sphinx/contributing/governance.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
..
Copyright (C) 2020 Hartmut Kaiser
SPDX-License-Identifier: BSL-1.0
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

.. _governance:

======================
|hpx| governance model
======================

The |hpx| project is a meritocratic, consensus-based community project. Anyone
with an interest in the project can join the community, contribute to the
project design and participate in the decision making process.
`This document <http://hpx.stellar-group.org/documents/governance/>`_ describes
how that participation takes place and how to set about earning merit within
the project community.

Loading

0 comments on commit e5b1032

Please sign in to comment.