Gromacs  2020.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes
bonded_threading_t Struct Reference

#include <gromacs/listed_forces/listed_internal.h>

+ Collaboration diagram for bonded_threading_t:

Description

struct contain all data for bonded force threading

Public Member Functions

 bonded_threading_t (int numThreads, int numEnergyGroups)
 Constructor.
 

Public Attributes

int nthreads
 Number of threads to be used for bondeds.
 
std::vector< std::unique_ptr
< f_thread_t > > 
f_t
 Force/energy data per thread, size nthreads, stored in unique_ptr to allow thread local allocation.
 
int nblock_used
 The number of force blocks to reduce.
 
std::vector< int > block_index
 Index of size nblock_used into mask.
 
std::vector< gmx_bitmask_tmask
 Mask array, one element corresponds to a block of reduction_block_size atoms of the force array, bit corresponding to thread indices set if a thread writes to that block.
 
bool haveBondeds
 true if we have and thus need to reduce bonded forces
 
int max_nthread_uniform
 Maximum thread count for uniform distribution of bondeds over threads.
 
WorkDivision workDivision
 The division of work in the t_list over threads.
 
WorkDivision foreignLambdaWorkDivision
 Work division for free-energy foreign lambda calculations, always uses 1 thread.
 

The documentation for this struct was generated from the following files: