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

Particles: CUDA Array Interface #86

Merged
merged 5 commits into from
Feb 8, 2023

Conversation

ax3l
Copy link
Member

@ax3l ax3l commented Oct 17, 2022

Add the __cuda_array_interface__ to particles.
Similar to #30, related to #9

  • PODVector (incl. SoA)
  • AoS
  • Support allocators for particle data stuctures

Follow-up:

@ax3l ax3l added the enhancement New feature or request label Oct 17, 2022
@ax3l ax3l force-pushed the cuda-array-interface-particles branch 2 times, most recently from c98d13d to 1375411 Compare October 20, 2022 23:45
@ax3l ax3l force-pushed the cuda-array-interface-particles branch from 1375411 to bc83999 Compare February 4, 2023 07:02
@ax3l ax3l force-pushed the cuda-array-interface-particles branch 3 times, most recently from 5179f9a to 9218519 Compare February 4, 2023 09:43
Add the `__cuda_array_interface__` to particles.
@ax3l ax3l force-pushed the cuda-array-interface-particles branch from ba690df to 26bd981 Compare February 7, 2023 23:19
@ax3l ax3l force-pushed the cuda-array-interface-particles branch from 26bd981 to 20fe304 Compare February 8, 2023 01:17
@ax3l ax3l force-pushed the cuda-array-interface-particles branch from 20fe304 to 9a4d7d8 Compare February 8, 2023 01:45
.def("setSuperParticle", &ParticleTileDataType::setSuperParticle)
// setter & getter
.def("__setitem__", [](ParticleTileDataType &pdt, int const v,
SuperParticleType const value) { pdt.setSuperParticle(value, v); })

Check notice

Code scanning / CodeQL

Large object passed by value

This parameter of type [const SuperParticleType](1) is 72 bytes - consider passing a const pointer/reference instead. This parameter of type [const SuperParticleType](1) is 88 bytes - consider passing a const pointer/reference instead. This parameter of type [const SuperParticleType](1) is 336 bytes - consider passing a const pointer/reference instead.
>;
using ParticleInitData = typename ParticleContainerType::ParticleInitData;
using ParticleTileType = typename ParticleContainerType::ParticleTileType;
//using AoS = typename ParticleContainerType::AoS;

Check notice

Code scanning / CodeQL

Commented-out code

This comment appears to contain commented-out code.
@ax3l ax3l changed the title [WIP] Particles: CUDA Array Interface Particles: CUDA Array Interface Feb 8, 2023
Remove one unnecessary & untested combination.
@ax3l ax3l force-pushed the cuda-array-interface-particles branch from 4d3f151 to 7acf487 Compare February 8, 2023 06:11
@ax3l ax3l merged commit 087b6d1 into AMReX-Codes:development Feb 8, 2023
@ax3l ax3l deleted the cuda-array-interface-particles branch February 8, 2023 06:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant