openTPU: Dự án chip AI mã nguồn mở được thiết kế bởi chính trí tuệ nhân tạo

Công nghệ06 tháng 10, 2026·5 phút đọc

openTPU là dự án tăng tốc AI mã nguồn mở do các tác nhân AI phát triển, chạy được 10 mô hình ngôn ngữ hiện đại trên card FPGA Inspur. Dự án đặt câu hỏi về giới hạn của AI trong thiết kế phần cứng và liệu AI có thể tự xây dựng chip chạy suy luận của chính mình hay không.

openTPU: Dự án chip AI mã nguồn mở được thiết kế bởi chính trí tuệ nhân tạo

Một dự án phần cứng mã nguồn mở mang tên openTPU đang thu hút sự chú ý của cộng đồng công nghệ khi tuyên bố được phát triển bởi chính các tác nhân AI. Đây là một bộ tăng tốc (accelerator) AI hoàn chỉnh, từ thiết kế phần cứng, tập lệnh, trình mô phỏng, đến phần mềm máy chủ, tất cả nằm gọn trong một kho mã duy nhất mà bất kỳ ai cũng có thể đọc từ đầu đến cuối.

Dự án đặt ra hai câu hỏi cốt lõi: các tác nhân AI có thể tiến xa đến đâu trong thiết kế phần cứng, và liệu chúng có thể tự xây dựng con chip chạy suy luận (inference) của chính mình hay không.

Kết quả thực tế trên card FPGA

openTPU chạy được 10 mô hình ngôn ngữ hiện đại với trọng số thật trên card Inspur YPCB-00338, sử dụng chip Xilinx Kintex-7 xc7k480t và hai kênh DDR3. Điểm đáng chú ý là card tạo ra các token giống hệt trình mô phỏng, chính xác đến từng bit.

Card FPGA chạy mô hình LFM2.5-230M, bên trái là giao diện chat, bên phải là công cụ giám sát hiệu năngCard FPGA chạy mô hình LFM2.5-230M, bên trái là giao diện chat, bên phải là công cụ giám sát hiệu năng

Một số kết quả nổi bật khi giải mã (decode):

  • LFM2.5-230M (int8): 59 token/giây, đạt 85% băng thông DRAM đỉnh
  • LFM2.5-230M (4-bit): 85,8 token/giây, đạt 82% băng thông DRAM
  • Qwen3-0.6B (int8): 21,6 token/giây, đạt 84% băng thông
  • Gemma 4 E2B (4-bit): 12,14 token/giây, đạt 91% băng thông
  • SmolLM3-3B (int8): 5 token/giây, đạt 94% băng thông

Đáng chú ý, phiên bản build B giải mã LFM2-2.6B, SmolLM3 và Phi-4-mini nhanh hơn 8-9% so với phiên bản trước đó, đồng thời đẩy hiệu suất DRAM lên 91-94% thay vì 82-87%. Điều này cho thấy thiết kế đã tiệm cận giới hạn vật lý của bộ nhớ.

Cách hoạt động

Kiến trúc của openTPU được thiết kế có chủ đích đơn giản. Một bộ điều phối (sequencer) phát một lệnh mỗi chu kỳ tới một số đơn vị xử lý: DMA di chuyển dữ liệu, đơn vị ma trận nhân trọng số int8 truyền từ DRAM, đơn vị vector thực hiện toán học fp32, và bộ lượng tử hóa chuyển kết quả về int8.

Không có bộ nhớ đệm (cache) và không có lập lịch ẩn. Mọi thao tác di chuyển dữ liệu đều là một lệnh, nên bản ghi vết (trace) cho thấy chính xác chu kỳ được dùng ở đâu.

Các kernel được viết bằng ngôn ngữ ol — một ngôn ngữ chuyên dụng cho bộ tăng tốc này. Ví dụ, một kernel MLP rút gọn trông như sau:

from opentpu import language as ol

