Skip to content

warpx v23.03#63

Merged
ax3l merged 2 commits intoconda-forge:mainfrom
regro-cf-autotick-bot:23.03_h1b5fd4
Apr 2, 2023
Merged

warpx v23.03#63
ax3l merged 2 commits intoconda-forge:mainfrom
regro-cf-autotick-bot:23.03_h1b5fd4

Conversation

@regro-cf-autotick-bot
Copy link
Copy Markdown
Contributor

It is very likely that the current package version for this feedstock is out of date.

Checklist before merging this PR:

  • Dependencies have been updated if changed: see upstream
  • Tests have passed
  • Updated license if changed and license_file is packaged

Information about this PR:

  1. Feel free to push to the bot's branch to update this PR if needed.
  2. The bot will almost always only open one PR per version.
  3. The bot will stop issuing PRs if more than 3 version bump PRs generated by the bot are open. If you don't want to package a particular version please close the PR.
  4. If you want these PRs to be merged automatically, make an issue with @conda-forge-admin,please add bot automerge in the title and merge the resulting PR. This command will add our bot automerge feature to your feedstock.
  5. If this PR was opened in error or needs to be updated please add the bot-rerun label to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase @conda-forge-admin, please rerun bot in a PR comment to have the conda-forge-admin add it for you.

This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/cf-scripts/actions/runs/4311467179, please use this URL for debugging.

@conda-forge-webservices
Copy link
Copy Markdown
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@ax3l ax3l self-assigned this Mar 27, 2023
@ax3l
Copy link
Copy Markdown
Member

ax3l commented Mar 27, 2023

Uff, that macOS build error in AMReX is new:

$BUILD_PREFIX/bin/ccache $BUILD_PREFIX/bin/x86_64-apple-darwin13.4.0-clang++ -DWARPX_DIM_1D_Z -DWARPX_QED -DWARPX_USE_OPENPMD -DWARPX_USE_PSATD -DWARPX_ZINDEX=0 -DWarpX_FFTW_OMP=1 -I$SRC_DIR/Source -I$SRC_DIR/build/Source -I$SRC_DIR/build/_deps/fetchedamrex-src/Tools/C_scripts -I$SRC_DIR/build/_deps/fetchedpicsar-src/multi_physics/QED/include -isystem $SRC_DIR/build/_deps/fetchedamrex-src/Src/Base -isystem $SRC_DIR/build/_deps/fetchedamrex-src/Src/Base/Parser -isystem $SRC_DIR/build/_deps/fetchedamrex-src/Src/Boundary -isystem $SRC_DIR/build/_deps/fetchedamrex-src/Src/AmrCore -isystem $SRC_DIR/build/_deps/fetchedamrex-src/Src/LinearSolvers/MLMG -isystem $SRC_DIR/build/_deps/fetchedamrex-src/Src/Particle -isystem $SRC_DIR/build/_deps/fetchedamrex-build -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fPIE -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -isystem $PREFIX/include -fdebug-prefix-map=$SRC_DIR=/usr/local/src/conda/warpx-23.03 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix -D_LIBCPP_DISABLE_AVAILABILITY -Wall -Wextra -Wpedantic -Wshadow -Woverloaded-virtual -Wextra-semi -Wunreachable-code -O2 -g -DNDEBUG -isysroot /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -mmacosx-version-min=10.9 -fPIC -fopenmp=libomp -std=c++17 -MD -MT CMakeFiles/WarpX.dir/Source/Particles/Collision/CollisionHandler.cpp.o -MF CMakeFiles/WarpX.dir/Source/Particles/Collision/CollisionHandler.cpp.o.d -o CMakeFiles/WarpX.dir/Source/Particles/Collision/CollisionHandler.cpp.o -c $SRC_DIR/Source/Particles/Collision/CollisionHandler.cpp

