Trình suy luận Gemma-2B bằng ngôn ngữ hợp lệnh x86-64 thuần túy chỉ 5,2KB
Nhà phát triển tom_tsai28 đã phát hành PULSAR-ASM, một công cụ suy luận Gemma-2B mã nguồn mở được viết hoàn toàn bằng ngôn ngữ hợp lệnh x86-64 thuần túy sử dụng FASM. Tệp thực thi kích thước chỉ 5,2KB này đạt tốc độ khoảng 4,6 token/giây ở định dạng FP16 trên bộ xử lý Intel i5 lõi tứ thế hệ cũ mà không phụ thuộc vào bất kỳ thư viện C/C++ hay PyTorch nào. Dự án này chứng minh dung lượng tối thiểu cần thiết để chạy các mô hình Transformer trực tiếp trên phần cứng CPU mà không cần các bộ runtime phần mềm đồ sộ. Nó mang lại những hiểu biết kiến trúc giá trị và làm mô hình tham chiếu cho việc triển khai các micro-LLM trên vi điều khiển hoặc DSP bị hạn chế tài nguyên. Công cụ này tận dụng bộ chỉ thị AVX2 và phần mở rộng F16C để chuyển đổi số thực dấu chấm động bán chính xác (FP16), tích hợp thuật toán GEMM SMP 4 luồng tùy chỉnh đạt băng thông bộ nhớ ~18,5 GB/s trên RAM DDR4-2400. Một bộ vỏ Python siêu nhẹ giao tiếp với tệp nhị phân hoàn toàn thông qua `ctypes` để cấp phát bộ nhớ và quản lý luồng.
## KIẾN THỨC NỀN
Quá trình suy luận của các mô hình ngôn ngữ lớn (LLM) hiện đại thường dựa vào các tập hợp phần mềm đồ sộ như PyTorch, CUDA hoặc runtime C++ để xử lý nhân ma trận (GEMM) và các phép toán tensor. Nối ngược lại, ngôn ngữ hợp lệnh x86-64 cho phép nhà phát triển viết trực tiếp các lệnh máy cho CPU, tận dụng các tập chỉ thị mở rộng như AVX2 để xử lý vectơ song song và F16C để chuyển đổi dữ liệu số thực 16-bit tăng tốc bằng phần cứng.