@ol.jit
def mlp(h, gamma, w_gate, w_up, w_down, out, eps):
    x = ol.load(h)
    xs = ol.quantize(rmsnorm(x, ol.load(gamma), eps))
    g = ol.dot(xs, w_gate)
    u = ol.dot(xs, w_up)
    a = ol.all_gather(silu(g) * u)
    y = ol.all_gather(ol.dot(a, w_down))
    if ol.program_id() == 0:
        ol.store(out, x + y)

Công cụ dành cho lập trình viên và nhà nghiên cứu

Dự án cung cấp bộ công cụ hoàn chỉnh, cho phép chạy thử nghiệm ngay trên laptop mà không cần card FPGA:

  • otpu-chat: trò chuyện với Qwen3-0.6B, LFM2.5-230M, Qwen3.5-0.8B, SmolLM3-3B, Phi-4-mini và nhiều mô hình khác
  • otpu-smi: giám sát nhiệt độ, công suất, băng thông DRAM và mức sử dụng từng đơn vị
  • otpu-lens: ghi lại một lần chạy và mở trình phân tích hiệu năng trong trình duyệt

Giao diện Lens đang phát lại một phần bước giải mã của Qwen3, màu sắc thể hiện đơn vị nào đang bận, chờ DRAM hay chờ lệnh khácGiao diện Lens đang phát lại một phần bước giải mã của Qwen3, màu sắc thể hiện đơn vị nào đang bận, chờ DRAM hay chờ lệnh khác

Trình mô phỏng isasim.py được xem là "đặc tả" của toàn bộ hệ thống — phần cứng RTL và card thật đều phải khớp chính xác đến từng bit với trình mô phỏng này. Đây là một triết lý thiết kế thú vị, biến phần mềm mô phỏng thành nguồn chân lý duy nhất.

Hỗ trợ mô hình hỗn hợp chuyên gia (MoE)

Dự án cũng xử lý được các mô hình mixture-of-experts lớn hơn dung lượng 4 GiB của card bằng cách truyền các chuyên gia từ ổ đĩa máy chủ. Card định tuyến từng token, tính toán mọi chuyên gia và giữ chúng trong các slot theo tầng trên DRAM của mình.

Kết quả đo được vào tháng 10/2026 với build B:

  • LFM2.5-8B-A1B (8,5 tỷ tham số, 1,7 tỷ tham số hoạt động): 10,6 token/giây, 98,5% lượt dùng chuyên gia trúng slot
  • Qwen3.5-35B-A3B (34,7 tỷ tham số, 3 tỷ tham số hoạt động): 3,95 token/giây, 62% lượt dùng trúng slot, truyền 153 MB mỗi token qua PCIe ở tốc độ 1,41 GB/s

Ý nghĩa với cộng đồng công nghệ

openTPU không chỉ là một dự án phần cứng thông thường. Nó minh họa một hướng đi đáng suy ngẫm: AI có thể tham gia trực tiếp vào quá trình thiết kế phần cứng chuyên biệt cho chính mình. Khi các mô hình ngôn ngữ ngày càng lớn và nhu cầu tính toán suy luận tăng vọt, việc tự động hóa thiết kế chip có thể trở thành một kỹ năng quan trọng.

Dự án cũng là một tài liệu học tập quý giá. Toàn bộ bộ tăng tốc nằm trong một monorepo nhỏ, bao gồm thiết kế phần cứng SystemVerilog, tập lệnh, trình mô phỏng chính xác bit, ngôn ngữ kernel và trình biên dịch của nó, cùng phần mềm máy chủ điều khiển card PCIe thật.

Nếu bạn muốn hiểu một bộ tăng tốc AI hoạt động như thế nào, từ phép nhân ma trận trong Python xuống tận các dây dẫn, đây là một điểm khởi đầu tốt.

Với những ai quan tâm đến thiết kế chip, phần cứng mã nguồn mở hoặc giao thoa giữa AI và kỹ thuật phần cứng, openTPU là một dự án đáng để theo dõi. Dự án được phát hành theo giấy phép Apache 2.0, và hầu hết công việc đóng góp chỉ cần Python và Verilator, không bắt buộc phải có FPGA.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