]> git.djapps.eu Git - pkg/ggml/sources/ggml/commit
llamafile : ppc64le GEMV forwarding for FP32. (llama/12594)
authoramritahs-ibm <redacted>
Fri, 28 Mar 2025 07:43:22 +0000 (13:13 +0530)
committerGeorgi Gerganov <redacted>
Fri, 28 Mar 2025 18:57:36 +0000 (20:57 +0200)
commit7f7b1708e2695d8ac2113b05f455a96a4f5d90bd
tree8f7282a8887137238221deeca3617484ff996d3b
parentbda9bce325f149ad430066f1f5c8bc91d78cd620
llamafile : ppc64le GEMV forwarding for FP32. (llama/12594)

This patch enables usage of MMA when one of the
dimensions of the matrix(ie either M or N) is 1. This
is useful in case of token generation where N < 2.

The concept of 'GEMV Forwarding' is used where when one
of the matrix has a single row/column, the elements are
broadcasted, instead of using packing routine to prepack
the matrix elements.

This change results in 5% - 15% improvement in total
speed(ie all tokens/total time), across various batch
sizes. This is in comparision with the corresponding
dot product implementation.

The patch is tested with FP32 models of Meta-Lllama-3-8B,
Mistral-7B, Llama-2-7B-chat-hf on a IBM POWER10 machine.

Signed-off-by: Amrita H S <redacted>
src/ggml-cpu/llamafile/sgemm.cpp