Проект llama.cpp выпустил версию b10241, которая устраняет критическую ошибку в бэкенде CUDA. Обновление решает проблему гонок данных, возникавших при повторном использовании разделяемой памяти (SMEM) во время блочных редукций.

  • Исправлено отсутствие ресинхронизации после чтения из SMEM в block_reduce для предотвращения гонок данных.
  • Реализовано двойное буферизование для операций softmax и нормализации с одной строкой.
  • Добавлены поясняющие комментарии и барьеры памяти, специально предназначенные для многопоточных (multi-warp) сценариев.
  • Предоставлены бинарные файлы для macOS, Linux, Windows, Android и iOS для CPU, CUDA, Vulkan, ROCm и других бэкендов.