In file included from /Users/runner/miniforge3/conda-bld/warpx_1677743981740/work/Source/Particles/Collision/CollisionHandler.cpp:7:
In file included from /Users/runner/miniforge3/conda-bld/warpx_1677743981740/work/Source/Particles/Collision/CollisionHandler.H:10:
In file included from /Users/runner/miniforge3/conda-bld/warpx_1677743981740/work/Source/Particles/Collision/CollisionBase.H:13:
In file included from /Users/runner/miniforge3/conda-bld/warpx_1677743981740/work/build/_deps/fetchedamrex-src/Src/Base/AMReX_Vector.H:9:/Users/runner/miniforge3/conda-bld/warpx_1677743981740/work/build/_deps/fetchedamrex-src/Src/Base/AMReX_Array.H:32:12: error: cannot initialize a parameter of type 'void *' with an rvalue of type 'double *__restrict (*)[4]'
    struct GpuArray
           ^~~~~~~~
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/work/build/_deps/fetchedamrex-src/Src/Particle/AMReX_ParticleTile.H:16:8: note: in implicit move assignment operator for 'amrex::GpuArray<double *__restrict, 4>' first required here
struct ParticleTileData
       ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/_build_env/bin/../include/c++/v1/__algorithm/move.h:34:15: note: in implicit move assignment operator for 'amrex::ParticleTileData<0, 0, 4, 0>' first required here
    *__result = _IterOps<_AlgPolicy>::__iter_move(__first);
              ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/_build_env/bin/../include/c++/v1/__algorithm/move.h:54:17: note: in instantiation of function template specialization 'std::__move_impl<std::_ClassicAlgPolicy, amrex::ParticleTileData<0, 0, 4, 0> *, amrex::ParticleTileData<0, 0, 4, 0> *, amrex::ParticleTileData<0, 0, 4, 0> *>' requested here
    return std::__move_impl<_AlgPolicy, _InType*, _InType*, _OutType*>(__first, __last, __result);
                ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/_build_env/bin/../include/c++/v1/__algorithm/move.h:87:8: note: in instantiation of function template specialization 'std::__move_impl<std::_ClassicAlgPolicy, amrex::ParticleTileData<0, 0, 4, 0>, amrex::ParticleTileData<0, 0, 4, 0>, void>' requested here
  std::__move_impl<_AlgPolicy>(__last_base, __first_base, __result_first);
       ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/_build_env/bin/../include/c++/v1/__algorithm/move.h:97:21: note: in instantiation of function template specialization 'std::__move_impl<std::_ClassicAlgPolicy, amrex::ParticleTileData<0, 0, 4, 0> *, amrex::ParticleTileData<0, 0, 4, 0> *, 0>' requested here
  auto __ret = std::__move_impl<_AlgPolicy>(
                    ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/_build_env/bin/../include/c++/v1/__algorithm/move.h:114:15: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
  return std::__move<_ClassicAlgPolicy>(__first, __last, __result).second;
              ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/_build_env/bin/../include/c++/v1/__memory/uninitialized_algorithms.h:635:17: note: in instantiation of function template specialization 'std::move<std::reverse_iterator<amrex::ParticleTileData<0, 0, 4, 0> *>, std::reverse_iterator<amrex::ParticleTileData<0, 0, 4, 0> *>>' requested here
    return std::move(__first1, __last1, __first2);
                ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/_build_env/bin/../include/c++/v1/vector:924:27: note: in instantiation of function template specialization 'std::__uninitialized_allocator_move_if_noexcept<std::allocator<amrex::ParticleTileData<0, 0, 4, 0>>, std::reverse_iterator<amrex::ParticleTileData<0, 0, 4, 0> *>, std::reverse_iterator<amrex::ParticleTileData<0, 0, 4, 0> *>, amrex::ParticleTileData<0, 0, 4, 0>, void>' requested here
    __v.__begin_   = std::__uninitialized_allocator_move_if_noexcept(
                          ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/_build_env/bin/../include/c++/v1/vector:1573:5: note: in instantiation of member function 'std::vector<amrex::ParticleTileData<0, 0, 4, 0>>::__swap_out_circular_buffer' requested here
    __swap_out_circular_buffer(__v);
    ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/_build_env/bin/../include/c++/v1/vector:1601:9: note: in instantiation of function template specialization 'std::vector<amrex::ParticleTileData<0, 0, 4, 0>>::__push_back_slow_path<amrex::ParticleTileData<0, 0, 4, 0>>' requested here
        __push_back_slow_path(_VSTD::move(__x));
        ^
/Users/runner/miniforge3/conda-bld/warpx_1677743981740/work/Source/Particles/Collision/BinaryCollision/ParticleCreationFunc.H:142:26: note: in instantiation of member function 'std::vector<amrex::ParticleTileData<0, 0, 4, 0>>::push_back' requested here
            soa_products.push_back(tile_products[i]->getParticleTileData());
                         ^

Uses AppleClang 14.0.6 with a recent libc++.

@ax3l ax3l merged commit 658f1ab into conda-forge:main Apr 2, 2023
@regro-cf-autotick-bot regro-cf-autotick-bot deleted the 23.03_h1b5fd4 branch April 4, 2023 21:39
WeiqunZhang pushed a commit to AMReX-Codes/amrex that referenced this pull request Apr 7, 2023
## Summary

Remove the `restrict` qualifier from `GpuArray` members in
`ParticleTileData`. We see compilation problems with, among others Clang
14.0.6 and AppleClang, for this construct.

We expect that using `restrict` (`AMREX_RESTRICT`) on APIs as well as
aliased pointers in these arrays before access should be sufficient to
prevent that the compiler thinks that individual arrays alias each other
in hot loops.

## Additional background

- WarpX build regressions since 23.03, e.g.,
  - conda-forge/warpx-feedstock#63
  - conda-forge/warpx-feedstock#64
  - BLAST-WarpX/warpx#3817
- independently, about to be remove in
#2878
guj pushed a commit to guj/amrex that referenced this pull request Jul 13, 2023
## Summary

Remove the `restrict` qualifier from `GpuArray` members in
`ParticleTileData`. We see compilation problems with, among others Clang
14.0.6 and AppleClang, for this construct.

We expect that using `restrict` (`AMREX_RESTRICT`) on APIs as well as
aliased pointers in these arrays before access should be sufficient to
prevent that the compiler thinks that individual arrays alias each other
in hot loops.

## Additional background

- WarpX build regressions since 23.03, e.g.,
  - conda-forge/warpx-feedstock#63
  - conda-forge/warpx-feedstock#64
  - BLAST-WarpX/warpx#3817
- independently, about to be remove in
AMReX-Codes#2878
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants