Conversation
…p_fishery_count, adding A+ back to the spawning biomass.
|
This version adds support for A+ using graph-based scheduling. A+ is folded directly into the same SeapodymCohortDependencyAnalyzer task graph that already governs every other, normal cohort. There is an A+ cohort for each time step. The A+ cohort IDs come after those of normal cohorts (no longer using negative IDs). So IDs for A+ run from na + nt - 1, na + nt, .... na + 2*nt - 2 (na = is the number of age groups, not counting A+). Each A+ cohort has two dependencies: on A+'s own previous step and on normal "graduates" at the previous step. All of this is dispatched by the same TaskStepManager/TaskStepWorker pair used for everything else; A+ tasks are just |
|
The previous results can be obtained by running seapodym_cohort with argument -no-aplus. |
|
For reference, below are the checksums for the phase3 and plus branches: (base) apletzer@dhcp-163-7-130-140 density_skj_fat % mpiexec -n 2 ../../bin/seapodym_cohort_phase3 -s skj_fat_10_short_inna.xml |
|
Below are the output for the largest case (100 cohorts). Execution time (phase3): 52s; (aplus): 45s (base) apletzer@dhcp-163-7-130-140 density_skj_fat % mpiexec -n 10 ../../bin/seapodym_cohort_phase3 -s skj_Fat.xml |
This requires a recent version of seapodym-parallel, one that has the aPlusCohort passed to the constructor