A versão llama.cpp b11224 aborda resultados de cálculo incorretos no backend Vulkan quando operações de multiplicação de matriz leem fatias de tensores maiores e com stride, como caches KV.

  • O stride do lote para os tensores src0 e src1 in situ agora é derivado corretamente de nb[2] em vez de ne00*ne01, garantindo o acesso correto às linhas em todas as cabeças.
  • Os intervalos A e B in situ são dimensionados por sua extensão com stride usando ggml_nbytes ou ggml_vk_subbuffer para evitar ler dados zerados ou travar em hardware NVIDIA sem coopmat2.
  • Os caminhos mul_mat_id e mul_mm foram atualizados para lidar corretamente com vistas de especialistas com stride e tiles parciais, evitando travamentos em operações NVFP4.

Esta correção garante resultados de inferência precisos para mecanismos de autoatenção do decodificador que dependem de layouts de memória com stride no backend Vulkan.