22 size_t num_dependencies = spds.GetLocationDependencies().size();
29 for (
int prelocI=0; prelocI<num_dependencies; prelocI++)
39 message_size = ceil((
double)num_unknowns/(
double)message_count);
43 message_count = ceil((
double)num_unknowns*8/(
double)(
double)
EAGER_LIMIT);
44 message_size = ceil((
double)num_unknowns/(
double)message_count);
50 for (
int m=0; m<(message_count-1); m++)
54 num_unknowns -= message_size;
55 pre_block_pos += message_size;
67 size_t num_delayed_dependencies = spds.GetDelayedLocationDependencies().size();
74 for (
int prelocI=0; prelocI<num_delayed_dependencies; prelocI++)
84 message_size = ceil((
double)num_unknowns/(
double)message_count);
88 message_count = ceil((
double)num_unknowns*8/(
double)(
double)
EAGER_LIMIT);
89 message_size = ceil((
double)num_unknowns/(
double)message_count);
95 for (
int m=0; m<(message_count-1); m++)
99 num_unknowns -= message_size;
100 pre_block_pos += message_size;
113 size_t num_successors = spds.GetLocationSuccessors().size();
121 for (
int deplocI=0; deplocI<num_successors; deplocI++)
131 message_size = ceil((
double)num_unknowns/(
double)message_count);
135 message_count = ceil((
double)num_unknowns*8/(
double)(
double)
EAGER_LIMIT);
136 message_size = ceil((
double)num_unknowns/(
double)message_count);
142 for (
int m=0; m<(message_count-1); m++)
146 num_unknowns -= message_size;
147 dep_block_pos += message_size;
160 int angset_max_message_count = 0;
161 for (
size_t prelocI=0; prelocI<num_dependencies; prelocI++)
162 angset_max_message_count =
165 for (
size_t prelocI=0; prelocI<num_delayed_dependencies; prelocI++)
166 angset_max_message_count =
169 for (
size_t deplocI=0; deplocI<num_successors; deplocI++)
170 angset_max_message_count =
unsigned long long int u_ll_int
std::vector< std::vector< u_ll_int > > delayed_prelocI_message_blockpos
std::vector< std::vector< u_ll_int > > delayed_prelocI_message_size
std::vector< int > delayed_prelocI_message_count
std::vector< std::vector< u_ll_int > > deplocI_message_blockpos
std::vector< std::vector< bool > > prelocI_message_received
std::vector< std::vector< u_ll_int > > deplocI_message_size
std::vector< std::vector< u_ll_int > > prelocI_message_size
std::vector< int > prelocI_message_count
std::vector< std::vector< bool > > delayed_prelocI_message_received
std::vector< std::vector< MPI_Request > > deplocI_message_request
std::vector< std::vector< u_ll_int > > prelocI_message_blockpos
std::vector< int > deplocI_message_count
void BuildMessageStructure()
const SPDS & GetSPDS() const