Bản phát hành llama.cpp b10205 giới thiệu các tối ưu hóa cho backend AMD ZenDNN
Dự án llama.cpp đã phát hành bản dựng b10205, giới thiệu các tối ưu hóa cho backend AMD ZenDNN. Cụ thể, bản cập nhật này bổ sung một API trực tiếp cho phép nhân ma trận nhóm (group matmul) cho `mul_mat_id` và điều chỉnh ngưỡng fallback của `MUL_MAT_ID` theo số lượng chuyên gia (expert count). Những thay đổi này tối ưu hóa hiệu suất suy luận trên các CPU dựa trên kiến trúc AMD Zen, đặc biệt là đối với các mô hình Hỗn hợp chuyên gia (MoE) vốn phụ thuộc vào việc định tuyến token đến các mạng chuyên gia khác nhau. Bằng cách tận dụng ZenDNN, các nhà phát triển chạy LLM trên bộ xử lý AMD EPYC hoặc Ryzen có thể đạt được hiệu suất thực thi tốt hơn. Bản cập nhật triển khai API trực tiếp cho phép nhân ma trận nhóm (group matmul) dành riêng cho `mul_mat_id` trong backend `ggml-zendnn`. Ngoài ra, việc điều chỉnh ngưỡng fallback theo số lượng chuyên gia giúp quản lý linh hoạt thời điểm hệ thống chuyển sang các đường dẫn tính toán thay thế.
## KIẾN THỨC NỀN
llama.cpp là một khung mã nguồn mở phổ biến được thiết kế để chạy các mô hình ngôn ngữ lớn (LLM) với hiệu suất cao trên phần cứng người dùng và máy chủ bằng cách sử dụng thư viện tensor GGML. AMD ZenDNN (Zen Deep Neural Network) là một thư viện tăng tốc suy luận được tối ưu hóa riêng cho kiến trúc CPU AMD "Zen", ví dụ như bộ xử lý máy chủ EPYC. Trong học máy, nhân ma trận là một phép toán cơ bản, và kiến trúc Hỗn hợp chuyên gia (MoE) đòi hỏi việc định tuyến và tính toán hiệu quả trên nhiều mạng con (chuyên gia).