huttered40 / critter

Critical path analysis of MPI parallel programs
BSD 2-Clause "Simplified" License
2 stars 1 forks source link

Add constexpr global variable to specify critical path breakdown #35

Closed huttered40 closed 4 years ago

huttered40 commented 4 years ago

Currently, we assume that the user wants the track the MPI routine breakdown for all 7 critical path measures. This is overkill for almost all purposes, and will really cause scalability issues.

This global variable will be a std::bitset and be set as: 0b0000001 by default, which signifies that the MPI routine breakdown is tracked just for the critical path runtime. This will result in nearly 7x reduction in bytes communicated.

This variable will exist in the critter namespace instead of the critter::internal namespace, which allows the user to modify it.

huttered40 commented 4 years ago

I'll close this. One thing I do not like is that bitset's count() method is not constexpr, so I cannot verify that the user set both global variables correctly.