Currently, there is a hardcoded value of 219 threshold that switches whether an algorithm should be run with depth-first or with breadth-first operations. Yet, this variable was set based on hardware from the end of the 90s.
Hence, it would be useful if this variable could be changed more easily. This can be done in one of two ways:
Turn it into a CMake variable that is then injected with the preprocessor.
Turn the threshold into a global variable that you can change at run-time.
Turn the threshold into a global variable that is set during initialisation based on the amount of available memory (see i-level cuts for Adiar here)
Currently, there is a hardcoded value of 219 threshold that switches whether an algorithm should be run with depth-first or with breadth-first operations. Yet, this variable was set based on hardware from the end of the 90s.
Hence, it would be useful if this variable could be changed more easily. This can be done in one of two ways: