Выпуск llama.cpp b9827 вводит оптимизацию производительности для CUDA, добавляя быстрый путь cudaMemcpy2DAsync в функцию ggml_cuda_cpy. Это изменение ускоряет копирование с шагом одинакового типа и формы, где тензоры не являются полностью непрерывными, но каждый ряд является непрерывным, заменяя более медленные ядра поэлементного скалярного копирования.

  • Реализует быстрый путь для 2D копирования блоков с отступом в CUDA для улучшения производительности на несплошных тензорах.
  • Исправляет обновления снимков рекуррентных сетей GDN при использовании -np 4 путем решения проблем с разделением слотов отката.
  • Добавлены новые тесты для проверки оптимизированного пути копирования с шагом.
  • Возвращает статус неподдерживаемого для копирования с шагом в OpenVINO из-за провала новых тестов.
  • Отключены сборки macOS Apple Silicon (arm64, включен KleidiAI) для этого выпуска.

Это обновление повышает эффективность вывода на устройствах CUDA за счет снижения накладных расходов при определенных операциях копирования тензоров и решает проблемы стабильности в рекуррентной обработке GDN.