AutoPas  3.0.0
Loading...
Searching...
No Matches
Namespaces | Typedefs | Functions
AutoPasConfigurationCommunicator.h File Reference
#include <array>
#include <cstddef>
#include <vector>
#include "WrapMPI.h"
#include "autopas/containers/ParticleContainerInterface.h"
#include "autopas/tuning/Configuration.h"
#include "autopas/utils/ExceptionHandler.h"
#include "autopas/utils/NumberSet.h"
Include dependency graph for AutoPasConfigurationCommunicator.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  autopas
 This is the main namespace of AutoPas.
 
namespace  autopas::utils
 In this namespace some helper classes and functions can be found used inside of AutoPas.
 
namespace  autopas::utils::AutoPasConfigurationCommunicator
 Provides several functions for handling configurations among mpi ranks.
 

Typedefs

using autopas::utils::AutoPasConfigurationCommunicator::SerializedConfiguration = std::array< std::byte, serializedConfigurationSize >
 Type definition for the serialization of configurations.
 

Functions

void autopas::utils::AutoPasConfigurationCommunicator::distributeRanksInBuckets (AutoPas_MPI_Comm comm, AutoPas_MPI_Comm *bucket, double smoothedPDBinStdDevDensity, double smoothedPDBinMaxDensity, double MPITuningMaxDifferenceForBucket, double MPITuningWeightForMaxDensity)
 Distribute ranks in buckets, which contain only ranks with similar scenarios.
 
SerializedConfiguration autopas::utils::AutoPasConfigurationCommunicator::serializeConfiguration (const Configuration &configuration)
 Serializes a configuration object for communication via MPI.
 
std::vector< std::byte > autopas::utils::AutoPasConfigurationCommunicator::serializeConfigurations (const std::vector< Configuration > &configurations)
 Serialize a vector of configuration objects into a vector of bytes via serializeConfiguration().
 
Configuration autopas::utils::AutoPasConfigurationCommunicator::deserializeConfiguration (const SerializedConfiguration &config)
 Recreates a Configuration object from the object obtained by _serializeConfiguration.
 
std::vector< Configuration > autopas::utils::AutoPasConfigurationCommunicator::deserializeConfigurations (const std::vector< std::byte > &configurationsSerialized)
 Deserialize a vector of bytes into a vector of configurations.
 
Configuration autopas::utils::AutoPasConfigurationCommunicator::findGloballyBestConfiguration (AutoPas_MPI_Comm comm, Configuration localOptimalConfig, long localOptimalTime)
 Handles communication to select the globally best configuration.
 
std::vector< Configuration > autopas::utils::AutoPasConfigurationCommunicator::gatherConfigurations (AutoPas_MPI_Comm comm, const std::vector< Configuration > &localConfigurations, int root)
 Gather the configuration vectors of all ranks in the communicator into one vector at the root process.
 

Detailed Description

Author
W. Thieme
Date
30.04.2020