DARMA-tasking / LB-analysis-framework

Analysis framework for exploring, testing, and comparing load balancing strategies
Other
5 stars 1 forks source link

Add tests for new PrescribedPermutation algorithm #547

Closed ppebay closed 2 months ago

ppebay commented 2 months ago

This is a follow-on to #544 (PR #545 )

In particular we should test that the prescribed permutations for the existing baseline tests result in final (rebalanced) meshes with the expected value for W_max

For example, if we run the following test case (which is the classic load-only) with CCM-MILP:

$ python ccm_milp_full.py -c ../tests/config/1-load-only.yaml 

we obtain the following results:

# Solution summary:
Rank 0: L = 2.0, W = 2.0, unhomed: 1
Rank 1: L = 2.0, W = 2.0, unhomed: 1
Rank 2: L = 2.0, W = 2.0, unhomed: 1
Rank 3: L = 2.0, W = 2.0, unhomed: 2
W_max = 2.0
$assignments=[0, 0, 1, 1, 0, 2, 1, 3, 3];

In turn we should "feed" this assignment as input to the PrescribedPermutationAlgorithm (use the permutate.yaml config file as a template), and the execution should yield an output with the same value of W_max (i.e. 2.0 in this case).