跳轉到

系統需求

參考機器規格

項目 規格
CPU Intel Xeon E-2388G / E-2488(8 cores,高時脈)
NIC Xilinx/Solarflare X2522 25G (sfc driver) 或 AMD Alveo X3522 25G (xilinx_efct driver)
Onload 9.1.1.66
OS RHEL 9(kernel 5.14.0)

硬體最低需求

  • CPU:≥ 4 physical cores,x86-64 架構,具備 AVX2 指令集。建議於 BIOS 停用多餘核心、僅保留 4 顆 active,讓剩下的核心取得較高的 turbo bin。其中 1 顆會被隔離作為 NetThread 專用運算核心,其餘 3 顆供 OS、CalcThread 與其他 helper threads 共用。建議選用高時脈 CPU(如 Intel Xeon E-2388G、E-2488 或同等級產品),不限廠牌。建議使用 single socket 伺服器;dual socket 因 NUMA 配置較複雜,不推薦。
  • NIC:依所選版本而定,見下表。
  • Memory:≥ 16 GB,建議 32 GB
  • 磁碟:SSD/NVMe,至少預留 200 GB 給 daily log

BIOS 設定

安裝 OS 前請先進入 BIOS 完成以下設定:

項目 設定值
Power / Performance Mode Max Performance
Hyper-Threading (HT) 關閉
VT-d (Intel Virtualization for Directed I/O) 關閉
Active core count 4(停用多餘核心,衝高剩餘核心 turbo bin)
版本 說明 支援 NIC
[通用版] 標準 kernel network stack 任意 10G/25G 網路卡,例如 Solarflare X2522、Mellanox ConnectX-5、Intel 10G/25G 系列
[高速版] Solarflare user-space network stack,bypass kernel 限 Solarflare X2522 及其後續衍生型號

OS 需求

  • 發行版:RHEL 9(或 CentOS Stream 9 / Rocky Linux 9 / AlmaLinux 9)
  • Kernel:5.14.0 系列(RHEL 9 預設)
    • 必要:支援 isolcpus=managed_irq(kernel 4.17+)
  • C++ runtime:GCC 11.5+(RHEL 9 預設)

套件依賴

sudo dnf install -y \
  tuned \
  irqbalance \
  cpupowerutils \
  jemalloc mimalloc \
  lftp

封閉網段請事先準備離線套件

交易主機部署在封閉 LAN,安裝期間沒有網際網路,無法即時 dnf install 拉相依。 上述套件(特別是 lftp — RHEL/Rocky 9 base 不含)必須在進機房前準備好離線安裝介質: - 自建 yum mirror,或 - 預先把對應 .rpm + 相依 download 下來(dnf download --resolve <pkg>)放 USB 帶進機器後 dnf localinstall

tapioctl ship --proto sftptapioctl archive 後將 tarball 上傳給 broker)執行期間呼叫 lftp;缺套件會 fail fast,但封閉環境發現太晚就太晚了。

[高速版] 限定

Onload / TCPDirect 僅 [高速版] 需要安裝,[通用版] 可略過。從 source 安裝,不在系統 repo 內 — 詳見 Onload / TCPDirect

部署 user

每個 broker 部署用獨立 OS user 執行 Tapio(user 名稱由各 broker 部署自行約定)。 post_install 會把 /opt/Tapio/ 底下的檔案 chown 到這個 user。

User 必須在裝 RPM 之前先建立,例如:

sudo useradd -r -m -d /home/<operator> <operator>

網路規劃

用途 方向 協定 說明
客戶下單 投資人 → Tapio TCP/IP 自訂電文 port 可於設定檔調整
交易所連線 Tapio → 期交所 TCP/IP TMP 電文
行情接收 四合一線路 → tapio-quote-receiver UDP multicast IP 由 broker 自行規劃設定
管理介面 GUI client → Tapio gRPC port 可於設定檔調整

各網段僅需在封閉 LAN 環境下可達,不需對外開放。

[高速版] 網路卡規劃

[高速版] 需將客戶下單與交易所連線分別接在同一張 Solarflare NIC 的兩個 port 上。

確認當前狀態

# CPU 數
nproc

# Kernel 版本
uname -r

# NIC driver
ethtool -i ens1f0 | grep ^driver
# Expected: driver: sfc          ← X2522
# Expected: driver: xilinx_efct  ← X3522

# OS 版本
cat /etc/os-release | grep PRETTY_NAME