GPU always-on đang đốt tiền — case study chuyển chip chuyên dụng

GPU always-on đang đốt tiền — case study chuyển chip chuyên dụng

Tomofun chạy VLM 24/7 trên GPU để phát hiện hành vi thú cưng. Khi hóa đơn vượt ngưỡng, họ chuyển sang chip chuyên dụng mà không viết lại code. Bài học cho team đang trả tiền inference mỗi tháng.

Tuần trước mình ngồi review hóa đơn cloud cho một team ở Sài Gòn — 4 con GPU instance chạy inference model vision 24/7, tháng nào cũng đều đặn cháy tiền như đồng hồ taxi. Lead hỏi: "Có cách nào giảm mà không phải retrain model không?" Câu hỏi này hóa ra không chỉ team đó hỏi.

Tomofun — startup pet-tech Đài Loan đứng sau Furbo Pet Camera — vừa public một case đáng đọc: họ chạy vision-language model (VLM — model kết hợp xử lý ảnh và ngôn ngữ) liên tục để phát hiện hành vi thú cưng real-time, và đã chuyển từ GPU sang chip chuyên dụng AWS Inferentia2 mà giữ nguyên codebase PyTorch.

Bài này không kể lại thành tích của họ. Mình muốn bóc tách quyết địnhđiều kiện khiến bước chuyển đó hợp lý — rồi hỏi ngược: team bạn có đang ở cùng ngã rẽ không?

Bối cảnh: triệu chứng của workload always-on

Furbo thu video từ hàng trăm nghìn camera, chạy model BLIP (Bootstrapping Language-Image Pre-Training — kiến trúc liên kết ảnh-text phổ biến cho vision tasks) để nhận diện chó sủa, chạy nhảy, hành vi bất thường, rồi push alert cho chủ.

Đặc điểm workload này:

Hiểu nôm na: nếu bạn đang chạy một phòng khám thú y mở cửa 24/7, thì GPU giống như thuê bác sĩ chuyên khoa tim ngồi trực ca đêm — giỏi nhưng đắt, mà ca đêm chỉ cần ai đó biết đo huyết áp.

Quyết định: chuyển sang chip chuyên dụng

Tomofun chọn AWS Inferentia2 — chip được thiết kế riêng cho inference, không có khả năng training. Đây là quyết định có 3 ràng buộc quan trọng:

  1. Không viết lại model: BLIP đã optimize cho PyTorch, team không muốn port sang framework khác. AWS Neuron SDK hỗ trợ compile trực tiếp từ PyTorch graph — đây là yếu tố quyết định.
  1. Chấp nhận trade-off hiệu năng: chip chuyên dụng không nhanh hơn GPU trên mọi task. Lợi thế nằm ở giá/token khi chạy liên tục, không phải peak throughput.
  1. Kiến trúc auto-scale vẫn giữ: EC2 Auto Scaling group + Elastic Load Balancing phía trước, chỉ thay đổi instance type bên dưới (từ GPU sang Inf2).

Hệ quả: cái được và cái phải trả

Được:

Phải trả:

Bài học: khi nào nên "chẩn đoán" lại chip inference

Không phải team nào cũng nên nhảy sang custom silicon. Framework ra quyết định:

| Điều kiện | GPU vẫn hợp lý | Nên xét chip chuyên dụng |
|-----------|----------------|-------------------------|
| Workload pattern | Burst, không đều | Always-on, ổn định |
| Latency requirement | Sub-50ms bắt buộc | Vài trăm ms chấp nhận được |
| Model diversity | Thay model liên tục | Model ổn định 3-6 tháng |
| Team size | Có infra engineer rảnh | Muốn "set and forget" |
| Budget sensitivity | Tiền không phải vấn đề | Inference cost > 30% cloud bill |

Giả sử team bạn 5 người, đang chạy một VLM inference service 24/7 phục vụ vài chục nghìn request/ngày — bạn đang ở vùng mà custom silicon bắt đầu có nghĩa. Nhưng nếu bạn thay model mỗi 2 tuần (vì đang iterate nhanh), thì overhead compile lại mỗi lần sẽ triệt tiêu lợi ích.

Áp dụng: checklist cho team Việt Nam

Nếu bạn đang trả hóa đơn GPU inference hàng tháng và muốn đánh giá:

Bước 1 — Đo baseline: Ghi lại utilization thực tế của GPU instances trong 2 tuần. Nếu utilization trung bình dưới 40%, bạn đang trả tiền cho capacity không dùng — nhưng giải pháp có thể chỉ là right-size instance, chưa cần đổi chip.

Bước 2 — Xác định model stability: Model hiện tại đã ổn bao lâu? Nếu dưới 1 tháng kể từ lần thay cuối, chưa phải lúc.

Bước 3 — Thử compile: Với Inferentia2, dùng torch_neuronx.trace() để compile model hiện có. Nếu pass mà không cần sửa code → tín hiệu tốt. Nếu fail vì custom op → tính effort refactor.

Bước 4 — So sánh cost/token: Chạy benchmark cùng workload trên cả GPU instance và Inf2 instance trong 48 giờ, so tổng chi phí trên cùng số request.

Open-source alternative: Nếu không muốn lock vào AWS, xem xét ONNX Runtime hoặc OpenVINO (Intel) cho inference optimization trên CPU/custom hardware. Không rẻ bằng Inferentia2 cho GPU-class workload, nhưng portable hơn.

Dòng cuối

Case của Tomofun không phải câu chuyện "startup nhỏ thắng lớn" — nó là câu chuyện về việc kê đơn đúng thuốc cho đúng bệnh. GPU là thuốc tổng hợp mạnh, nhưng khi bạn đã biết chính xác mình cần chữa gì và cần chữa lâu dài, một liều chuyên biệt rẻ hơn và ít tác dụng phụ hơn.

Câu hỏi không phải "chip nào tốt hơn" mà là "workload của mình đã đủ ổn định để justify việc chuyển chưa?"

---

Bụi Wire — nghiện đọc release notes lúc 2 giờ sáng

Nguồn tham khảo