Skip to content

Conversation

@Iximiel
Copy link
Member

@Iximiel Iximiel commented Dec 15, 2025

Description

I think that now the cudaCoordination has the correct shape:
Each kernel is one of the cells setup with the linkcells and runs on all the atoms in the cells and in the surrounding cells.

Now it is possible adding a new switching function without getting too crazy, with a some template shenanigans.

A next step could be set up a way to use non orthogonal pbc also in the kernels.

I wanted to post some benchmark but I encountered this problem:
image
I asked for a cutoff of 4 with atoms evenly distributed in a simple cubic arrangement with a cell size of 1, and I am getting cells of 125 atoms instead of 64 (with some cells that have less atoms).

I think this is a problem in linkcells in the way in which it is assigning atoms to their cells.

Target release

I would like my code to appear in release V2.10

Type of contribution
  • changes to code or doc authored by PLUMED developers, or additions of code in the core or within the default modules
  • changes to a module not authored by you
  • new module contribution or edit of a module authored by you
Copyright
  • I agree to transfer the copyright of the code I have written to the PLUMED developers or to the author of the code I am modifying.
  • the module I added or modified contains a COPYRIGHT file with the correct license information. Code should be released under an open source license. I also used the command cd src && ./header.sh mymodulename in order to make sure the headers of the module are correct.
Tests
  • I added a new regtest or modified an existing regtest to validate my changes.
  • I verified that all regtests are passed successfully on GitHub Actions.

starting to compact the Coordination part of the function

set up the base for mocking some flexibility

setting up a map for running the wanted kernel

Now it should be easier to add new switching functions

some cleaning

correcting some regtest, better feedback on the number of atoms

Now the cell calculations will be run ony at cell reset

Changing the number of threads for more concurrency
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.

1 participant