-
Notifications
You must be signed in to change notification settings - Fork 217
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
switch to C++20 #5246
base: dev
Are you sure you want to change the base?
switch to C++20 #5246
Conversation
psychocoderHPC
commented
Jan 8, 2025
•
edited
Loading
edited
- update docuemntation
- update CI tests
- remove HIP 5.X
- remove CUDA 11.X
- remove GCC9
- set in all CMake files the C++ standard to C++20
- update to mallocMC 2.7.0-dev
- This update is required to remove a deprecated warning triggered when switching to C++20 because most volatile usages are deprecated with C++20.
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.
This line in the readme needs to be updated
[![Language](https://img.shields.io/badge/language-C%2B%2B17-orange.svg)](https://isocpp.org/)
- update docuemntation - update CI tests - remove HIP 5.X - remove CUDA 11.X - remove GCC9 - set in all CMake files the C++ standard to C++20
284d2b8
to
ea5d273
Compare
ea5d273
to
b763ba4
Compare
@@ -140,7 +140,7 @@ namespace mallocMC | |||
* compile time. The volatile workaround has no negative effects on the | |||
* register usage in CUDA. | |||
*/ | |||
alloc(AlpakaDevice& dev, AlpakaQueue& queue, volatile size_t size) | |||
alloc(AlpakaDevice& dev, AlpakaQueue& queue, size_t size) |
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.
is this safe? The comment above indicates that the volatile is really required.
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.
good catch!
no it is not safe, therefor I set the PR to draft, I was testing first if this will solve the Ci issues. I will prepare a PR to update mallocMC to latest dev where the volatile is removed. Volatile was a workaround for a workaround which is most likely not required anymore, therefore it is already removed upstream.
- `boost::call_traits` run into compile issues when using clang 18 and cuda 12.1 and boost 1.77 - fix `CONST_VECTOR` - for clang CUDA the guard macros was wrongly set
127b29fabb Merge pull request ComputationalRadiationPhysics#271 from chillenzer/topic-flatterScatter 7846a36fc7 Add submodule to CI 42a96e94ae Remove redundant memset 36e91a9dcf Update license headers 660ad4fffd Minor adjustments to CI 7665162fa1 Update CMakeLists.txt including version bump for Catch2 10221ebded Add catch2 as submodule 8115fc93c6 Update tests 8485629cf2 Update examples 4d0b90b6fc Update LICENSE, README and Usage 745cb2a333 Add FlatterScatter 0bdd7b5117 Run clang-format 2596432b50 Update utils e8529c4575 Update XMallocSIMD d752602f19 Update old creation policies 4058862dcc Update device_allocator.hpp b48b750431 Update allocator.hpp 76c4f46a61 Merge pull request ComputationalRadiationPhysics#270 from chillenzer/update-before-flatterscatter 363090535e Merge pull request ComputationalRadiationPhysics#269 from chillenzer/update-zenodo 16c5d0de5b Run clang-format 61154b1098 Update utils 0b69f038ff Update XMallocSIMD 79c1962f99 Update old creation policies 4a6a444911 Update device_allocator.hpp 2a9e806119 Update allocator.hpp 1fc71c5294 Update .zenodo.json f6af760bd7 Merge pull request ComputationalRadiationPhysics#268 from chillenzer/update-tooling 8c897de3d4 Merge pull request ComputationalRadiationPhysics#267 from chillenzer/update-clang-format 8a1281a0bb Update .gitignore 14ef1ec4c0 Minor tweaks in github action e7450d9f44 Clean and add to .clang-tidy fbefa18015 Run clang-format 1fea13bb87 Copy .clang-format from alpaka 29d275791d Merge pull request ComputationalRadiationPhysics#266 from chillenzer/add-pre-commit bd28b52b32 Remove outdated enforce-ascii from pre-commit config 66a7d41914 Add pre-commit lite action 85a1e480b1 Run pre-commit ff530bb0b5 Add .pre-commit-config.yaml 486a2956d0 Merge pull request ComputationalRadiationPhysics#264 from chillenzer/bump-C++20 602e95db5f Bump C++ version to 20 0b9231a754 Merge pull request ComputationalRadiationPhysics#263 from chillenzer/alpaka-1.2.0 fa52618c4f Run clang-format c9c5ae94e4 Bump version of clang-format, its action and checkout 25f42e3aea Update alpaka version number in INSTALL.md 1e6f75bbf8 Merge commit '30ee4f3ab8d7e42ef20cb5495cc3a94b15193abb' as 'alpaka' 30ee4f3ab8 Squashed 'alpaka/' content from commit fe9436d5 4513a7a81c Remove alpaka to pull the latest release 2689825301 LICENSE file remove C-comment (ComputationalRadiationPhysics#262) 7bf50bf587 Bump version to 3.0.0 (ComputationalRadiationPhysics#261) REVERT: 89c9597c91 Release 2.6.0 (ComputationalRadiationPhysics#260) git-subtree-dir: thirdParty/mallocMC git-subtree-split: 127b29fabbb01c9a055bb5d21213daf2db5e6843
045e70d
to
3205099
Compare
.gitlab-ci.yml
Outdated
@@ -9,6 +9,7 @@ stages: | |||
variables: | |||
CONTAINER_TAG: "3.2" | |||
PIC_CI_MAINLINE: "TRUE" | |||
GIT_SUBMODULE_UPDATE_FLAGS: normal |
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.
GIT_SUBMODULE_UPDATE_FLAGS: normal | |
GIT_SUBMODULE_STRATEGY: normal |
d543a51
to
85338d2
Compare
Submodules from third party dependencies should not be fetched to avoid issues between subtree third party dependencies. Third party submodules will be placed into the top level project tree which can create conflicts between submodules of PIConGPU and dependencies. This issues is abserved e.g. with catch2.
85338d2
to
da77c0f
Compare