~/LLAMA CPP/llama-cpp-b11005-fixes-qualcomm-hexagon-backend-graph-splitting-bug

llama.cpp b11005 Sửa Lỗi Tách Đồ Thị Trên Backend Qualcomm Hexagon

Bản phát hành b11005 của llama.cpp cập nhật backend tăng tốc phần cứng Hexagon để chấp nhận các thử nghiệm Rotary Position Embedding (RoPE) có tham số bằng 0 khi kiểm tra vị trí tensor. Bản sửa lỗi này ngăn engine suy luận từ chối toán tử và tránh hạ cấp xuống xử lý trên CPU trong quá trình thiết lập mô hình. Bằng cách loại bỏ các đợt hạ cấp xuống CPU không cần thiết, đồ thị suy luận được duy trì liền mạch trên Qualcomm Hexagon DSP, giúp cải thiện hiệu suất thực thi trên các thiết bị di động và thiết bị biên. Đối với các kiến trúc mô hình như Gemma, bản sửa lỗi này giảm số lần tách đồ thị thực thi từ 5 xuống còn 2 tại mỗi lớp chú ý (full-attention). Vấn đề xuất phát từ hàm kiểm tra `supports_op` của Hexagon từ chối các vị trí thử nghiệm RoPE có `n_dims == 0` hoặc `freq_base == 0`. Bằng việc hỗ trợ các yêu cầu thử nghiệm bằng 0 này, phép tính `rope_freqs` được giữ lại trên bộ tăng tốc phần cứng thay vì phải chuyển các thao tác tần số vị trí về lại CPU của máy chủ.

## KIẾN THỨC NỀN

llama.cpp là một engine suy luận LLM mã nguồn mở viết bằng C/C++, được tối ưu hóa để chạy các mô hình ngôn ngữ trên nhiều backend phần cứng khác nhau, bao gồm Qualcomm Hexagon DSP. Rotary Position Embedding (RoPE) là kỹ thuật được các mô hình Transformer hiện đại sử dụng để chèn thông tin vị trí vào các token. Khi một backend phần cứng từ chối toán tử, llama.cpp sẽ tách đồ thị tính toán, buộc phải chuyển giao tác vụ sang CPU làm phát sinh độ trễ truyền dữ liệu lớn.

## TÀI LIỆU THAM KHẢO

## TỪ KHÓA

#llama-cpp#llm-inference#open-source-ai#hardware-acceleration

$ subscribe --daily

llama.cpp b11005 Sửa Lỗi Tách Đồ Thị Trên Backend Qualcomm Hexagon | Daily News