PagedAttention, giải mã suy đoán, MoE và Blackwell

Triển khai AI hiện đại dựa vào các engine phục vụ ảo hóa bộ nhớ, định tuyến expert thưa và độ chính xác phần cứng dưới byte để phục vụ các mô hình khổng lồ với tốc độ cao và chi phí thấp. Ba công nghệ này đại diện cho tiền phong của hạ tầng LLM sản xuất.
1. Tối ưu hóa phục vụ suy luận LLM: PagedAttention & Giải mã suy đoán
Trong quá trình tạo văn bản, một LLM lưu trong cache các tensor Key (K) và Value (V) của mọi token trước đó trong VRAM để không phải tính lại ở mỗi bước. Quản lý KV Cache này và vượt qua nút thắt tuần tự của việc tạo từng token là hai thách thức lớn nhất trong phục vụ suy luận.
- PagedAttention (vLLM) - Bộ nhớ ảo cho KV Cache.
- Vấn đề phân mảnh. Trước đây, các engine suy luận cấp phát trước một khối VRAM liên tục cho mỗi yêu cầu dựa trên độ dài chuỗi tối đa có thể của mô hình (ví dụ 32.768 token). Nếu người dùng chỉ tạo 200 token, hơn 99% VRAM đã dành bị bỏ trống, lãng phí 60% đến 80% bộ nhớ GPU do phân mảnh trong và ngoài.
- Phân trang kiểu hệ điều hành. Lấy cảm hứng từ bộ nhớ ảo của hệ điều hành, PagedAttention chia KV cache của mỗi chuỗi thành các khối nhỏ kích thước cố định (ví dụ 16 token mỗi khối) có thể nằm không liên tục ở bất cứ đâu trong VRAM vật lý. Một bảng khối nhẹ ánh xạ các khối token logic sang địa chỉ bộ nhớ GPU vật lý tức thời bên trong kernel attention.
- Chia sẻ bộ nhớ (Copy-on-Write). Vì các khối được tách rời, nhiều yêu cầu dùng chung một system prompt hoặc tạo các completion song song (như beam search) trỏ đến đúng cùng các khối KV vật lý trong VRAM, cắt giảm mạnh mức dùng bộ nhớ và cho phép kích thước batch lớn hơn nhiều.
- Giải mã suy đoán (Speculative Decoding) - Phá vỡ nút thắt tuần tự.
- Vì sao tạo tự hồi quy chậm. Tạo 100 token đòi hỏi 100 lượt forward tuần tự. Vì mỗi lượt chỉ xử lý một token mới, GPU dành phần lớn thời gian đọc trọng số mô hình từ VRAM trong khi Tensor Core gần như bỏ trống.
- Pipeline phác thảo-và-kiểm chứng. Giải mã suy đoán ghép Mô hình Mục tiêu khổng lồ (ví dụ 70B tham số) với một Mô hình Phác thảo nhỏ, siêu nhanh (ví dụ 1B-3B tham số, hoặc các đầu dự đoán nhẹ như Medusa / EAGLE).
- Kiểm chứng song song. Mô hình phác thảo nhỏ nhanh chóng đoán K token tiếp theo (ví dụ 5 token) một cách tuần tự. Mô hình mục tiêu khổng lồ sau đó xử lý cả 5 token được đoán đồng thời trong một lượt forward song song duy nhất, kiểm tra xác suất của chúng. Vì kiểm chứng 5 token song song mất gần đúng thời gian như tạo 1 token, hệ thống chấp nhận tất cả token khớp cùng lúc - mang lại tốc độ tạo nhanh hơn 2× đến 3× với chất lượng đầu ra giống hệt về mặt toán học.
2. Mixture-of-Experts (MoE) & Song song Expert
Mô hình dense kích hoạt 100% tham số cho mỗi token, khiến các mô hình khổng lồ trở nên quá đắt để chạy. Kiến trúc Mixture-of-Experts (MoE) tách tổng tri thức mô hình khỏi chi phí tính toán trên mỗi token.
- Cách các layer MoE hoạt động (Mixtral & DeepSeek).
- Trong một khối Transformer MoE, Mạng Feed-Forward (FFN) dense duy nhất được thay bằng một nhóm các FFN độc lập nhỏ hơn gọi là Expert (ví dụ 8 expert trong Mixtral 8x7B, hoặc 256 expert tinh trong DeepSeek-V3).
- Một Router học được nhẹ (Gating Network) kiểm tra từng token đến và định tuyến nó chỉ đến top-K expert liên quan nhất (thường 2 đến 8 expert). Một mô hình có thể giữ hơn 600B tham số trong bộ nhớ, nhưng chỉ kích hoạt 37B tham số mỗi token, đạt trí tuệ mô hình khổng lồ với một phần nhỏ chi phí tính toán.
- Expert dùng chung & Cân bằng không cần hàm mất mát phụ. Các thiết kế MoE hiện đại như DeepSeek dành một vài Expert dùng chung xử lý mọi token để nắm bắt tri thức nền tảng chung, trong khi các expert được định tuyến chuyên môn hóa vào các lĩnh vực hẹp. Điều chỉnh bias động ngăn "sụp đổ định tuyến" (khi router dồn quá tải vào một vài expert phổ biến và bỏ qua phần còn lại).
- Song song Expert (EP) trên các GPU.
- Vì một mô hình MoE có hàng trăm expert, chúng không thể vừa trên một GPU. Song song Expert phân phối các expert khác nhau trên các GPU khác nhau (ví dụ Expert 1-4 trên GPU 0, Expert 5-8 trên GPU 1).
- Truyền thông All-to-All. Khi GPU 0 xử lý một batch token, router của nó có thể gán một số token cho các Expert nằm trên GPU 3. Do đó mỗi layer MoE thực hiện một lượt dispatch All-to-All, gửi hidden state của token qua các liên kết NVLink/InfiniBand tốc độ cao đến GPU giữ expert được gán, tính FFN của expert, và thực hiện bước combine All-to-All thứ hai để trả kết quả về.
3. NVIDIA Blackwell (B200) & Transformer Engine thế hệ hai (FP4)
Được giới thiệu để mở rộng các mô hình suy luận và MoE nghìn tỷ tham số, kiến trúc NVIDIA Blackwell (B200) đã thiết kế lại cả đóng gói đa die lẫn độ chính xác số dưới byte.
- Kiến trúc thống nhất hai die.
- Một GPU B200 đơn lẻ chứa 208 tỷ transistor trên hai die giới hạn reticle được nối lại bởi NV-HBI (High-Bandwidth Interface) 10 TB/s. Với các kernel CUDA và framework phần mềm, cả hai die hoạt động như một GPU thống nhất duy nhất mà không có phạt cache-coherency nào.
- Băng thông bộ nhớ HBM3e. Được trang bị 192 GB VRAM HBM3e cung cấp 8 TB/s băng thông bộ nhớ (cao hơn gấp đôi mức 3,35 TB/s của H100), Blackwell nhắm trực tiếp vào các nút thắt băng thông bộ nhớ của KV cache và việc nạp trọng số MoE.
- Transformer Engine thế hệ hai & NVFP4.
- Trong khi Hopper giới thiệu số thực 8-bit (FP8), Transformer Engine thế hệ hai của Blackwell đẩy tính toán Tensor Core xuống số thực 4-bit (FP4), lại tăng gấp đôi thông lượng tính toán thô (lên tới 20 petaFLOPS tính toán FP4 dense trên mỗi GPU) và giảm một nửa dấu chân bộ nhớ so với FP8.
- Giải quyết dải động FP4 bằng Micro-Tensor Scaling (NVFP4). Số 4-bit tiêu chuẩn chỉ có 16 giá trị khả dĩ, điều này thường phá hủy độ chính xác khi các số ngoại lai cực trị xuất hiện trong activation thần kinh. Blackwell giải quyết điều này trong phần cứng bằng micro-scaling hai mức: thay vì áp dụng một hệ số scale cho cả ma trận lớn, Blackwell nhóm trọng số và activation thành các khối nhỏ 16 phần tử, gán cho mỗi khối nhỏ hệ số scale FP8 độ chính xác cao riêng cùng với một scale tensor FP32 toàn cục.
- Lượng tử hóa tăng tốc phần cứng. Transformer Engine kiểm tra động dải giá trị tensor theo từng layer và chuyển đổi giá trị giữa FP16/BF16, FP8 và NVFP4 trực tiếp bên trong pipeline Tensor Core mà không cần vòng lặp bộ nhớ bổ sung.