TS-464 中的 Hailo-8 模組(M-Key 與 B+M Key 比較)

我在讓 QNAP TS-464 辨識 Hailo-8 時似乎遇到問題。TS-464 正在執行 QTS 5.2.X,這個版本高於 Hailo-8 支援所需的版本。TS-464 有 2 個 M.2 插槽(每個提供 x1 PCIe 通道),並且有一個 Gen3 PCIe x4 插槽,提供 x2 PCIe 通道。

QNAP 的相容性列表顯示 Hailo-8 B+M key(型號 HM218B1C2LAE)——這個版本支援 x2 PCIe 通道。

但我買的是 M key 版本,產品型號為:HM218B1C2FAE。M-key 版本支援 4 通道,但我已確認它會降速至 x2 PCIe 通道,並且有 Hailo 員工確認它也能降速至只用 x1 PCIe 通道。

所以這看起來是底層的問題——我在 lspci 裡看不到這張卡。

我已經按照以下流程測試:

  1. 將 Hailo-8(M key)插入 QNAP 的第一個 M.2 插槽。在 lspci 裡沒有顯示。
  2. 將 Hailo-8 插入 QNAP 的另一個 M.2 插槽。在 lspci 裡還是沒有顯示。
  3. 將 Hailo-8 插入我的筆電的 M.2 插槽。在筆電上運作正常。因為筆電的 M.2 支援 x2 通道,所以我知道 Hailo-8 會協商降速到 2 通道。這也被 Hailo Integration Tool(Hailo 整合工具)確認。
  4. 懷疑 QNAP 的 M.2 插槽可能有問題,我用 1TB Samsung NVMe 各插一次測試。兩個插槽都正常運作,雖然降速到 x1 通道。
  5. 於是我想會不會 Hailo-8 無法降速到 QNAP M.2 插槽的 x1 通道。於是我用 PCIe 轉 M.2 轉接卡(Startech PEX4M2E1)插到 QNAP 的 PCIe x4 插槽。結果還是沒有在 lspci 裡顯示!紅燈亮著,所以有供電。
  6. 為了確定 Startech 轉接卡沒問題,我也插了一顆 NVMe 硬碟測試。在 QNAP 上運作正常(顯示使用 x2 PCIe 通道)。所以不是轉接卡的問題!
  7. 最後我把 Startech(插著 Hailo-8)移到 Windows PC。運作正常!

dmesg 沒有顯示任何相關訊息,也沒確認核心驅動有載入。Hailo 告訴我 -LAE 和 -FAE 版本的晶片和核心驅動是一樣的。

而且,即使 -LAE 和 -FAE 版本之間有什麼不同,裝置還是應該能在總線上列舉並在 lspci 裡看到。(我用過 busy box 版本,也用過安裝 Entware 後的完整 pciutls 版 lspci)

我不認為啟動流程有什麼特殊之處會導致無法被辨識:

[~] # cat /proc/cmdline
consoleblank=0 console=ttyS0,115200n8 intel_iommu=on,igfx_off i915.enable_hd_vgaarb=1 iommu=pt i915.disable_power_well=0 i915.enable_rc6=0 i915.enable_guc=2 memmap=2M$0x8000000 ramoops.mem_address=0x8000000 ramoops.mem_size=0x200000 ramoops.console_size=0x100000 usbcore.autosuspend=-1 zswap.enabled=1 zswap.compressor=lz4 BOOT_IMAGE=/boot/bzImage root=/dev/ram0 rw

iommu 設定可能會影響 VM 可用性,但不應該阻止卡片被列舉…

有沒有什麼建議,也許 BIOS 有什麼選項可以嘗試切換?

有人成功讓 B+M Key 或 M-key 的 Hailo-8 運作嗎?

我同意,dmesg 裡什麼都沒有確實很奇怪。你至少應該能看到 kernel 有報錯。

試試便宜的轉接板,看看插在 PCIE 插槽裡會不會出現。

我們的官方相容性公告是針對 B+M Key。如果您願意向我們提交支援票,我們可以透過遠端連線到您的裝置,以了解您的機器上 M Key 的狀態或問題。

此外,我們也希望了解您希望使用 Hailo-8 模組達成什麼應用。歡迎隨時與我們分享!

謝謝!

我遇到的問題類似,但有些不同。
在我的情況下,lspci 能夠像樓上所說一樣識別到 Hailo-8 模組,但在硬體或 AI 核心的菜單中卻沒有顯示出來。
這會不會和近期 AI 核心停止支援 TPU 有關?

先謝謝大家的幫忙!

有人成功讓這個運作了嗎?

沒有任何被動式轉換器能夠適用於 M-Key Hailo-8。這是唯一的選項:

硬體:QNAP TVS-682,透過廉價的線對線 M.2 轉 PCIe 轉接器連接 Hailo-8 M Key 模組。

lspci 正確偵測到該裝置(vendor:device 1e60:2864),核心驅動也成功載入——但 QNAP 多媒體控制台的臉部辨識流程(FcServer)會因段錯誤而崩潰,所以這個裝置無論在硬體資訊或多媒體控制台都不會顯示或運作。

dmesg | grep -i hailo

[ 17.463174] hailo: Init module. driver version 4.18.0

[ 17.468395] hailo 0000:01:00.0: Probing on: 1e60:2864…

[ 17.473854] hailo 0000:01:00.0: Probing: Allocate memory for device extension, 11632

[ 17.481862] hailo 0000:01:00.0: Probing: Device enabled

[ 17.487244] hailo 0000:01:00.0: Probing: mapped bar 0 - 00000000c248c041 16384

[ 17.494668] hailo 0000:01:00.0: Probing: mapped bar 2 - 00000000dcff5c5d 4096

[ 17.501998] hailo 0000:01:00.0: Probing: mapped bar 4 - 000000001c8b2935 16384

[ 17.509418] hailo 0000:01:00.0: Probing: Setting max_desc_page_size to 4096, (page_size=4096)

[ 17.518186] hailo 0000:01:00.0: Probing: Enabled 64 bit dma

[ 17.523914] hailo 0000:01:00.0: Probing: Using userspace allocated vdma buffers

[ 17.531431] hailo 0000:01:00.0: Disabling ASPM L0s

[ 17.536448] hailo 0000:01:00.0: Successfully disabled ASPM L0s

[ 17.603309] hailo 0000:01:00.0: Firmware was loaded successfully

[ 17.621228] hailo 0000:01:00.0: Probing: Added board 1e60-2864, /dev/hailo0

[ 238.123416] FcServer[14345]: segfault at 38 ip 00007f442354a67c sp 00007ffc40560798 error 4 in libhailort.so.4.18.0[7f44234c6000+6e2000]