В выпуске ggml-org/llama.cpp b12030 исправлена ошибка передачи данных в памяти на Hexagon, затрагивавшая шаги размером 16 МБ и более. В Hexagon v75 и более поздних версиях дескриптор DMA хранит размеры строк и шаги в 24-битном формате. Прежний резервный режим делил передачу по числу строк, но при этом всё равно мог обрезать слишком большие значения шага, из-за чего адреса определялись неверно. Теперь в таких случаях передача выполняется отдельно для каждой строки. В выпуск также вошли два теста CONT с шагом исходных данных свыше 16 МБ.
Почему это важно
Для тех, кто запускает llama.cpp на затронутом оборудовании Hexagon, исправление должно предотвратить ошибки адресации при передаче данных с очень большими шагами. В примечаниях к выпуску не указано, в каких рабочих сценариях возникает такая проблема.