Bản phát hành llama.cpp b12094 tối ưu hóa thuật toán lấy mẫu Top-K cho backend Hexagon
Bản phát hành llama.cpp b12094 mang đến các tối ưu hóa hiệu suất cho bộ lấy mẫu backend Qualcomm Hexagon, giúp tăng tốc đáng kể quá trình lấy mẫu TOP_K. Bản cập nhật này bỏ qua việc sắp xếp bitonic đối với các ô không cần thiết và thay thế bằng hàm top_k_scan để xử lý các khối dữ liệu hiệu quả hơn. Tối ưu hóa này cải thiện hiệu suất tạo văn bản trên các thiết bị biên sử dụng vi xử lý Qualcomm Snapdragon, nâng cao tốc độ chạy AI cục bộ. Điều này mang lại lợi ích cho các nhà phát triển và kỹ sư triển khai mô hình ngôn ngữ lớn trên phần cứng di động và nhúng. Cải tiến này áp dụng cho giá trị k từ 2 đến 64 trên các hàng rộng hơn 1024, cho cả đường dẫn đơn hàng và đa hàng, đồng thời loại bỏ các thao tác đọc vô hướng từ bộ nhớ kết hợp chặt chẽ vector (vtcm). Ngoài ra, thuật toán coi giá trị NaN là âm vô cực (-INF) và giữ lại chỉ số xuất hiện đầu tiên khi có sự trùng lặp.
## KIẾN THỨC NỀN
Qualcomm Hexagon là dòng bộ xử lý tín hiệu số (DSP) và đơn vị xử lý thần kinh (NPU) được trang bị các phần mở rộng vector Hexagon (HVX) để tăng tốc khối lượng công việc AI và đa phương tiện trên chip Snapdragon. Lấy mẫu Top-k là phương pháp giải mã trong mô hình ngôn ngữ lớn nhằm giới hạn việc chọn từ tiếp theo vào k ứng viên có xác suất cao nhất, giúp cân bằng giữa tính ngẫu nhiên và sự mạch lạc.