-
Notifications
You must be signed in to change notification settings - Fork 187
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
Get rid of mpi callbacks #4614
Labels
Milestone
Comments
kodiakhq bot
added a commit
that referenced
this issue
Feb 24, 2023
Partial fix for #4614 Partial fix for #4617 Follow-up to #4637 Description of changes: - reaction methods are now fully parallel and no longer rely on MpiCallbacks - reaction methods are no longer entangled with the particle management code - the Monte Carlo acceptance probability is now implemented in Python - API changes: - it is no longer possible to change the reaction constant of an existing reaction with `gamma <= 0` - `ReactionAlgorithm.reaction()` now takes `steps` instead of `reaction_steps` as argument - when setting up a MC method with two or more reactions, a runtime error is raised if a reaction accidentally overwrites the default charge of a specific type with a different value - under-the-hood changes: - the `particle_data.cpp` source file was removed - the `EspressoSystemStandAlone` class no longer relies on MpiCallbacks - frequency of cell system invalidation during Monte Carlo trial moves has been significantly reduced - the new Python interface of reaction methods is around 40% slower than the original C++ implementation
kodiakhq bot
added a commit
that referenced
this issue
Aug 7, 2023
Follow-up to #4614 Follow-up to #3180 (comment)
kodiakhq bot
added a commit
that referenced
this issue
Jan 19, 2024
Description of changes: - encapsulate thermostats and remove their Cython interface - use one C++ `ScriptInterface` class per core class (fixes #3980) - introduce the `ThermostatFlags` enum, allow deactivating a single thermostat, add an `is_active` flag accessible from the Python interface (fixes #4266) - remove 20 MPI callbacks - partial fix for #4614 - remove thermostat and thermalized/rigid bond global variables - partial fix for #2628 - remove a significant amount of historical Cython code that relied on deprecated Cython features - partial fix for #4542 - ESPResSo is now compatible with Cython 3.0 - the `nogil` deprecation warning subsists - improve testing of the thermostats interface - API changes: - thermalized bond parameter `seed` was moved to `system.thermostat.set_thermalized_bond()` - this change better reflects the fact there is only one global seed for all thermalized bonds - until now this global seed was overwritten by any newly created thermalized bond, whether it was added to the system or not - LB thermostat `seed` parameter now gets written to the RNG seed (silent change) - until now, the RNG seed was hardcoded as `0` and the `seed` value was used to set the RNG counter, thus two independent simulations with a different seed would actually get the same particle coupling random noise sequence with a time lag equal to the difference between the two seeds - this is a bugfix for ensemble runs - fixes #4848
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
espressomd.System
instances in a single scriptCell system / pair finding related
Analysis and status reporting
System and interaction properties
Propagation, equations of motion
Interactions
Particles management
The text was updated successfully, but these errors were encountered: