Проект llama.cpp выпустил сборку b11375, которая устраняет критическую проблему, при которой неконгруэнтные ячейки ubatch вызывали перераспределение графа, приводившее к аварийному завершению при установленном флаге GGML_SCHED_NO_REALLOC.
- Исправление собирает рекуррентные состояния один раз, чтобы резерв покрывал каждый раздел, обеспечивая достаточность размера резерва в худшем случае.
- Один вызов get_rows теперь собирает n_rs состояний, при этом ubatch и дополнительные состояния рассматриваются как представления этого единого выделения памяти.
- Пользовательские функции получения данных, такие как mamba ssm_scan, обращаются ко второму состоянию, чтобы избежать копирования состояний для односеквенционных ubatch.
- Представления создаются один раз на граф, чтобы оставить накладные расходы на хосте без изменений.
Это изменение обеспечивает стабильное выполнение в средах с ограниченным планированием, предотвращая аварийные завершения, вызванные ограничениями перераспределения памяти.