OpenArchLabOpen Architecture — From Models to Systems

X · Engineering practice

Biến một ý tưởng tối ưu thành kết quả kiểm chứng được

Phương pháp làm việc dựa trên giả thuyết, số đo cơ sở (baseline) và thử nghiệm có kiểm soát khi tối ưu hệ thống suy luận.

LESSON ID learning GROUP Kiến trúc Inference
Mục lục bài học

1Định nghĩa

Vòng lặp thực nghiệm hiệu năng là quy trình kỹ thuật chuẩn để biến một nghi ngờ về điểm nghẽn thành một cải tiến được chứng minh bằng số liệu. Thay vì đoán mò hoặc bật thử nhiều cờ tối ưu cùng lúc, kỹ sư bắt đầu từ dữ liệu quan sát (observability) để đặt giả thuyết cụ thể (ví dụ: thời gian chờ sinh token cao là do chi phí CPU phát lệnh nhỏ ở runtime).

Từ giả thuyết đó, kỹ sư khóa cố định cấu hình đo cơ sở (baseline) trên một bài benchmark chuẩn, chỉ thay đổi đúng một yếu tố kỹ thuật, rồi đo lại cả độ trễ, thông lượng, mức tiêu thụ bộ nhớ HBM lẫn chất lượng đầu ra. Mọi kết quả đều được lưu kèm cấu hình để đồng đội tái lập được và làm bàn đạp cho vòng tối ưu tiếp theo.

Ví dụ đời thường: Vòng lặp thực nghiệm tối ưu giống như cách một bác sĩ hoặc kỹ sư sửa xe lành nghề tìm bệnh: khám triệu chứng để đặt giả thuyết, ghi lại chỉ số ban đầu, mỗi lần chỉ chỉnh đúng một chi tiết rồi đo lại kết quả đối chiếu. Nếu chỉnh xong mà xe không chạy êm hơn thì trả lại như cũ và ghi vào sổ theo dõi, tuyệt đối không tháo tung cả chục bộ phận cùng lúc.

2Luồng

Sơ đồ luồng (4 bước)
  1. Đặt giả thuyết

    Ví dụ launch overhead gây decode chậm.

  2. Lưu baseline

    Model, workload, timing và quality.

  3. Đổi một yếu tố

    Thử runtime/kernel/policy phù hợp.

  4. Kiểm chứng và báo cáo

    Giải thích gain, giới hạn và regression.

Mã Mermaid
flowchart TD
  step1["Đặt giả thuyết"]
  step2["Lưu baseline"]
  step3["Đổi một yếu tố"]
  step4["Kiểm chứng và báo cáo"]
  step1 --> step2
  step2 --> step3
  step3 --> step4

3Giải pháp

Lưu environment và raw measurements; đo nhiều lần khi kết quả có biến động. Dùng workload tương ứng bài toán muốn cải thiện.

Nếu microbenchmark nhanh hơn nhưng request không nhanh, quay lại breakdown để xác định phần thay đổi chiếm bao nhiêu tổng thời gian.

4Profiling

  • Khả năng tái lập

    Người khác chạy cùng config có kết quả trong biến động đã báo.

  • Gain hữu ích

    Cùng latency/quality target, kiểm tra throughput hoặc cost thay đổi thế nào.

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ụ

Portfolio systems

Tạo report batching policy với queue/latency curves, không chỉ ảnh chụp token mỗi giây.

Portfolio kernels

Có reference correctness, shape sweep và kết quả tích hợp engine ngoài một kernel benchmark.

6Thuật ngữ

Baseline
Cấu hình gốc để so thay đổi.
Controlled experiment
Thí nghiệm giữ điều kiện quan trọng tương đương để kiểm tra giả thuyết.
Glossary (7)
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.
Latency
Thời gian chờ để nhận một kết quả hoặc một bước kết quả.
Throughput
Lượng công việc được xử lý trong một đơn vị thời gian.
Overhead
Chi phí phụ như điều phối, chuyển đổi hoặc phát lệnh ngoài phép tính chính.
Host
Phần chương trình điều khiển thiết bị, thường chạy trên bộ xử lý trung tâm.
Tensor shape
Kích thước các chiều của tensor; ảnh hưởng layout, kernel và memory.

7Bài liên quan

8Nguồn