OpenArchLabOpen Architecture — From Models to Systems

E · Training Architecture

Local / global attention · lịch layer và ngân sách cache

Thiết kế xếp xen kẽ các lớp attention cửa sổ cục bộ (Sliding Window Attention) với một số lớp attention toàn cục để giới hạn kích thước KV cache trên văn bản dài.

LESSON ID arch-local-global GROUP Bản đồ nền tảng LLM
Mục lục bài học

1Định nghĩa

Lịch xếp lớp Local / Global Attention là kỹ thuật kết hợp hai phạm vi đọc ngữ cảnh giữa các lớp của mô hình: ở các lớp cục bộ (local layers), mỗi token chỉ đọc W token liền trước nó qua một cửa sổ trượt (Sliding Window Attention — SWA); cứ sau một vài lớp cục bộ mới đặt một lớp toàn cục (global layer) cho phép đọc toàn bộ chuỗi từ đầu.

Cách tổ chức này mang lại lợi ích trực tiếp cho ngân sách HBM và tốc độ suy luận: với các lớp cục bộ, KV cache chỉ cần giữ tối đa W vị trí gần nhất dưới dạng bộ đệm vòng (ring buffer) thay vì phình to theo tổng độ dài văn bản T, trong khi các lớp toàn cục vẫn đảm bảo thông tin ở đầu tài liệu được truyền tới cuối chuỗi. Để hưởng lợi thực tế, runtime phải hỗ trợ cơ chế thu hồi (evict) các khối KV ngoài cửa sổ W.

Ví dụ đời thường: Lịch xếp lớp Local / Global Attention giống như cách làm việc trong một dự án dài hạn: ở các buổi họp hàng ngày (lớp local dùng cửa sổ trượt SWA), nhóm chỉ cần xem lại ghi chú của 3 ngày gần nhất cho gọn nhẹ; nhưng cứ mỗi cuối tháng (lớp global) cả nhóm lại mở toàn bộ hồ sơ từ ngày khởi công ra rà soát tổng thể để không quên mục tiêu ban đầu.

2Luồng

Sơ đồ luồng (3 bước)
  1. Đọc layer_types

    Đếm local/global và thông số của từng loại.

  2. Đặt mask và retention

    Giữ đúng vị trí, prefix và window.

  3. Đo hai pha

    Prefill và decode có bottleneck khác nhau.

Mã Mermaid
flowchart TD
  step1["Đọc layer_types"]
  step2["Đặt mask và retention"]
  step3["Đo hai pha"]
  step1 --> step2
  step2 --> step3

Luồng mô tả cơ chế hoặc quy trình kiểm tra. Các ví dụ số là giả định giáo dục; demo Atlas không chạy kiến trúc production này.

3Giải pháp

Gemma 3 dùng lịch 5:1 và window 1.024; Gemma 4 31B vẫn 5:1 nhưng có heads/dim khác nhau giữa nhánh global và local. K=V chia sẻ biểu diễn key/value trong global attention là lựa chọn bổ sung; không tự suy rằng có thể giảm đúng một nửa mọi cache.

So model với cùng T,W,batch và kernel. MiMo-V2-Flash dùng window 128 trong model card; Trinity dùng window 4.096. Những khác biệt này ảnh hưởng giữ thông tin, không chỉ throughput.

Cache cross-layer sharing phải xác nhận theo variant: Gemma 4 31B có num_kv_shared_layers=0; không gán tính năng của bản nhỏ cho toàn họ.

4Profiling

  • Memory slope

    Đo bytes/token khi T vượt W; global cache tiếp tục tăng còn local lý tưởng bão hòa.

  • Khả năng truy hồi

    So câu hỏi cần thông tin xa với câu hỏi cục bộ, giữ các điều kiện inference cố định.

Mẹo đo lường: ghim số liệu trên workload thật, ghi cả p50/p95/p99 thay vì chỉ trung bình, và luôn ghi lại điều kiện chạy (batch, cache, đồng thời, phần cứng) trước và sau khi tối ưu. Số đo thiếu điều kiện chạy thì không so sánh được.

5Ví dụ

Tính cache giả định

L_local=30,L_global=6,T=8192,W=1024,H_KV=8,d_h=128,b=2: 312 MiB/sequence, thay vì 1.152 MiB nếu cả 36 layer full. Không tính allocator và workspace.

Đọc config thay vì nhãn

Hai model cùng ghi GQA có thể một model full ở mọi layer, model kia xen cửa sổ. Engine và capacity planning cần danh sách layer, không chỉ nhãn GQA.

6Thuật ngữ

Schedule
Chuỗi loại layer, ví dụ 5 local : 1 global lặp lại.
Receptive field
Tập vị trí có thể ảnh hưởng output qua một hoặc nhiều layer.
Glossary (8)
Data type
Kiểu dữ liệu của tensor, quyết định cách biểu diễn số.
Prefix
Phần đầu của một chuỗi token; cache reuse cần phần đầu tương thích.
Cache
Bộ nhớ giữ kết quả có thể dùng lại; trong attention thường giữ key/value vectors.
Kernel
Hàm tính toán chạy trên thiết bị; thường xử lý nhiều phần tử song song.
Runtime
Phần mềm quản lý việc thực thi, buffers và phụ thuộc giữa phép toán.
Mask
Quy tắc vị trí nào được nhìn nhau hoặc được tính vào loss.
Throughput
Lượng công việc được xử lý trong một đơn vị thời gian.
Batch
Nhóm công việc hoặc mẫu được xử lý trong một lượt tính.

7Bài liên quan

8Nguồn