ggml : extend the GGML_SCHED_NO_REALLOC debug logic of the scheduler #17617
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
cont #17276
Graph reallocations by the backend scheduler can be expected in various cases when the graph topology becomes different from the one that was used initially after constructing the scheduler. For example, the scheduler of
llama_contextwill likely reallocate when:llama_batchThe less expected cases are the ones similar to the case in #17143 where it's more difficult to predict that a reallocation would occur since the graph topology remains the same.
The
GGML_SCHED_NO_REALLOCmacro is now targeted towards detecting the "unexpected" reallocations.Also, can now override the reallocation debug behavior via a new environment variable
GGML_SCHED_DEBUG_REALLOC: