O projeto llama.cpp lançou a compilação b10078, que inclui uma refactorização significativa do backend do Vulkan para melhorar a eficiência da sincronização. A atualização integra suporte para VK_KHR_internally_synchronized_queues, permitindo que a biblioteca abstraia o envio de filas em uma interface polimórfica que contorna completamente o bloqueio do mutex do lado do host quando o driver suporta isso.
- Refatora vk_queue para usar mutexes por instância e manipuladores exclusivos para posse exclusiva.
- Integra VK_KHR_internally_synchronized_queues para contornar o bloqueio do mutex do lado do host quando suportado pelo driver.
- Adiciona definições de fallback e constantes static constexpr para detecção de internallySynchronizedQueues.
- Corrige erros de compilação, cadeias pNext duplicadas e verificações nulas no destrutor vk_device_struct.
Esta mudança otimiza o gerenciamento de ciclo de vida e a segurança de threads enquanto reduz chamadas de API redundantes durante a criação do dispositivo.