-
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
use mallocMC for species storage #640
use mallocMC for species storage #640
Conversation
# Find mallocMC | ||
############################################################################### | ||
|
||
find_package(mallocMC 2.0.1 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.
for now: +EXACT
due to upcoming interface changes in mallocMC 2.1.0
@@ -253,6 +252,12 @@ if( (Boost_VERSION EQUAL 105500) AND | |||
"${CUDA_NVCC_FLAGS} \"-DBOOST_NOINLINE=__attribute__((noinline))\" ") | |||
endif() | |||
|
|||
################################################################################ |
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.
ok for now, but as talked offline: we will simply add a include in the final version to reduce install dependencies.
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.
opened #717
looks good 👍 |
This version needs a small refactoring against the current mallocMC release. |
fantastico! ✨ |
40957b1
to
00f1c1a
Compare
After our compile suite is updated it is ready to merge. |
I will update it asap - nevertheless, I think we should
|
00f1c1a
to
2ce8d0a
Compare
2ce8d0a
to
efb68eb
Compare
rebased against #717 |
- add `mallocMC` to CMake - add previues and next pointer to the `Frame` class - add PointerWrapper class `Pointer<>`
delete not maintained classes
- add documentation - CMakeLists.txt: search for exact `mallocMC` version - ParticlesFunctors.hpp: fix hard coded `FrameType`
add threadfence_block() after one thread cleared all `multi masks`.
- change github annotations - change pagesize to 2MiB - set reset free pages to `true`
efb68eb
to
dad4184
Compare
@@ -39,7 +39,6 @@ set(CMAKE_PREFIX_PATH "/usr/lib/x86_64-linux-gnu/" "$ENV{MPI_ROOT}" | |||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} | |||
${CMAKE_CURRENT_SOURCE_DIR}/../../thirdParty/cmake-modules/) | |||
|
|||
|
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.
pls revert the changes in this file
90ef4d1
to
8e088ea
Compare
- ParticleBox: - remove host modifier for all methods - use mallocMC::malloc and mallocMC::free
8e088ea
to
8275f29
Compare
It would be cool if we could add a plain benchmark "before" - "after" mallocMC (without plugins) to just document the performance stayed the same. |
Runtime KHI 3d Esirkepov [in seconds] on 16 K80 GPUs 10k simulation steps:
|
well done, good work! 👍 |
👍 cool |
This pull request use mallocMC to manage the shared species memory.
mallocMC
toCMakeLists.txt
Pointer<>
Tests:
Do not merge before#717